The Most Pure Way

We should just do and not describe what's doing. This is the best and purest way to do, but it leaves people reinventing, and often reinventing poorly.

The best, and perhaps the only way to learn ExtremeProgramming is to do it. To reason about it, to analyze it, is to lose the essence in the analysis. XP is an "Inner Game": it is a discipline and a set of "rules" that help the practitioner to focus on the doing of software development, and to observe the doing at the same time, improving the process as it goes along.

We have all, XPers and interested readers, endured months of questioning, which has often been quite frustrating on both sides. "You can't mean DoTheSimplestThingThatCouldPossiblyWork, that would lead to dog and cats living together, mass-hysteria." "You can't mean "never comment", that is a common claim of beings lower than slime." And so on.

We do mean those things, and we mean them in a context of doing them. If you are doing UnitTests, you can do ContinuousIntegration; if you are writing clear code you can treat the need for comments as a danger sign. The rules hang together in context, and serve to build good programming reflexes the same way the driving range helps to build good golf fundamentals.

So why do we describe, if it can only be done? We describe so that we will know what we're doing, and so that people can try what we do and help us learn how to do it and how to express it.

We'd rather just show you how to be Extreme ... but we can't be everywhere.

So read it and then try it. Reasoning about it may or may not convince you. But you can only really get XP by doing it. --RonJeffries

cf ExtremeProgrammingStudent


How is this different from anything else? You can only really get Mathematica (or C, or Java, or Smalltalk) by doing it. You can only really get juggling by doing it. You can only get entrepreneurship by doing it. But it is still a good idea to talk about these things.

A good book makes it much easier to learn something. It teaches you facts you need to know and it can give examples and exercises that will move you along the path to understanding. But if you don't practice what it teaches, if you don't try out the exercises yourself, and if you don't work at figuring out why the book doesn't make sense, you'll never learn it. XP is not special in this way.

Learning something new is expensive and risky. People need to be motivated. "Try it and you will see" may be true, but you won't try unless you think it might be right and that the benefit is worth the cost and the risk. One of the tasks of a book that teaches you something is to motivate you to take the leap. Since you can't completely understand the book until after you have leapt, there is always going to be a certain amount of advertising involved, and some people will be convinced and others won't.

-- RalphJohnson

Some things can be learned through reason, like how a helicopter flies. Other things require experience, like how to fly a helicopter. Since the prevailing reason runs counter to XP, one benefits all the more from first hand experience. -- WardCunningham


I would suggest it is better to understand the theory rather than merely having a set of examples. Few things are so poorly conceived that they have had no successes. If we fall back to enumerating my examples versus your examples, then status quo will always come out the winner. If you want someone to abandon something he feels is working, you must give him a rational theory why something else is better. "Try it, you'll like it" is not a convincing argument for "If it ain't broke, don't fix it."


Related:


CategorySuccess


EditText of this page (last edited May 7, 2008) or FindPage with title or text search