Code Small FTW: Friday

Yesterday’s installment, Putting it all together, can be found here.

Epilogue

We’ve been using the app on our iPhone every day for about a month now. Overall, I would give the app a grade of an A-. The network still gets in the way at times if there is no phone data service or the login times out. Perhaps a future version will have a local storage area that will sync transactions in the background as it is able to. But, it has not ever been enough of an inconvenience to deter us from using the app (and believe me, my wife won’t tolerate much inconvenience before she bails on an app).

The development effort to get to a releasable state took 20 working hours over the course of 11 days. This was done in 31 Pomodoros, with 1.5 hours of unstructured “thrashing”, 2 hours of debugging (outside of pomodoros) and another 3 hours futzing with icons, splash screen and the Apple deployment process. The “unstructured” part of the overall development time represents nearly third of the total time. I bet if I had stuck to the Pomodoro structure all the way through, I would have shaved some of that time off, but I am not complaining.

I spent another 7 Pomodoros (just under 3 working hours) with bug fixes and the two new features.

As of the publishing of this article, I have open sourced both the Node.js project and the iPhone App project. Since the App is build with Titanium Appcelerator, it should not be difficult to get this up and running on Android.

Based on my experience in taking on this project, I still have to make a conscious effort to bite off small chunks and be aware of what really is the simplest thing that will work in a given situation. But I’ve also proven to myself that making the effort pays off in a big way. For me, these are the guidelines that make it more natural for me to develop this way:

  • Test first, for real.
  • But don’t get bogged down in formality. You can get creative with testing when need be.
  • Work in some sort of structured chunks of time (Pomodoros work great for me, if you couldn’t tell by now).
  • Keep track. Review how you did in your last Pomodoro. Set a goal for each Pomodoro. Examine how long a feature is taking after a few Pomodoros.

I would love to hear your feedback and your experiences in radically fast, totally useful (at least to you) projects that you’ve taken on.



One Response to “ “Code Small FTW: Friday”

  1. Loren says:

    Overall a really good bit of reading with this week’s installments although, for me, not being a developer, it was a little too technical and I got lost in some of the actual code. That being said, I am really intrigued by the concept of working in Pomodoros and think I will give it a shot next week.

Leave a Reply