Extreme programming - shortsighted by definition
Imagine leading your life with an extreme programming methodology. You would live it in teams (your spouse and you) and live life from month to month. In some circumstances you may even live life week to week. You would decide each month what you wanted that month and if you weren’t going to need it that month you wouldn’t even consider it. Many might think that initially this sounds rather nice. Planning for retirement - who really knows where you’ll be then, you can’t anticipate those requirements - you may even be dead. What a waste of time!
You and your wife decide that you want new clothes, a place in the country and a new car - all this month! And you can do it too! Certainly the loans will be stacked so tha payments balloon out over time - but that’s the future and who knows where you will be then. You both gleefully sign the contracts for the new house and car.
Month two comes around and you decide that the goals for “iteration two” are to fill your new house with furniture. Signing more long term contracts and maxing out a few cards you make it all happen. Luckily you ain’t going to need it now! However you do balance your efforts appropriately. You don’t buy the most expensive furniture because that would go beyond your credit limit - quite impossible.
This strategy goes on for several months and everyone is happy. You both are reviewing each other’s decisions as all good couples do and this “team” effort is going well. You aren’t wasting your time on making spreadsheets or dealing with accounting programs - that’s not living your life - that’s just wasted time! Thank God you aren’t that stupid.
However after seven or eight months things seem to be going wrong. Your “agile” methodology to living life isn’t going well. You and your wife soon find yourself in bankruptcy. You continue to plan month to month and not worry about the future but it just doesn’t seem to be working. You feel you are focusing as well a possible on your monthly goals but each month your starting situation is worse and worse. In the end you both go to jail for not only not paying your bills but also for the extreme method you used to borrow money from potential investors to pay your back bills. The extreme living experiment is ended at this point because of you inability to do appropriate life planning with your new extreme living partner “Big Bill” who also shares your cell. However, you do convince him that his life sentence is long term and dwelling on it is unimportant - he should plan month to month. “Big Bill” is much happier and even though his view of extreme living is unorthodox it still makes him very happy. You try to convince him that he should be extreme living with someone else but he doesn’t really listen. You start to think that maybe planning for the future is not so bad after all.
This story seems far fetched (and it is) but that is the point. Nobody would ever live their life that way. Even though the cost of change seems minor and you can restructure your life on the fly each month; inherently this has problems. Nobody would create a car this way. Nobody would engineer a piece of electronics this way. Or build a house. Or even write a book! The problem is one of change and cohesiveness. The only way to guarantee cohesiveness in the end product is to accept the fact that you may have to rework or rewrite every previous step in order to get to your new goals. And this is never cost effective or practical. Life is of course a combination of up front detailed planning and on the fly changes, as well as periodic replanning. Anyone who tries to develop software using only Extreme methods will find themselves not only constantly rebuilding their wheels, but spending even more time simply spinning them.










