Good Developers vs Bad Developers

Being a good developer has nothing to do with programming languages, frameworks, design patterns or coding style.

It all comes down to (in this specific order of importance):

  1. being autonomous
  2. having decent communication skills (read: a bit better than cavemen’s)
  3. being quite a nitpicker
  4. knowing that the skull’s size is limited.

Developers must be able to work autonomously and to know when to ask for help. If a developer never, ever asks for help, then it’s probably hiding dust under the carpet. If he asks for help too often, then perhaps he’s not able to solve problems autonomously, or simply to use Google. Before asking for help, I make sure I’ve spent a few minutes looking through existing information, then I opt for other human beings that happen to be nearby, or simply head over to Stack Overflow.

Communication skills are obvious. Or perhaps not. Not everyone is able to communicate effectively. I am not, for example. I suck at explaining things, and because I suck, I make sure to use appropriate wording, re-read my emails, insert appropriate punctuation, and use any other tactic to allow other human beings to understand what I’m saying. A 10-line email with no punctuation, typos, misused or simply missing words is not a good way to communicate, let alone to ask for help. It’s a good way to piss others off, though.

Perhaps a developer does not have to be a nitpicker, but he has to be… meticulous. Mind you, perfection is vastly overrated. We’re after something called accuracy. A good developer is accurate and meticulous, and you can see it in pretty much anything he does. Code formatting, comments, punctuation, proper use of uppercase letters, positions of desktop icons, you name it.

Also, we developers must be perfectly aware, as Dijkstra said, that our skull has a limited size. We can’t understand and remember everything, so we must take precautions like, uhm, taking notes, or drawing diagrams, or simply asking for help. We’re not super-humans, we’re just plain old, boring instances of homo sapiens sapiens. Exactly like everyone else on the planet. And we only have two hands.

Funnily enough, it turns out that being a good developer requires the same skills as doing any other job.


Posted

in

by