29 Jan
2009

Bring on the Programmer Apologists

Category:UncategorizedTag: :

I’ve been watching and participating with the Alt.Net, Design Patterns, and Best Practices groups for a while now.  Sometime on the sidelines, sometime in the thick of things.  I watch as people go about confronting and teaching each other, sometimes with the greatest of respect — other times, not so much.  One thing is apparent to me, many people are good at evangelizing, not many are good at apologetics.

First up: what the heck is Apologetics?  (note: it isn’t the same as apologize)

Apologists are authors, writers, editors of scientific logs or academic journals, and leaders known for taking on the points in arguments, conflicts or positions that are either placed under popular scrutinies or viewed under persecutory examinations. The term comes from the Greek word apologia (????????), meaning a speaking in defense.

Wikipedia (http://en.wikipedia.org/wiki/Apologetics)

As for Evangelizing, it is similar but different.  There are many definitions, but I’m going with the Prinston definition:

evangelism (zealous preaching and advocacy of the gospel) (reference)

In my definition, an Apologist is sitting down with someone and have a discussion.  An evangelist is up on a pulpit proclaiming the good news to any within hearing distance.  The difference between the two is key, because both are trying to achieve the same results.  But I find the apologetic version much less grating.

Apologetics does not imply always apologizing.  Apologetics are not apologizing for bad software, bad practice, or bad code.  Apologetics does not imply rationalizing or defending bad code.  Apologists are trying to gently guide to betters methods of software development. 

This is to counter many of the evangelists that I’ve seen, who start of by looking shocked, then angry.  And if at first you don’t succeed, add volume.

My introduction to Apologetics comes from my Christian faith and the works of John Calvin and Francis Shafer, but the notion of the idea goes back much farther — biblically speaking.

“Come now, let us reason together, …” (Isaiah 1:18, ESV)

“…, always being prepared to make a defense to anyone who asks you for a reason for the hope that is in you; yet do it with gentleness and respect. (1 Peter 3:15)

There is nothing bombastic about apologetics.  It is inviting and striving to bring others in, but also not shying away from hard topics.  What I see far too often programming circles cutting, degrading, and bombastic.  There is too much “my way or the highway” in the approach. For me the key fraise is from 1 Peter (above), “yet do it with gentleness and respect”.

7 thoughts on “Bring on the Programmer Apologists

  1. My experience has been that two primary things will allow you to climb “higher up the food chain”:

    1.) The ability to speak and / or present ideas to your audience well.
    2.) Technological agnosticism (read: focus on the problem to be solved, not the technology solving it)

    Don’t waste your time with “evangelists”, or people espousing “marketecture”, or people out to defend a particular technology – it will all bite you (it’s bitten me). Move beyond it to identify the problem and then pick the tool best suited to solve it.

    My 2 cents.

  2. Taking only the loud parts of the Agile evangelist’s speaches I’ve heard lately:

    I am confident that my team can deliver on time and under budget with Extreme Programming while our testers use TDD. We put all the developers at card tables and make them sit really close. It’s called “pairing”.

    Also, are now Lean. No more requirements and we iterate on our problems by integrating to main every 8 months.

    Scrum works well for us because the Scrum Master forces the team to do what the managers want. The developers must defend their actions every day at an hour long meeting.

    See? Evangelism does work.

  3. I’m not so sure I agree. I tend to see lots of evidence of apologetic behavior. But its hard to quantify how much time folks put in to pairing or talking through something like DDD with other devs. There is alot of this going on, but it happens outside the “big name” blogs and off of the high traffic mailing lists. For every self-appointed evangelist (or critic) there is an army of devs quietly learning and doing. And that to me is the heart and soul of the “real” Alt.NET community. That is what makes it worthwhile.

Comments are closed.