2014-10-20

Leave of Absence Diary 2014-10-20

Background

Since I'm on leave of absence and going to code totally by myself with no dead lines, planing or any boss it would be good to make some notes of the work in progress.

Earlier Thoughts

I've been thinking of making a dairy since I would like to describe how I work in a project. There're lots of ups and downs and in some way I handle it.

Developer Notes

It would also be some what interesting for others to read about the different problems Google App Engine, Maven, Eclipse, Java, JavaScript, CSS, HTML and Objectify creates! 

Music

Todays music: Devo, Switched on Bach, random from Acid Flash collections and Alien Rain.

2014-10-15

"HaterGate"

Förhoppningsvis bara ett problem i USA med pojkar
http://feber.se/spel/art/311237/brianna_wu_pratar_med_msnbc/

Löjlig kommentar på YouTube:
"Enjoy your games while you can, Marxists have won this battle for the industry.

Gamergate is the last dying struggle of who love games against the total usurpation and destruction of their culture. This news report is the beginning of the end, Gamergate has been too slow and too weak."

ShitRedditSays har samlat ihop en mängd kommentarer från Reddit:
http://www.reddit.com/r/ShitRedditSays/comments/2glx0o/effort_post_more_gamergate_spam/

2014-10-07

Java and JavaScript String split

There's a big difference between Java and JavaScript version of String's split method/function.

Java

  • "/".split("/") => []
  • "".split("/") => [""]
  • "/something".split("/") => ["", "something"]

JavaScript

  • "/".split("/") => ["", ""]
  • "".split("/") => [""]
  • "/something".split("/") => ["", "something"]

2014-09-01

Build with Eclipse a Android Gradle Project

Create Android Gradle Project in Eclipse

To the point!

  1. Create Android project in Eclipse (Android plugin for Eclipse is needed)
  2. Right click on Android project and select Export and then "Generate Gradle build files" (Gradle plugin for Eclipse is needed)
  3. Delete Android project and import the Gradle project
    1. Possible Android SDK error: create file local.properties in Gradle project with one line: sdk.dir=/path/to/android-sdk
Enjoy!

2013-08-28

Superit: The Super Front Page of Internet!

So I've been working creating my own community site, heavily inspired by Reddit and with a name derived from it. I think it's the "super" Reddit which is why I call it Superit (http://www.superit.io).

This is a blog of the first main version.

Background

It started last summer (2012) when I was thinking about a dating site which would incorporate a process were the users would validate each others profile pictures and presentations.
For example, to be validated a majority of three votes would be required. But to sort out users that don't vote responsible the votes are reviewed afterwards. If the validation was positive, those who voted positive gains a good rating, and those who voted negative (in opposite of the outcome) would gain a bad rating. Those with too lousy rating would be banned from validating.

Process

This idea of a Process were users review all new content on the site is something Reddit really needs since the pages for new content are a mess (in bigger subreddits). It might work with small subreddits, but since Reddit grows it'll become a bigger issue.

Tags

Instead of using subreddits, Superit is using Tags. All content that are submitted to Superit might be tagged and a user may favorite tags and view content with those tags only.
Tags are also validated in the process. So, when a submitted content with some tags are validated in the process, a user validates the content and each tag separately. This means that the submitted content might be validated but not all tags. To make sure the users are serious, their voting is reviewed then all voting is concluded for a submission.
For example, if content with two tags has been reviewed in the process and the content and one tag was approved, Those users that voted positive on the approved content and tag gets a positive ratio and vice-versa for those voted negative. This works also the the rejected tag. Those voted negative for the rejected tag was right and gets a positive ratio, and vice-versa for those voted positive for the rejected tag.
As a special feature tags include rules of how they are validated in the process: Threshold, sample size and acceptance ratio.
  • Threshold, the number of votes which is needed for the tag to be validated or disprove
  • Sample Size, the number of votes from a users which are required before a user's votes for that tag is validated (see next)
  • Acceptance Ratio (in %), the ratio which a user need to uphold to be able to use the tag and vote on it in the process.
The last one, acceptance ratio is interesting since it determines how "serious" the users needs to be. If it's set to 100%, the users needs to be correct in each validation in the process (vote positive on content/tag which are accepted and vote negative on content/tag which are negated).

Votes

Since I've been on Reddit a few years and subscribing to ShitRedditSays I also understood that the upvote and downvote are good, but it can be hard to understand what they mean. Especially sarcasm and irony but also if a comment is upvoted because of strong opinion or fact-based. The solution is simple, add more votes!
My conclusion was that there needs to be a generalized vote pair I call Yay and Nay, a humorist vote pair I call Funny counter Offensive and a pair for serious discussion Fact counter Opinion. In this way most of Internets confused discussions would become clearer.

The Work so Far

From october 2012 to august 2013 I've been working on Superit in my spare time and contains the main features which are unique for Superit:
  • Process, were the users validates all new content
    • The validation includes validation of tags which sorts out which tags are approved for the content
    • All user votes are reviewed and users might be banned to use and vote on tags
    • Negated content are discarded and will not appear on Superit.
  • Six different votes
    • Votes are not calculated to "internet points" but the two biggest groups of voting types are shown as amounts (%)

Other Features

Superit has a lot of common features:
  • Comments for each Post of content
    • Each comment has the same six votes as the post (yay, nay, funny, offensive, fact and opinion)
  • It's not required to be logged in to use Superit in any way!
  • User profile page with statistics (even those not logged in)
  • Google and Facebook log in for a persistent user profile
  • Creativity page for people that want to contribute to Superit
    • Translations are easily made for anyone
    • Themes with styling of the page is easy to create
  • Engage page for users to have their opinion
    • I think it's important for users to be able to express their opinions and this page contains a lot of different questions and forms for the users to fill in and express theme self

Superit v.2

As of today Superit lacks both users and content. If, and only if, Superit grows a new version will be made with more tools for the users. This is not created today since it takes a lot of time and isn't required yet.
  • Today's hottest/funniest comment will be listed
  • User achievement list
  • Sorting of posts and comments
  • Sharing functions for Google and Facebook users

Features in Detail

There'll be more blogs on how Superit works. Like, the process will be explained more in detail and so on.

Snapper - Animated GIF Recorder

Snapper - Animated GIF Recorder

Skapade en enkelt java applikation som spelar in ett område på din skärm och sparar som animerad gif bild. Det går t.o.m att spela in från YouTube!
Det går att ställa in antal fps (rutor per sekund), ratio (bildformat), storlek av inspelningsytan samt filhantering.
Det kommer en separat blogginlägg om hur det funkar tekniskt att spela in från skärmen med hjälp av Java och hur gif bilden sparas.

Du kan starta Snapper genom att gå till mitt community Superit.

2013-06-14

Snapper - Animated GIF Recorder

Created a simple java application for recording the screen and saving to an animated gif picture, you can even record YouTube!
There are some settings like frames per second, ratio, size, and file operations.
There'll be a separate blog for the technical details of how the the screen is captured and the gif file is saved.

You can start snapper by visiting my community site Superit.