Staining the deck – Choosing the best approach in software
Posted by robkraft on August 28, 2009
I stained my deck recently. I stained it the hard way. I used a brush and it took nearly 40 hours. It was only after I was done and talking to a friend about it that I learned spraying would have been a better option. Sure, I would have spent 4 hours in preparation time to cover everything I did not want stained, but after that I probably could have completed the job in 6 to 8 additional hours. On top of that, the spray would have been more effective than the brush in between the boards, and it would have been easier to apply to the bottom of the deck.
What does this have to do with software? It is an analogy, of course. All developers know that we can write software that will do what the user wants, but what we don’t know (or at least I will admit that I don’t always know), is if the approach I am using is the best. Perhaps there is a way to get the job done more quickly and with better results, and the only thing that prevents me from using the better approach is my lack of awareness of it.
This is why software developers that want to label themselves as professionals need to continually learn new processes, patterns, best practices and tools appearing in the software world. We never know when one of them will be the best option for the next job.