Swissnex Gaming Jam

This is the story of the origin of the card game, Glutton and my experience at the Swissnex Game Jam held last Sunday.

This is the story of the origin of the card game, Glutton.

It all started, when I signed up for the Gaming Jam to be held as part of Swissnex’s Game Gazer Exhibition. Feeling very n00bish, I still decided to attend the session on Sunday at Swissnex India. After an Introduction, the theme was released; Indian Culture in Game Design.

Team Stark

I was in a 5 member team which we named as ‘Team Stark’ and it consisted of me, Murali, Debashish, Rufael and Simon. After an initial brainstorming, where we dealt with traffic(not really indian) and gods(too controversial), we narrowed down to food etiquette. This was because Simon pointed out that Indian foods would be something that a foreigner would want to learn about and there was no easy way of going about it. We brainstormed some more where we started out thinking about Game etiquette and ended up trying to conquer cities based on food knowledge. Narrowing down, we decided to make a card game and tried to figure out the game play and the game mechanics of the game.

IMG_3634

Prototyping and Playtesting the game helped us realize the problems in the game play and also how to scale the game. Overall it was a fun experience and I will definitely try to organize one in college in the near future.

What:
A Card Game to introduce Indian Foods and Food Habits to Foreigners.

IMG_3646

How to Play:
One set of cards is designed for a game with 2-4 players and it’s encouraged to have atleast one Indian who could help moderate the game. Each card will have information regarding the food like a photo and a calorie count. The cards would be separated into Breakfast, Lunch and Dinner cards. Each player is dealt 9 cards and this forms his ‘plate’. He needs to maximize the value of each 3 card combo before the game ends. There are special combos that can be formed which would create added value for the player. At the end of the game, the points are tallied up to judge who wins which meal.

IMG_3642

Hope to make a better prototype when I get some free time.

Building ‘Meteorites: Earth Impact’

It all started with this tweet. Time was scarce indeed and I had not created an interactive visualization till now. I was supposed to have been doing some d3 this holidays but I never got round to it.

The dataset provided for the contest has 45k+ rows and that was slightly intimidating for a beginner like me.

So I initially decided to take a small set of the data and use it. Like the top 10 found and fell meteorites size wise. Using Tilemill to geotag these was simple anyway.MeteoritesAs you can clearly see above, the size of the red and yellow dots represent the found and fallen meteorites respectively. The relative size of theirs is because of their actual size varies that much with the biggest weighing in at 60 tons. Problem with this graphic was that the size was too big for you to pinpoint the targeted coordinate. Certain impact points hid/overlapped with others. No additional information about the meteorites could be presented.

This led me to the second iteration. Importing a slightly better map into Illustrator(via Export as PDF from Tilemill, SVG didn’t work for me), I played around with labelling the meteorites and this resulted with the map below.

Meteorites-vizThings seemed a little clearer in the above version, but there were still some problems. The scale was skewed a lot if I considered only these values. The yellow dots were nearly invisible and the red ones overshadowed everything. About that time I came across this visualization. That prompted me to play with the impact sizes a bit more. Iterations were made to get the size right. It was a slow process because most of the dots overlapped and made sections obscure. Finally I came up with this before I slept just past midnight.

reddotsPlaying with the opacity above gave me an idea about the denser areas. At around this time, when I was discussing these visualizations with @Rasagy, @Hashnuke asked if I wanted the reverse geotagged locations so that I could perhaps map the Countries in a sort of choropleth. He said he would write a script and run it using a reverse geotag service like Google. So we set Sunday as the day to do this.

I continued to work on Tilemill and decided to export the map and host it on Mapbox. Decided to learn Wax so that I could build an interactive visualization. At that moment, most of the visualization that you see at the end was forming in my head. With 2 days left to go for the submissions at Visualizing.org. I decided to give it a go.

Playing around with Wax led me to a bug when the map was fullscreen and led me to file my first issue at Github. After that I got stuck while trying to figure out pivot tables in MS Excel. @Sevenaces helped me realise my stupid mistake and I got the data I need to plot the Column charts.

Choosing a charting library was the next thing. I wanted something simple that did not need too much work, offered interactivity out of the box, etc. I went through my bookmarks to check dviz. I had been meaning to use this sometime soon and decided to for this project. The other option I had was dviz but the simplest examples looked like a lot of work. That tipped the scales in dviz’s favour. dviz is the simplest charting solution for people who don’t know javascript and wont be bothered to learn javascript. So the column charts worked wonderfully. Stacked column charts were my first option but that showed me the fact the the fallen meteorites were much lesser and were easily hidden by the found meteorite data. Hence I decided to separate the two charts and show the data separately. Poking around Google’s Visualization api, I figured how to customize the dviz charts some more. I used Flatuicolors for the colours. That done, I turned to Foundation 3 to build something simple.

