During my research into the early days of computing, I made the obligatory mention of John Backus and his gang.
What fascinated me most though, was they:
- were a diverse team, all the way back in 1954;
- were operating in uncharted territory;
- structured their work according to common sense working without much rules, other then knowing what the final goal of the project was;
Their way of organizing themselves was not only great fun but much more “Agile” than how teams only 5 years ago worked!
Lois Haibt, the only female member on Backus’s team noted:
“It was the kind of atmosphere where if you couldn’t see what was wrong with your program, you would just turn to the next person. No one worried about seeming stupid or possessive of his or her code. We were all just learning together.”
It seems that agile ideas such as pair programming, lack of code ownership are neither new nor revolutionary. Had we only forgotten about them? At what point did we decide to isolate developers in cubicles or tie their salary to the lines of code produced?
What Backus and his team (instinctively) knew about the software development processes was much closer to the agile methodology than how teams worked for the next 40-50 years!
As processes mature, do we make them artificially bloated and less fun? Even Agile as explained today seems weighted down by all the rules that crept up over time. Listening to some of the self-serving drivel of many Agile coaches makes me wonder if we’re maybe overdoing it?
Here is an excellent video from Fred George. His ideas may seem a little radical. (Often by those who profit from only talking about Agile, and feel threatened by these suggestions):
Agile development should be an effort to reclaim our child-like creativity and improve productivity by removing as many constraints as possible. Simplify, simplify simplify – to a point where we no longer need an agile coach to tell us what was common sense in the first place!
To be fair to agile coaches: Old and complex engineering giants with deep politics can only reinvent themselves by having an outsider show exactly where it is they must simplify! Such a person would need to be influential! E.g. a management consultant who understands Agile methods and software development processes. A person who has enough political clout to punch through internal silos and ensure every link in the chain understands that Agile doesn’t stop inside R&D! Otherwise the outcome and final result will only be agile in the name!
What are your thoughts?
Written by Joachim Bauernberger.