Building a Software Product in a Month

By Spicer Matthews

The Cloudmanic Labs team built Photomanic, our new photo application for Evernote, in a month. Actually, the time from introducing the concept to launching Photomanic was less than 30 days. I am very impressed with the polished product that resulted from our hard and fast work. But why the rush, you ask? Well, on a whim we decided to enter Photomanic in the Evernote Devcup 2013 competition—a month before the deadline. Consequently, we learned a lot about building software under pressure. And as many of you know, I am not a big fan of deadlines.

I have always believed that any first release of a product requires about 500 hours of work. This estimate includes time for planning, design, programming, integration, and bug fixing. If realizing the feature set takes more than 500 hours, the plan for the 1.0 release is probably too ambitious. But we had only a fraction of 500 hours to build Photomanic, and we did not have time to explore many different ideas. In this case we deviated from our usual development process in some key ways:

  • I appointed myself the decider. Although we bounced ideas back and forth, I often had to cut discussion short and make a decision. Given the time crunch, the team understood the expediency of this dictatorial approach. Before the next release we will revisit those ideas we were unable explore fully.

  • We adopted a deadline-driven attitude. After listing everything we wanted Photomanic to do, we prioritized that list and set a deadline for each phase. Features that were not completed in time were shelved for the time being. Normally, we start with a list of tasks necessary to build a minimum value product and launch when all of those tasks have been completed.

  • We leveraged our existing infrastructure. One reason we succeeded under such a tight deadline is that over the past 5 years we have built a scalable platform for our products. Had we not made that early investment, we could not have built Photomanic so quickly. Even we were surprised by how smoothly things went. This experience confirmed my belief that building infrastructure should be a strategic objective of any young company.

That’s how we successfully built a software product in one month—and the response has been very positive. Future iterations of Photomanic will be improved by feedback from users, who reliably tell us what they like and dislike. Additionally, by monitoring usage we can determine which features are most useful and which need to be revisioned. To be clear, quality was not sacrificed—only features. Photomanic’s design is engaging and the code is clean.

I now believe that a company should deliberately launch the first version of a new product on a tight schedule. Being forced to narrow the focus to the most essential features ensures that they are well designed and in service of a clearly defined core purpose.