Nine Day Game, Day 4 - Lint Remover

After 3 days of solid development time, Day 4 called for a bit of clean up in the 3D engine code. It was work that needed to be done, but unfortunately not the kind of material that makes for a good blog post. The goals for the day were more nebulous, and performance a bit harder to measure.

Nine Day Game, Day 3 - Need a Light?

Day 3 continued the trend of setting goals that were just slightly out of reach. They say you're not supposed to set unreachable goals, but it feels like, given the time crunch we're in, making these tight schedules keeps us working as hard as possible. The goals for Day 3:

Nine Day Game, Day 2 - ASCII Massacre

Day 2 began around noon at Kwartzlab, on the second day of the Global Synchronous Hackathon. We were feeling ambitious, and laid out another 3 goals for the day:

Nine Day Game, Day 1 - init_gl()

Day 1 started off bright and early at Kwartzlab, coinciding with the first day of February's Global Synchronous Hackathon. We had four development goals for the day:

Nine Day Game, Day 0

As a learning exercise, we (@malexw and @ryanfox) have decided to take our 5 day reading week + 4 days of weekends and write a computer game. For me, writing a game is an itch I've wanted to scratch for a while. I've come close, most recently writing a quick but incomplete OpenGL game at a Hackathon last month with some software engineering students, but I've never completed a game that I would be willing to release.

3dc - A 3D File Format Converter

With Kwartzlab's recent 3D printer aquisition, we needed to put together a set of tools for members to create objects that could be printed by the machine. The RepRap printer we purchased has an associated open source project for loading standard 3D object files, called stereolithography (STL) files, and converting them to the printer's machine language, called G-code.

Report from the Facebook Camp Hackathon

This weekend, Facebook held their first international Camp Hackathon event for students from the University of Toronto (U of T) and University of Waterloo (UW). For a full 24 hours from 5:00 PM on January 21 to January 22, over 200 students (including a full coach bus of students from U of T) occupied UW's Student Life Center, designing, developing, and hacking fantastic new software. The goal of the hackathon was completely open-ended. While there had been rumors of a development theme for teams to work on, at the beginning of the event the organizer announced that teams should work on anything they wanted, and focus on learning new skills and developing "something awesome".

Resurrecting Moria

Roguelike games are a venerable genre of computer games that have entertained hackers for roughly 30 years, and had a major influence on gaming classics like Diablo and Torchlight. Roguelikes followed a somewhat unique evolutionary path in the world of computer games. Unlike commercial games that strive to be unique in a very large ocean of predatory competitors, roguelikes are more a labour of love. Each new generation was based on the games that came before, adding a handful (or more) of features that the author felt was missing from the generation before. This layering of new features is much like the way ancient cities such as Rome have built upon themselves, century after century. In a way, playing these earlier games is like an archaeological dig, giving us a peek at the evolution of the genre.

Analyzing Android App Traffic

Android, the increasingly popular operating system (OS) for mobile phones, goes to great lengths to protect users' data. From applications that run as their own userid, in their own group, to the permission mechanism that alerts users to the information an application can access, Android is a far more secure platform than any desktop OS. However, there is a significant difference between informing a user what an application can access, and what the application actually does with the information. An Android app downloaded from the Market may request access to the internet and to the user's address book, for example, but beyond that the user has no idea what the application does with those permissions. How do we guarantee that a malicious app isn't making a copy of a user's private data, and sending it to a secret sever operated by the application's author?

Turbo OutRun Control Repairs

This beautiful arcade cabinet sat exposed to the elements in a back alley in Kitchener for months before being rescued by a team from Kwartzlab. The weather was not kind to this poor machine, and it was clear it would need some love to get it running again.