One of the bloggers I follow is Jeff Atwood, because he’s pretty good on all things programming, and lately I’ve been a bit of a programmer. But in this old post he just linked to on Twitter, the programming part is only incidental to the wisdom he offers. I offer it as is (emphasis in original), leaving it as an exercise to the reader to substitute something more relevant for “programming”—perhaps parenting, or discipleship, or just living life properly.
But it is possible to go too far in the other direction, too. It’s much rarer, because it bucks the natural introversion of most software developers, but it does happen. Take me, for example. Sometimes I worry that I spend more time talking about programming than actually programming.
At the point when I spend all my time talking about programming, and very little of my time programming, my worst fear has been realized: I’ve become a pundit. The last thing the world needs is more pundits. Pundits only add ephemeral commentary to the world instead of anything concrete and real. They don’t materially participate in the construction of any lasting artifacts; instead, they passively observe other people’s work and offer a neverending babbling brook of opinions, criticism, and witty turns of phrase. It’s pathetic. […]
It’s helpful to discuss features, but sometimes the value of a feature is inversely proportional to how much it has been discussed. Our job as software developers is to deliver features and solve business problems, not to generate neverending discussion. Ultimately, As Marc Andreessen notes, we will be judged by what we – and our code – have done, not the meta-discussion that went on around it.
Not only is it not our job in life to generate neverending discussion, I think we need to view neverending discussion as a symptom that something is wrong. Discussions needs to end as soon as they cease being helpful, and if a particular discussion isn’t accompanied by tangible benefits then it isn’t one that should have ever existed.