Dilbert on Agile

November 26, 2007 – 3:32 pm

Dilbert on Agile Programming
In today’s IHT cartoons, Dilbert takes a shot at agile development methodology. The usual characters are seated at a conference table. The boss is addressing Dilbert and some other guy.

1st frame, the Boss: “We’re going to try something called Agile Programming”

2nd frame, the Boss : “That means no more planning and no more documentation. Just start writing code and complaining.”

3rd frame, Other Guy : “I’m glad it has a name”.

The Boss :”That was your training”

It’s true that agile programming may seem a bit weird for some people. But Agile methodology is not about not doing important and obviously necessary things like planning and documentation, Agile is about doing these things in a very fast and efficient way.

Documentation does not disappear in an agile project, it is trimmed down as the code is written in such a way that it is self-explanatory.

Planning is of course still required, but it is done with frequent updates and deals with small iterations.

As a web developer and project manager, dealing with many web sites at the same time (sometimes over 15), Agile programming was the only thing that kept me up to speed with my clients deadlines. It also made it possible for me to deliver applications that truly met my clients needs.

Small companies most often do not have the knowledge or resources to define exactly what their needs are in terms of web applications. The best way to deliver what is truly needed is not by writing down extensive specs and having them validated just to find out by the end of the project that “things would have been better if only they had been designed in some other way”.

Many times, new clients or prospects would tell me how they had been working with other companies only to hear that changes to the existing system would be too complex to make or would take too much time or simply were not in the initial specs. That may well be the case for big projects but it is not acceptable when you are developing a web site for a small retailing company or an association.

When clients cannot say what they want precisely and stick to it, Agile is the way to go.

On the other side, taking care of many web sites at the same time is only possible when the code is self explanatory. Long before I had heard of Agile, I was losing a lot of time trying to figure out what some piece of code I had developed before, was supposed to do or, on bigger projects as coding and time went by, trying to remember what was the name of this variable or that function when I needed it. Commenting the code in a coherent and useful way would have taken too much time. The solution was to make the code speak for itself. A basic element of Agile Programming.

Agile software developement is not about “start just writing code and complaining”, it’s about getting rid of some of the unproductive workload and getting closer to the client’s needs.

Agile is about agreing.

Digg!

Post a Comment

  • I am Alexip on Twitter

    • Twitter bis