I was the sole developer for this, the flagship app for Zumobi. It was one of many apps I did while I was establishing the Android development practice, and has been downloaded millions of times. This app incorporates Urban Airship's push notification SDK, and gets it's weather data from weather.com. It's currently ranked in the top 10 news apps on the Android Market.
This was a personal Android project of mine. I'd been using a projector hooked up to my computer to watch movies for quite some time, and I'd run into the problem of how to control the computer from the couch in between movies. I'd already rejected the idea of a Bluetooth keyboard and mouse as being too unwieldy, so when Google released Android, I decided to solve this problem myself. Since its release at the beginning of this year, RemoteDroid has been downloaded over 100,000 times and has been mentioned on blogs like Wired, Engadget, and Boing Boing Gadgets.
An iPhone app done in conjuction with Lavalobe, WTF?! was meant as a fun conversation-starter app. It pulls random facts and trivia from a database, allows you to rate them, submit new lines, and see the highest-rated, and newest entries. I did the entirety of the programming work for this project, using Objective-C, PHP, and MySQL to create a secure back-end, and easy to use front-end for this project. More importantly, it gave me insights into the approval process for the iTunes App Store, which is a hurdle everyone who wants to publish for the iPhone and iPod touch will need to overcome.
I localized and internationalized the 3LCD site with Cole & Weber United, updating and cleaning up existing ASP.NET code.
Engine Interactive - Business siteThis site uses standards-compliant HTML, cross-browser DHTML courtesy of jQuery, and a fun browser back button hack in the jobs section to provide a usable, progressively enhanced experience for prospective clients.
For this community-based collaborative art site, I was asked to enhance the existing functionality and UI by adding various improvements such as a folksonomy, ratings and commenting ability. To do so, I used PHP and MySQL, plus AJAX for the interface components.
With Cypress Consulting. I worked directly with the Sounders Lead Graphic Designer to bring this site to life. I also conducted user testing to refine their seat selection tool to ensure the best user experience for sounders fans.
Suncadia Real Estate
An all-Flash site with an XML backend. The site is designed to showcase this real estate company's properties and includes videos, dynamic listings for multi-million dollar vacation homes, and a live webcam.
This was a downloadable suite of games done for Nick Jr. As lead programmer, not only was I responsible for overseeing 3 other programmers, and making all technical decisions, I also had a hand in QA, and final tweaks to gameplay.
Using mProjector, I created full-screen downloadable toy that's cross-platform, performs well, and was fun to create. Especially challenging was writing routines to make sure that only the relevant parts of the screen were updated on each frame.
This was the number one most popular game on the Disney Channel web site when it was launched, breaking game pageview records for that site. In building the game I utilized 3D math and camera systems. The positions of all elements on stage are stored as absolute positions, but then displayed as relative to a camera, making scrolling and changing viewpoints very easy.
This project was challenging due to Disney requiring that it be playable by users whose machines had, at the low end, a 500mHz machine with 256mb of memory. At the same time, it needed a fast, accurate physics engine. Achieving both goals meant using a grid to cut down on collision tests, and a bunch of ActionScript optimizations.
I wanted to figure out how to program a multi-player game server, so I created this. Click the flower icon, then click around the screen to plant flowers.
Click the bomb icon, then click around the screen to blow flowers up. Open up two browser windows, and you'll see that the state remains consistent between
them. You might even be able to see other people planting, or blowing things up at the same time.
The server was written in Java, and the challenges for this were maintaining state in a multi-threaded environment while keeping performance decent. The test button sends mouse clicks at random locations, and is there for load testing.