While reading Mark Miller's Tekkie blog, I came across a humorous post with funny spoofs of "motivational" posters. It really got me thinking. I am sure you have heard of Albert Einstein and Isaac Newton, pioneers in physics and math. You might even be familiar with Edward Teller or Robert Goddard (nuclear bombs and rockets, respectively). But can you list the achievements and accomplishments of any of these people, or what they are known for?
- Donald Knuth
- John McCarthy
- Alan Kay
- Martin Fowler
- Ada Lovelace
- Edsger Dijkstra
- Alan Turing
- James Gosling
- John von Neumann
"Old men with beards" does describe everyone on the list except Ada Lovelace (who is a woman). However, the correct answer is that almost all of them are all on Wikipedia's List of pioneers computer scientists. In other words, they are in the canon of the patron saints of programming.
It's sad that only a fraction of the programmers out there have actually heard of any of these people, let alone now what they did. To be honest, I am only familiar with about half the names on that Wikipedia list. My "excuse" is that I mostly sidestepped formal Computer Science. Even if I had gone that route, there is a good chance that I would not have learned much about "historical" Computer Science or theory.
Why is it that more software developers can recognize a physicist than a pioneer in their own profession? To be honest, programming really is not a path to riches and fame. It can get you to middle class without a doubt, but definitely not rich, unless the dot-com era returns. Name someone who became wealthy as a programmer. Charles Simonyi (who invented Hungarian notation) is the only person who comes to mind, and he is fairly close to being a celebrity, mostly due to his relationship with Martha Stewart.
I simply cannot think of a field of study with so many practitioners and yet so little public recognition. At big meetings, things like, "Suzy in marketing did a great job on the brochures" and "Jim in operations resolve $3 million in waste due to a bad process" are common, but when was the last time you heard "Holly's performance improvements in the code reduced our need for new hardware by 20%"? In the movie Independence Day, Will Smith's character is a lot more interesting than Jeff Goldblum's character. Heck, I can name more former American Gladiators (Turbo, Laser, Nitro...) than famous programmers or computer scientists, and I have only seen three episodes of the show more than a decade ago.
Why do we get so little respect? Is it that we do not toot our horns enough? Do our managers fail to understand our work, so they can't evangelize it properly? Do we make relatively more money than most other folks in the company, so someone assumes that we do not need praise? Or is it that no one sees what we do directly? Let's face it: The IT department has massive overhead, but IT generates zero revenue directly unless your company sells software or support. Sure, there are a few other departments can survive without us, and we (hopefully) increase their efficiency, but measuring direct ROI is a lot tougher than measuring sales.
Of course, when things go wrong, people suddenly are quick to remember our names. "Oh yeah, I remember Joan saying she was doing some database work late at night yesterday" or "Victor said he might try improving that code last week; I guess he messed it up!"
What can we do to raise the positive visibility of developers?
Justin James is the Lead Architect for Conigent.