A part of the universal appeal of sport is our ability to see an overlap of beauty and reality within the games we play. The beauty comes from the ideal form, motion, and skill. The reality is the humans at play, the unfortunate circumstance and the ineffables, things like “momentum” or “heart” or “luck.”

While a sport like football (the American variety) is about the goal of perfection, its idealistic opposite is baseball which is consumed with the battle and nuances of failure. The best batters fail 65 percent of the time. An incredible pitching effort can be undone with a late inning meltdown. The difference between the men who are memorable and those who are forgotten is a difference between 1 in 20 at bats[1].

The nuance of the game extends beyond personal failures and triumph; year after year it seems that teams which end up winning the World Series are teams that “peak at the right time.” Unlike basketball and football, where the better team almost always wins, the better team is only a likely winner in baseball with a lot that is subject to chance. Over the last 5 years, the winners of the World Series only win about 60% of their games. In American school 60% is a D – only one point shy of an F.

And somehow this makes me think of life and software. No one wins all the time and depending on the nature of the task, whether the system is closed or open, and the winds of the ineffable (people like Albert Pujols believe in God, not luck, so let’s keep this variable vague), failure is a part of life as a software developer. When a deadline slips, it’s like a strikeout. When a project goes underwater, it’s like losing a series. There are those extended periods of motivational weakness, where bouncing out of bed and compiling code just isn’t that fun. Especially when you work on the same problem for several months (e.g. font rendering).

But like baseball, I think that the difference in people has to do with more than talent. It’s the ability to deal with failure, the grit in hammering away at a problem and persevering, and a temperament that allows you to forget failure and treat the future as its own exciting journey.

[1] The difference between batting .250 and .300 (source: 2012 Baseball Forecaster (Ron Shandler's Baseball Forecaster) )