December 24, 2007
Distractions
This should have been the promised post about cargo cult programming, but an unfortunate mix up between my hosters setup and Debian Lenny required a complete re-installation of my site :(
I'm using a virtual server, so the Linux kernel is provided by the hoster - in my case 2.6.9. This kernel doesn't work with the new glibc version - so updating to that version stopped the server dead in its track. So, back to Debian etch it goes. The good side of all this hassle? It allowed me to test the daily backup made of my complete server - which works as advertised. It takes about 24 hours to get the restore done, but it allowed to recover from the screwup made by the update to the new glibc.
So, one weekend was spend to reinstall the server and all the applications on it, and making sure the configuration was as before. After that, I decided to use the Christmas holidays to made the final switch on my home box from Windows to Linux. I have found for nearly all applications a good replacement, except for home banking (getting my card reader for HBCI to work is still requiring some experimental work). But it just takes time to move everything over, so now blogging for some more time...
December 03, 2007
All developers suck
Not only the top 20%, but every single one. Maybe they do not suck at programming, but on something else - documentation, communication skills (I remember some mails from my coworkers) or driving their car. So everybody sucks at most things he or she is doing. Unfortunately, most of us suck at what they do at work.
I know that most of the code I have programmed so far sucks, and there is only a handful of programs I'm proud of (and I started some 15 years ago...). According to Jeff, I should put myself to the alpha programmers. But that doesn't mean I'm good at what I do - just that I'm trying to get better. Thats why I'm sitting on my computer on a Sunday night writing a blog article.
But not everyone sees his profession that way. Many of my colleagues never had a formal education in computer science, some of them had other jobs and got downsized, other never got one in their field. But I think they all have some areas of interest where they really excel - it just happens not to be their job. Maybe its something where you cannot earn money with, meybe they just don't want to have their hobby as their main job.
For companies trying to get their programming jobs done, the best advice could be to try to find these 20% programmers, and to encourage all of the other ones to think about their work. Educating them is one way, or find other incentives for them to get better. The wrong way is to aim low and try to write your software in ways you think that even the worst 10% of your developers can comprehend. Do that, and you will get the worst 10% of software ever written.
(Its interesting - in programming, we accept it as normal that there are bad programmers, and we think we need to live with them. When my car needs fixing, I would not give it to a carpenter, but require someone how knows his work).