Tuesday, January 13, 2009

The 80/20 Rule


Following my previous statement ‘coding is fun’, I had some long coding hours which reminded me the complexity of developing a real product.

The first thing coming to mind is the 80/20 rule – it takes 20% of the time to complete 80% of the product but the remaining 20% take the rest 80% (there are several variations of this rule).
In practice, developing a cool demo is relatively easy. Many sources/samples are available on the web. The underline platforms do provide much of the basic functionality needed. Cutting corners is fine (actually it is a must). And it is clear who will click where and when.
But… converting it to a real product is a different story. Dealing with edge-cases, ensuring scalability to support many users, ensuring the architecture will be extendable in future releases, working on a pixel perfect UI and many other activities take much more time than the first quick-and-dirty demo.

So, is the statement ‘Coding is fun’ still correct? I would still say yes, mainly because of the satisfaction of creating something using your two hands (keyboard and a mouse).

The context of that is the initiative I’m working on – it is going to be shipped next week! As the first user to work with it I can ‘objectively’ say it’s a great product.
As the application monitors a run (among other things it does), it is challenging to test the scalability to deal with large data as you need to actually record the run. Therefore on last Saturday I ‘had’ to run 18km. Any volunteers for testing a marathon :-)

No comments: