Agile
Too Much Planning spoils the project!

What I hear you cry, no way. Well, dear person reading this it’s true. I remember a project, massive it was, the biggest project in project big land. Over 50 testers, 150 programmers and 30 Managers. It was planned to the nth degree. However, what the people didn’t realise are the things that they didn’t know they didn’t know and that made the project go on longer. Also by the time they finished that customer was so pissed off they went with another firm. What did that firm do, dear reader, well they hired the employees of the firm that had lost the contract in the first place? So happy employees and pissed off managers, although some of the managers were hired by the new company too. The reason, quite simple as it turns out, they knew the pitfalls, had hit every problem.
So they were able to plan more effectively and accurately the second time around. The first time they had done the project the problems they faced stacked up and up and up, forcing the deadline out to the right, so the project which was planned for five years took twenty. And it was not a case delivery of sometime every 5 years or so they had to wait 18 years before they saw any kind of product. And they hated it! Out of date pile of shit, I remember being the kindest words I remember from those times.
One of the main problems for this mess was cost-plus, the longer it took the more the company got paid to do it. No one was incentivized to take the project by the scruff of the neck and say I own this fucker and we are going to win. Instead, everyone happily came to work did there hours, if there was overtime then they did that as well. Everyone came in and did want they were told and they were happy. Well until the money run out! Then questions got asked Unfortunately the question was who do we sack!
And this its seems dear reader is the first lesson of Agile keep your eyes on the prize.
No point in endless planning, Gant charts, re planing more planning producing papers on outfitting the plans, When happens when something is discovered and you have to try a different way of doing things all those plans are wasted.
Every week or two, ask yourselves or your team, is this the right way to do things, is there a quicker way. Is what we are doing bat shit crazy?
I remember once I was asked to update some policies. Which I did, having to go stay late to do so. Only to find that someone was given the same task. I just assumed that they were doing different policies. But no! The manager, who at the time, shall we say was not firing on all cylinders had asked some else to do it. That person had said no, but they yes they were free to do the policies. So the manager said thank you and left them to it. No co-ordination, I only found out when I went for a friendly pint with the guy about three months later. His response was ‘keep quiet it’s only the workers i.e. you and me that will get in trouble’ So that was that. 3 months of my life I will never get back again. Oh for fuck’s sake!

So dear reader if you don’t want your software project to die then adapt. Throw off the yoke be free. Do thinks differently but make sure that at each step you are thinking about how can I do things quicker. How can I get things in front of the user quicker and verify I’m on the right track?

You know that bit in the Simpsons where the bully goes ‘You have failed. Ha Ha’ Well to me it seems everyone hates failing and see it as a failure. It seems people see it as the stepping stone, next step the wife will divorce me, I will lose my job, become a chronic alcoholic. Everyone hates me, I have no friends, I smell of wee. No? Perhaps I have gone a bit too far, but you get the idea do you not!

Failure is just the next step before success. Don’t be afraid to fail. Embrace it, by showing your product early to the customer, say after a week instead of a year, and they say its shit starts again. Then who cares!
But show the customer after a year and they say the product is shit then you do care. You have wasted a year. Keep testing what you do. Is the product still what the customer wants after one month, two months and 3 months worth of development? Better to found out fast and course correct then keep blindly going for a year and getting upset when the customer goes ‘its shit’. So don’t worry about failing, but do worry about failing slowly.
Remember to fail fast and failure will be your friend, indeed fast failure is merely the stepping stone to success.
