Software development is like golf in that your chosen path to the pin is a primary problem.
The choice involves weighing your capabilities (people), the course (technology), and the conditions (market).
Confident you can do anything? Bring out the big guns and send it over that treeline on the left. If you make it, you must land it among that sea of traps. This is the most common choice in software development, and the #1 reason why we so frequently turn “par 5″s into 10, 15, and 20s.
Don’t have a team of Tigers? Then go long down the center if you can avoid that large sand trip on the left and lake beyond it. But is this abstract little map accurate enough? Does it tell us about the 50 yards of soggy turf there in the middle? How about wind howling left to right over the lake? Unless you’ve played this hole before you don’t know. What makes software development so tricky is by definition we never play the same hole twice. Technology is changing around us, even while we make our own changes.
Want to make sure you don’t turn a par 5 into a 10? Land it short of the traps on the fairway and take it from there with comfortable strokes. There’s a price to pay for this caution: no holes in one for you. You’re less likely to be a hero this way, but in team-scale software development, the hero model will fail you are sure as a week in Vegas, anyway.
And, sometimes, the conditions are particularly bad. In the downturn of 2008/2009, one could say the conditions for technology products are analogous to “a raging hurricane, with chance of nearby volcanic eruption and ash over the course.” So take care. Be humble. And may you keep both your work in progress and your golf scores down.
(apologies to all software developers offended by an anology from the “sport of salespeople and CEOs”. Think of it as an analogy to bridge the divide)





Arjan`s World » LINKBLOG for January 19, 2009 | 19-Jan-09 at 9:13 am | Permalink
[...] Software development is like golf … – Bernie Thompson ‘ (…) in that your chosen path to the pin is a primary problem ‘ [...]
Curt Hibbs | 19-Jan-09 at 10:26 am | Permalink
“Software development is like golf in that your chosen path to the pin is a primary problem.”
There is an additional complication in software development: while you proceed down your chosen path, they keep moving the pin on you!
Kevin Hawkins | 27-Jan-09 at 6:15 am | Permalink
Nice one. The only disagreement I have is that this could be applied to most engineering disciplines, since the tradeoff decisions are a basic tenet of engineering.
Bernie Thompson | 27-Jan-09 at 2:31 pm | Permalink
Absolutely! We tend to talk about software, since it’s the world we work in, but nearly all apply equally to any activity of “creative engineering.” Thanks for highlighting this, Kevin.
Kevin Godden | 03-Feb-09 at 3:47 am | Permalink
Hey, I like the analogy! But if, as Mark Twain said – ‘Golf is a good walk, ruined’ Where does this leave Software Development??!
Software Development Like Golf? « Code.Implant | 30-Jun-09 at 5:18 am | Permalink
[...] Thompson took one such shot at an analogy in a post entitled "Software Development is like golf…". His premise is that your chosen path to the pin is always the problem, and to succeed you have to [...]