It all started when I received a demo disk for Marathon, Bungie's blockbuster predecessor to Halo. I bought and played through the game and its sequels time and time again. Marathon Infinity brought a set of tools to create completely new scenarios for the game (not just maps, but graphics, sounds, and physics as well), which was the perfect outlet for my artistic creativity and interest in the game. Later, Bungie opened the source and I've been hooked on computer graphics and programming ever since.
In High School I was introduced to the world of traditional (linear) and non-linear video editing. I filmed and composited many school functions using Premiere or Final Cut Pro. A live newscast presented a new challenge that couldn't be solved with offline tools so I wrote my own software for dynamic overlays.
Even majoring in Computer and Electrical Engineering, I found college to be a rather stifling experience. I had to use MATLAB and Java instead of Mathematica and Objective-C and my programming classes only seemed to focus on common sense practices and data structures. Finally the stifling ended when I wrote my senior project: A bluetooth controlled Lego robot powered by a Firewire DV camera analyzed by OpenCL in a Cocoa application that presented its results in realtime via OpenGL on a 64bit MacBook Pro.
Since graduation I've been employed to use all of these skills (and a few more) and am always looking for new challenges. My favorite compiled language is obviously Objective-C and I prefer PHP and MySQL for dynamic web development, though the Sun Oracle acquisition has lead me to start seeking MySQL alternatives.
| Technology | I've Used Since |
|---|---|
| Cocoa and Objective-C | 2001 (when Xcode was Project Builder) |
| Mac OS X | 2001 (10.0) |
| XML and XHTML | 2000 |
| Final Cut Pro | 2001 (2.0) |
| Photoshop | 1993 (2.5) |
| After Effects and Premiere | 2001 |
| 3D API's including OpenGL | 2003 |
| iPhone SDK | 2008 |