Simplicity and Polish

I’ve recently bought a new 24″ iMac after many years using a PC as my main computer and occasionally begrudgingly using a “permanently borrowed” Mac laptop from my girlfriend. The new screen is certainly a sight to behold and has increased my productivity no end. I’m definitely not an avid gamer but one thing I am surprised is the lack of commercial games available for the Mac.

Before we take this tangent too far, the reason I mention it is because I’ve been trying out a few online Flash based games. Miniclip has tons of them, from flying a stunt plane to parking cars. But the place I always end up back at is WinterBells. The salient thought behind this post is that simplicity, or rather polished simplicity is an admirable target. While the games at miniclip are certainly impressive and flash (pun intended), the one I enjoy playing most is Winterbells. From a programmer’s perspective Winterbells looks simple, almost trivial, but there is literally nothing I can fault about it.

Let me explain. I think there is a tendency for application development to naturally descend into including everything and the kitchen sink. Business types are keen to include everything to see what shit sticks, development are probably thinking about showing off and working on fun technologies. Maybe taking a step back and focusing on what is important in your application; making that fantastic and giving sufficient time to polish it would be a better approach. That takes real work though, I have noticed recently that oftentimes over 50% of a project is taken up not in building something that works, but building something that is brilliant.

Take thepickuptruck as an example. I would say I wrote the bulk of the code, i.e. the database model, controllers and Twitter hashtag retrieval methods in a couple of nights maximum! Especially with some of the newer languages and frameworks, you can build something that works in a trivially small amout of time. It was tempting to think there wasn’t much left to do, but in fact the hardest bit was refining the app to feel finished and professional. The only word I can think of to truly describe this is polish. A good application should feel nice to use, smooth and polished. The chasm between something working and working well is huge, and truly separates the genius from the rest.

The lessons I have learnt (or am learning) are that focus is key, pick what you want to work and make sure you are totally happy with it. Approach suggestions for extra features with extreme skeptiscm, and if they are deemed important, plan for time not just to make them work but to make them shine.

4 responses to “Simplicity and Polish”

  1. kat neville says:

    This is definitely a lesson that I’m having to learn too– it’s true when people say that the last 10% takes 90% of the time, and if it doesn’t, then you haven’t really polished it, have you?

  2. You know so many interesting infomation. You might be very wise. I like such people. Don’t top writing.

  3. Andrew Eells says:

    learn fast you do, young skywalker, hrrrmph!

  4. Askey says:

    This is definitely a lesson that I’m having to learn too– it’s true when people say that the last 10% takes 90% of the time, and if it doesn’t, then you haven’t really polished it, have you?…

Leave a Reply

Your email address will not be published. Required fields are marked *