blog.onlysimpler.com

A blog... only simpler.

Watch your ABCs - 31 July 2007

Through a process that can only be described as blatant generalisation, I've reached the following conclusion...

There is a direct correlation between bad spellers and bad developers (or is it the other way around?).

It seems that wherever I go I come across code that's riddled with spelling mistakes and typos. I'm not talking about comments (that would be bearable), I'm talking about important stuff - class names, methods, variables, config files etc.

Now I know what you're thinking. "Get over Shane, you whining bastard, what's the big deal about a typo". Well if you just calm down for a minute, I'll tell you what's wrong with them.

First of all, they waste people's time. The other day I spent about 10 minutes chasing down a problem that was all due to a stupid typo. Someone had mistyped the name of a class so it was almost what you'd expect it to be, but not quite. Instead of "LogoutController" it was called "LogoutContoller". This meant that a separate config file that was referencing the name of the class didn't quite align with the actual (and incorrect) name and hence the whole thing didn't work.

Sure, it only took 10 minutes to track down the problem. But because of all the fuss, by the time I fixed it I'd completely forgotten what I was originally trying to do. It took another 20 minutes for me to get back into the flow. What could have taken the original developer 30 seconds to fix ended up wasting half an hour of my day.

But the real problem lies deeper than that.

I can forgive the occasional spelling mistake. We're only human and people make mistakes. But some developers have a real knack for it and seem to do it all the time. It's not that they can't spell, or have difficulty typing. It's much simpler and more fundamental than that. Usually it boils down to one of two things - they're either too lazy to fix their own mistakes, or too stupid to notice they've made one. Either way, that's bad.

That's the real issue. If someone is too lazy to fix something as fundamental as a spelling mistake, what hope do you have of them fixing something that's actually important? And if they can't even see a spelling mistake then the chances of them spotting a real problem in the code are slim to none.

The lazy ones know there's a problem, and sometimes, for a brief moment, they even consider fixing it. But instead, they prefer to pretend they didn't see it and move on. As for the stupid ones, well they're even worse.

Bad spelling is a warning sign of two personality traits you really don't want in a developer - laziness and lack of attention to detail. Computers are precise. Code either works or it doesn't, and unfortunately, close enough isn't good enough when it comes to programming. You want to work with developers who get things right, not the ones who almost get things right, but only sometimes, and only if they can be bothered.

My wife says I'm too quick to judge, and perhaps she's right. How can I make such a blatant generalisation based on something so minor. Well, besides the fact this is my blog and I can say whatever I damn well please, there's something else...

The funny thing about generalisations is this - they're generally true.

So I'm sticking to my guns. As far as I'm concerned, bad speller = bad developer.

link