Uncle Bob has a great post titled Going Fast - a theme I visited a while back. I don’t know what it is about software development that makes people so willing to cut corners…even (especially) when they know better. How much pain is caused by quick and dirty solutions? How many times have you been working through some code cussing out the developer because they didn’t take an extra hour to do the right thing? Ken Schwaber hits on some of this in his talk at Google and perhaps the move towards more productive programming environments will alleviate this somewhat.
I found myself nodding along throughout Bob’s piece and much as I hate to admit it, it comes down to professionalism. That said, there are times where we *need* to get a solution out the door today to meet a business need - still we tend to, as Bob phrases it, “treat the long term as a series of short term quick and dirty solutions.” How much of this attitude is tied to the quarterly thinking engendered by most public companies’ need to meet analyst expectations? I’m sure Cedric Beust might argue a bit about the need for 100% code coverage but I for one would like to see more clean code.
Kathy Sierra touched on this topic in her post …so it takes less time. To use a particularly apt analogy for me these days, nine women can’t deliver a baby in one month; despite the hype, multitasking doesn’t work terribly well (shocking I know). Anyway, the real money quote comes from Pat Parelli: “Take the time it takes so it takes less time.” Amen. It seems so obvious yet it’s so often ignored. Someday we’ll learn our lesson. I hope.