Next, Akash walked me through setting up a github account, hosting a .io repo there. I installed Github for Windows and everything was simple and intuitive. Git incidentally was something I was meaning to learn from a long time, this project gave me and opportunity to do that. The prototype visualization was up and online on Saturday night but it was quite a long way from finishing.

There were obviously problems with the data set. The section at 0,0 seemed to be awfully dense for a point in the middle of the ocean. This led me to review the dataset. I found that more than 10k rows didnt have coordinate data and some of them had 0,0 instead. I decided to clean these rows out of the geotagging. They were bad locations and did not contribute of anything. The dataset was now slightly above 32k rows. More Tilemill followed. Tilemill kept hanging every now and then and I had to close it every few minutes. Frustrating indeed. The huge dataset could be a possible reason. Figuring out the legend and tooltip design took me some more time. Finally the map was done. More hangups followed and I was finally able to export and host the final map on Mapbox.

The next problem came due to the 32k row .csv file. The big file was throwing errors. We then split the dataset into 3 sections and Akash ran the script on Geonames via nitrous.io. He should really write a post on how he did all that. Here’s the scripts and the processed data. There were about 40 bad locations in the dataset which were removed.

The output of the reverse geocoding was the country code. I wanted the country names. This is how I learnt about vlookup in MS Excel. I also learnt how to fill all the blanks in a table and how to divide a column by a number. These are not as straightforward as you think. Excel hung up on me as well. Lot of times. Remember making everything a table helps a lot when doing Excel operations. I used the country name list from here(It’s missing SS=South Sudan). Finally everything seemed ready. Now all I needed was a good scatterplot example to borrow ūüėČ

A quick search of mbostock’s d3 gallery and I located a scatterplot that I could use. It was simple to understand. I promptly hacked the example to meet my demands. I learnt a bit of d3 along the way.
With the final changes all done, I was done with ‘Meteorites: Earth Impact’. In 3 days I learnt such a lot. It was indeed a wicked journey.

Without anymore delay, Ladies and Gentlemen I present to you ‘Meteorites: Earth Impact’.

Update: The visualization got ‘Staff Picked’ on Visually. #proud

2012: The Year of Online Learning.

If you have been an avid reader of Hacker News these past few months, you would have noticed a host of startups launching around the idea of teaching learning to an everyday person. Codecademy was one of the first out of the stable. The people of Codecademy introduced many of us to the world of Javascript for the first time. I was overjoyed about Codecademy but eventually realised from their usability that it was intended at a reasonably computer literate user. Their problem was that the forgiveness that they employed when teaching the programming novices was not very intuitive. I dont consider myself to be the dumbest guy out there but i was befuddled by the fact that their UI was not responding to an answer that was right but not in the way they had instructed us to code. Still they are getting there slowly, CodeYear was a great way of pushing ahead[1].

At around the same time, the Stanford online classes started off. Prof. Thurn who started the¬†¬†‘Introduction to Artificial Intelligence¬†class’ gave up his tenure at Stanford and¬†started¬†a new online university called Udacity. I was not very interested in the first session but now i have enrolled for a class[2]. Lets see how that goes. MIT also decided to jump onto the bandwagon.

Then the trickle turned into a torrent which flooded the internet. Some of the websites i came across include

Ruby
: Rubymonk, TeamTreehouse, tryBloc, tryRuby, RubyLearning
Clojure: tryClojure
Web Design/Development:Beginner’s Guide, TeamTreehouse, Codepupil.
Design: Method of Action

I also came across these two Reddit pages filled with resources. And last but not the least, I love the work Salman Khan is doing with his Khan Academy.

If you know of any interesting learning resources, do let me know in the comments below and i shall update this post.

Update: Another list of Learning resources includes Coursera.

Update 2:¬†Knight Center is offering courses in journalism¬†(They have courses on information¬†visualization). Also adding Stanford’s Venture Lab.

Update 3: Now there’s uReddit, where anyone can set up a MOOC.

Footnotes:

  1.  Codecademy recently started out CodeYear to get more people to start learning. NYC Mayor Bloomberg is one among the many who has vouched to code this year.
  2. I have signed on for the ‘Human Computer Interaction‘ class which will start on 30th January 2012. Check out the entire Winter semester course list here.