I've often heard Agilists referred to as Evangelists, and it's always rankled with me. Lately I've been wondering why that is, and this is what I came up with.
It's hard to talk about Evangelism without touching on religion, which is often an emotive subject. Nothing in this post is intended to offend anyone's beliefs of any kind, but rather based on bare facts as recorded in history. If I have managed to offend you, I apologise, it was not my intent.
Lets study evangelism. I've looked it up from several sources and what I understand it to mean is:
Evangelism: the act of spreading the word about a religion (usually but not always Christianity) with a view to converting people from other religions.
So in other words, Agile Evangelists are seen as people who are trying to move other people from their old beliefs into the 'new' religion of 'Agile'.
Why would I object to that? Let me count the ways:
1) Religions by definition are based on faith in a set of beliefs which cannot be otherwise proven scientifically or empirically. Agile is a set of practices and patterns which have an empirical basis. We can prove our beliefs using scientific method to show they do work, and how they work. For example, if we are talking about the agile practice of 'Limiting WIP' I can use games to show you how it works, then show you the maths to prove why it works.
2) Evangelism is a religious word implying we are somehow religious fanatics challenging people's existing beliefs. I've never yet seen someone fight to convert people to agile. If we try, then in effect all we manage to do is to polarise the beliefs of the person we are trying to convoke, and make it harder for them to understand.
3) We are coming in straight at the belief barrier. I would suggest you go read / listen / tweet / converse with Benjamin Mitchell about 'double loop learning' and 'the ladder of inference'. Even if you don't, it's simple for us all to understand that if we say "The thing you believe in is wrong, this however, is the right belief" that you are going to have a lot of work on your hands to convert someone.
4) We are assuming that Agile is the only game in town that works. That is clearly wrong or the IT business would have died a long time ago. Waterfall can work. Agile can fail. I would suggest that if you look into it, the projects with the best implementation of the chosen Methodology or framework are the ones most likely to succeed, and the ones with poor implementations are the ones most likely to fail.That said, emergence and dumb luck are also factors.
I would say that having run projects both ways, a good agile implementation is better suited to emergence than a waterfall one, and therefore less likely to fail, but I honestly believe that a good waterfall implementation has less chance of failure than a bad agile implementation. I don't have the data to back that statement up and it would take a piece of work to long for me to undertake to go through enough suitable case studies to back that up.
I also think it's important we talk in terms of failure rather than success in that statement, just because something succeeds, it doesn't mean that thing was less likely to fail along the way. Just occasionally a lower league team wins the FA Cup. It's far more likely that one of the big premiership teams would win, but just occasionally it happens anyway.
What's the alternative to Evangelism?
As an astronomer I am led to think of Galileo Galilei. He was the guy who made the case for Heliocentrism, which isn't quite as catchy as Agile as a title, but is the astronomical model with the Sun at the centre of the solar system, and was far more contentious at the time. We know this to be true today, and we'd probably mock people who believed in the old models like Ptolemaic system where the planets and sun orbited the earth.
Galileo didn't come up with the idea for Heliocentrism, far from it, it was proposed thousands of years earlier, but no-one could prove it one way or another. Even a hundred years before Galileo, Copernicus presented a heliocentric system, but again couldn't prove it.
Galileo got the data. Galileo improved telescope design and was able to observe the moons of Jupiter and Saturn, and crucially record their phases. To this day, the four largest moons of jupiter are referred to as the Galilean moons, and can be seen with a standard pair of 10x50 binoculars on a clear night.
Why does this matter? He used scientific method. Tycho, Copernicus et al were correct in their hypothesis, but couldn't devise an experiment that could be run at the time to prove or disprove the hypothesis.
Scientific method is to: a) have a hypothesis or idea; b) devise a set of experiments to test the hypothesis; c) run the experiments and gather empirical data to show the validity of the hypothesis; d) accept the results which ever way they go.
Galileo had the equipment to prove the Ptolemaic model was wrong, and that heliocentric models were correct, so he ran them and published his results.
Hang on a minute wasn't Galileo vilified?
Yes he was. He had the facts that showed the truth in what he said, BUT he was going head on with the core beliefs of the current Pope. The inquisition was sent round, and he was instructed to recant or be excommunicated. He was subject to a papal decree that he was not to teach Heliocentrism again.
He took on the accepted general beliefs with real data, and still didn't win. In modern parlance, he built it, but they did NOT come. We need to learn from this too. Proof is not enough! In a recent engagement the CIO told me, "Don't tell me about Pairing. I've seen all the 'proofs' and the 'data', I just don't believe it's more efficient to waste time having 2 guys doing one guy's job." Proof didn't counter his beliefs, and he told me that all agilists are evangelists! Thinking back, that is probably the origin of this blog post…
What should we do instead.
Get the data, and talk from a position where we are dealing in scientifically proven facts. It's really important that you don't only believe what you are saying, but that you can prove it. Even then, it takes more than proof is not enough. People put a lot of time and effort into their beliefs, and often don't want to hear that they might be wrong.
Remember who you are talking to, and ask yourself how they got there. If you're talking to a senior programme manager or higher, the chances are they were a good project manager in the past using PMP, Prince or something similar, and ran successful projects. They already know what works, they did it to get where they are. Telling them waterfall doesn't work is not only factually wrong, it is something they intrinsically know to be wrong because it was what they did themselves. You just threw away all of your credibility. Do not pass go, do not collect £200.
How do we convince them? We talk about common outcomes. Work with them about trying to get to a common place where we can do things better. Don't take them on head on, even with the truth on your side. Being right didn't help Galileo much at the time, did it? I've never heard about a project that didn't want early and frequent delivery, the ability to change quickly as needs change without wasting project money on the things you will never build. They are talking to you because they know something is up, so help them understand how things can be better and have more chance of success.
Always make it clear when we are talking about our beliefs rather than something we can prove. We need to be honest and open if we want to gain trust. And if you can't prove it, ask yourself why you can't, and either get the data to back yourself up, or consider stopping saying it. Remember what I said about a good waterfall implementation being less likely to fail than a bad agile one… well I never said this stuff was easy did I?
Come on people let's stop evangelising and start educating!