Are Programmers Idiots?
I have just watched a video explanation of an approach to development called “agile programming”.
I am not going to explain it, because it’s bunch of painfully obvious things that were just given cool names plus stickers plus a blackboard.
It’s things like: “you need to know what the customer wants before you create a program for him, so maybe you should go and ask him what he wants the program for”. This is called “user story” now.
In my little world the process of getting a “user story” is called “conversation”. And to get a story you require some imagination, empathy and a bit of common sense.
Or there is this “scrum” thing. What is the “scrum”? It’s the new, ingenious idea of building stuff for people, based on a discovery that customers change their minds. That shockingly brilliant observation leads to a concept that when you build something big for someone who is not sure what he really wants, you should not build it all at once. You’re better off if you divide it into small chunks and show it to him every now and then. So you can keep changing things, and not get lost in the process.
Well, it’s a good idea. But why is it told as if it was the invention of the century? And why those ridiculous names for every simple concept, why the “secret knowledge” aura about pretty obvious things for anybody with a minimal work experience in real life?
So did I miss something? When did everybody suddenly become an idiot?
Are we going to see a birth of SDM soon? SDM — the “Sitting Development Model”, a new brilliant productivity concept that the programmers work faster when they sit on chairs rather than stand by the wall. Wow, SDM, there is a new trend in development, let’s all up and do it!
Do we all need rules and instructions for everything now? Are we going to calculate when and for how long should we go to the toilet while programming?
The guy who advertised “agile programming” on YouTube used an example project. Answering all the questions from an audience was the project. A nice, simple project, every speaker’s every day project. I do it few times a week. But this time he showed how to do it in “agile” way.
It took him 30 minutes to answer the first question.
Well of course it did, as he had to prepare the blackboard, the stickers, the pen, explain the concept, explain the rules, get all the questions one by one, write them all down on stickers, stick them all in proper place and so on.
It’s not that agile programming is a wrong way. On the contrary, the concept is good, very useful and usually works great.
Only I do it all in my brain.
Why? Because it’s so easy, that’s why! Here’s a revelation for you: you don’t need an army of stickers, you have a brain! Train it. Use it. Why don’t you depend on it a little bit more?
My method is Efficiency Method, which is: do the things as good as you can, as fast as you can. If they don’t like it, show them the results. It will shut anybody up.
Which in this case means: drop the stickers, and just answer the bloody questions. I would take 15 minutes instead of 60!
Or is your own brain less useful than a blackboard?
Maybe it is. But when did that all happen? How did that change so fast? Is it because Steve Jobs is dead? Is it because Mark Zuckerberg is not?
I’m asking myself: has my head got suddenly bigger or has every programmer turn an idiot, a programming machine with no will and imagination, that has to be directed and instructed? The simplest, common sense ideas need to be explained now in details and turned into sets of declarations and instruction.
Are we programming programmers now? Are we all failing Turing test?
The most ridiculous concept I have found so far is something called “Mob Programming”. I’m not even sure it is a serious idea and not an elaborate joke.
It’s supposed to work like this: you take 6 guys and give them 1 keyboard. And tell them to write a code. Than you set a timer, so they can switch places.
So now, instead of 6 pieces of code, you have 1 piece of code for the same money. But what a piece of code it is! It’s our common code, it’s our baby! We all wrote it. And how good it felt, no stress, no personal responsibility! And we all equally well informed, we all witnessed the code happen.
Unless you fell asleep waiting for your turn.
I guess it should be called “Communism in Programming”.
So, take 30 programmers and make them as effective as 1. It’s a good job. Once a month you have a chance to actually work!
Goodness gracious, how much money do these people have to introduce ideas like this?
If that’s the way things work these days, I must look like a superhuman by comparison. I suddenly became more effective then a company of 10 programmers, who are Mob Programming in Agile way with additional 1 day a week spent on education, 1 on relaxation and 1 on weekly meetings.
And me? I just work. 5 days a week. And my method? There is no method. There is no need for method. I have a brain, skills, knowledge and experience. I have myself.
Yes, I am a barbaric simpleton.
So don’t listen to me. Remember: I’m completely unprofessional!
Besides, who says that professional has to be efficient? Not me, that’s for sure.