Create a Winning iPhone / Android web app in 32 hours or Rapid App Development

The task at hand. Rapidly build an app or tool in 2 days. Deploy said app. We decided to that while the boss was out of town at a conference we would push out a new app. We were a team of two. We knew time was critical, so we knew we had to plan quickly. We didn't even have a product idea yet.

The first step

was to break out the dry erase board. I gave us 5 minutes to shout out ideas. Dumb, too long, whatever. It didn't matter, we just needed to keep the ideas coming. This avoids us just sitting there getting bored without an idea. Don't shoot down ideas in this phase.

Next,

we evaluated the ideas. 5 minutes. They ranged from a complete rewrite of the tracking tool to integrating with a new crm we're implementing. We threw out the ones that we couldn't complete in 2 days. We prioritized the rest based on what would be the most useful. We chose to create a mobile version of our tracking platform.

Step 3: Defining the feature set

10-20 minutes. Erase the dry erase, and we broke down what it meant by to create a mobile version. We listed the features we would like to see in this mobile verison. After which we prioritized the feature set.

Step 4: Choosing the tools

We thought about the toolsets to be used. We knew that we could leverage jquery mobile. Part of our decision was based on that. We both knew php, and I have been using ruby and rails since 2006, but not in an everyday basis. My colleague has shown interest in learning ruby anyways. I decided it was time for him to jump in. I generated the rails app and started to dig in.

Step 5: The Development

We came up with the following feature list:
  • View a listing of active campaigns
  • The ability to turn on or off offers within campaigns.
  • The ability to change the end url to any offer.
  • View reports for for various metrics
  • Create js (canvas) charts for the reports
  • create simple authentication system using [devise|authlogic]
We started with an existing database schema running on MySQL. It did not mesh with the conventions of rails. So we had no use for migrations.  We decided to break down the schema into the MVC objects rails wants. After generating the scaffold for the app I immediately committed it into git and then pushed it into a remote repo. James wired up the jquery mobile into the layouts. We decided that I would handle the backend since I was familiar with ruby and rails. James had built a mobile interface for his apartment search using jQuery mobile, so we decided that he would be best pulling together the frontend. This combo proved to work well for us. Rails helped greatly with the rapid production. I had models and a few controllers created with the associations needed within minutes. My friend was astonished how nice the activerecord associations just worked, and how quickly everything came together. After working with Zend Framework and Doctrine, the setup was minimal. The ui was expedited by using jquery mobile, which is shaping up nicely. We just used the default styles that came with it. They're good enough for now. I must say it's pretty slick. This was my first run in with jquery mobile. I'm a huge fan of jquery and jquery-ui, so this was an easy choice for a mobile framework. It handled a lot of nice features like transitions and ui widgets through simple css classes and a standard structure. A lot like iui in the old days, only with modern css3 and html5 enhancements.

The End Result:

We ended up dropping a few features. We never broke down the reports any more granularly. We also skipped creating js based charts. We relegated authentication to a simple .htaccess file as well. We conceived, planned, developed, and deployed the app within 2 days. It felt clean and finished. The stakeholder is thrilled, and is already coming up with new reports to implement. Winning! I'll need to fake some data and then I can show some screenshots of the app, til then I'm going to hide our numbers even if they'll be old soon.
Steven03/31/2011 17:39

CB?

Evil Buck03/31/2011 17:47

No way. I haven't worked there since June 2010. I proposed the idea of a mobile interface several times I could never get an approval to do one there.

Leave a comment
We don't share this.