Projects
For a summary of what I do, my resume is the best bet. What follows is a dump of all the interesting projects I’ve undertaken in my career.
Current Projects
- Prism: A photo browser for iOS.
- WeddingDJ: An iPhone app for running music at events.
- Consulting work: Since starting Steam Clock I’ve worked on an HTML5 eBook, a Rails site for commercial real estate, an iPhone app for finding fresh food, an interactive retail console for iPad, strategic consulting for a consumer video startup, app store work in JavaScript for a Fortune 500 company, a JavaScript app for the Fortune 500 itself, and an iPhone app for ordering wonderful custom suits.
- VanJS: The Vancouver Javascript Developers group.
Speaking and Teaching
- Crafting a Technical Meetup: A talk on running a meetup that I’ve given at JSConf and other events.
- Tackling JavaScript: A JavaScript intro talk I first gave at Wordcamp: Developers.
- Advanced JavaScript: A more advanced dive into JavaScript functionality I’ve prepared for the Polyglot Conference.
- CMPT 470: A 12-week Web Technologies course I taught for SFU’s Computing Science department.
- Thick Client JavaScript: A talk I’ve given at VanJS and SFU about JavaScript apps with a simple server and rich client.
- Web 101: An 8-week introduction to HTML, CSS, JavaScript, and other web technologies I taught for Mobify.
- Storing Data on the Web: Two talks I gave at SFU on NoSQL and HTML5 data storage for web apps.
- Mobile Safari Apps: A talk I gave at VanJS on Webkit features that make developing web apps for iOS great.
Steam Clock Era Projects (2010 and later)
- Unladen Follow: An unfollow helper for Twitter written in JavaScript and Rails.
- Prototypes: Lots of interesting prototypes haven’t made it out of the Steam Clock labs – for example an antisocial Facebook app, a Git client for Mac, and a turn-based strategy game.
- Websites for Fun: I’m often making websites for fun, for example for a local theatre company, a WoW guild, and my wedding.
Apple Era Projects (2008-2010)
- iWork for iPad: Programming for the highly successful iPad apps.
- iWork.com: Thick-client JavaScript, CSS, and mobile work for rich web app that helps proof documents.
- Prototypes: Working on product prototypes that don’t ship is as fun and frustrating as it sounds.
Discovery Era Projects (2003-2008)
- Just Ask Oldguy: CSS3 design for a WordPress Q&A mod.
- Learn Faces: I built a game for school staff to learn students’ names and faces using JavaScript.
- DiscoNet: My main job at Discovery was creating and iterating the company intranet and CRM system. This was much more fun than it sounds!
- Principalm: I did QA, branding and design work, and other product-related tasks for Discovery’s first mobile app (before mobile apps were cool).
- Budgetable: I built a prototype financial management website, and have since sold the domain to a team who is doing great work with it.
University Era Projects (2002-2008)
- Altering Time: A long-running community site that included multiplayer strategy games and user-generated content.
- Political Asylum: A PHP and MySQL game I created in high school focused on political machinations.
- Engineering Faith: A web-based game focused on creating your own religion.
- Freelance web development: For the better part of a year I did solo web contracting, and learned many lessons on the way. I built sites for a construction company, a credit union, a venture investor, a doggy daycare, and a project management startup.
- SFU CSSS: I spent some time as the VP Operations, Acting President, and Secretary of the Computing Science Student Society. Much fun was had.
- The Cascade: During my year at UCFV, I wrote regularly for the university newspaper.
- Gender Quiz: A somewhat better than random-guessing AI project.
- Modeling Plants with L-Systems: A project on generating 3D plants for SFU’s CMPT 461/761.
- Other Project Courses: Other than the above, as coursework I worked on a small distributed system, a pinball game, a raytracer, a student society website, a Java compiler, an STV voting system, and 3D fireworks simulation in C#.
High School and Earlier (1990s)
- ACSS Theatre Company Video: An ancient nostalgic video.
- FantasyTech 3: A text-based RPG I wrote in QBASIC, representing the first time I shipped something large.
- WarTech: A turn-based strategy game I created with C++Builder, notable for being actually pretty fun.
- So many games: Over the years I started roughly a dozen games, two of which I completed with (relative) success.
- The Essence: For some reason I designed my own (bad) trading card game, creating a couple hundred cards, many featuring (bad) art.
- Spellbook: A low-budget gaming magazine I ran with my friends for two years.
- Street Vending: In elementary school I loved putting a table on the street and failing to sell lemonade and hockey cards to passers-by.