''[First part of this page is duplicated in AlmostExtremeProgramming.]'' PrettyAdventuresomeProgramming (PAP) is "about as much excitement in programming as you're probably going to want", with "dials up pretty high, 9.3 plus or minus a half". As in (from "AlmostExtremeProgramming") A PrettyAdventuresomeProgrammer says: "Wow! That ExtremeProgramming stuff is neat! We almost do it, too! Let's see ... "Extreme Programming requires: * You do pair programming. * You deliver an increment every three weeks. * You have a user on the team full time. * You have regression unit tests that pass 100% of the time. * You have automated acceptance tests which define the behavior of the system. "As a reward for doing those, * You don't put comments in the code. * You don't write any requirements or design documentation. "Now on this project, we're pretty close... * well, actually a couple of our guys sit in the basement, a couple on the 5th floor, and a couple 2 hours drive from here, so we don't do pair programming, * and actually, we deliver our increments every 4-6 months, * we don't have users anywhere in sight, * and we don't have any unit tests, "'''but at least''' ''we don't have any design documentation, and we don't comment our code much!'' So in a sense, you're right, we're ''almost'' doing ExtremeProgramming!" Those people aren't doing XP,they are doing PAP. PAP is using XP (in name) to legitimize not doing the things one doesn't want to do, without doing the XP practices that protects one from not doing the other things. E.g., changing the code all the time, but not writing unit tests; not writing documentation, but not writing clear code either. Not...(almost anything)... but not sitting close together. etc. -- AlistairCockburn ---- ''Almost'' means the same thing as ''not''. That when a vendor claims his tool is ''almost'' anything, you should interpret it as the exact opposite. -- BillBarnett ---- Before you guys get carried away here, let's consider the case where ''Almost'' actually means ''almost''. XP has been described as "turning all the knobs to 10". What I'm wondering is if it might sometimes make sense to TurnAllTheKnobsToSeven. Before somebody goes off on how that's exactly AlmostExtremeProgramming (where ''Almost'' means ''Not''), let me remind everybody that the industry is chock full of effective development teams that do ''not'' do XP. The fact that the industry is chock full of really crappy development teams too is beside the point. If it's possible to have effective development teams that are not doing XP, this leads me to believe that it's possible to have an effective methodology that is similar to XP even though it's clearly ''not'' XP. This in turn indicates that it might sometimes be useful as I described above to TurnAllTheKnobsToSeven. (Note that this is really a different tangent than discussed here or on AlmostExtremeProgramming, so discussion along these lines probably ought to continue in TurnAllTheKnobsToSeven). -- CurtisBartley ----- Right, Curtis. I am interested in having available a sarcasm-filled derisively delivered phrase to hit people with who use XP as an excuse for sloppy, slap-dash development. I, of all people, think it actually is possible to turn dials to different numbers, but I have no patience with people who slap the XP logo on frankly sloppy development. If anyone can come up with one better than PAP, please describe it. (turn on tonal imagery: "Well, I don't know if that's really Extreme Programming you folks are doing there, but it sure sounds like some Pretty Adventuresome Programming.") -- AlistairCockburn ''Sounds to me like all you're looking for is a PAP smear.'' Ugh, WorstPunEver. ---- ''I am interested in having available a sarcasm-filled derisively delivered phrase to hit people with who use XP as an excuse for sloppy, slap-dash development.'' Alistair, I sympathize with the sentiment right down to the sarcasm, for better or worse. To keep a discipline pure, follow all its rules dogmatically. But, that's how WaterFall went wrong, isn't it? A liberal interpretation of WaterFall is probably wide enough to accommodate XP, whereas the narrow and dogmatic one has become the excuse for preventable failures. In the wrong environment, couldn't XP be as inappropriate as the inappropriate applications of WaterFall you've seen, and when carried off in all its glory, would it not become the new AnAcceptableWayOfFailing? -- WaldenMathews Interesting comparison. I actually am concerned that XP is about to become the new AnAcceptableWayOfFailing because people won't do what it says to do, but do whatever they used to do, and excuse it by calling it XP. Thereby giving a bad name to a whole slew of light practices. Therefore, I want a special moniker to brand them with, to be able to say, "That's not XP; that's PAP." or whatever the most demoralizing nickname we can come up with to denote the really not XP practice set. I hope in this way to protect the value of the XP name and practice set. -- AlistairCockburn If you succeed in this, then it will probably be the first time in history it has ever happened. Although I understand the sentiment, still the logical part of me says this is like catching flies with vinegar. Will calling it PAP cause charlitans to abandon the name XP? Will it cause them to embrace the real XP practices? What exactly is the value that will be protected, and to whom is that a value? I pondered these issues deeply while trying to lead some form of process improvement in my company (any form!), and I do not know the answer. I only know that adherence to pure form did not cause the ideas I was championing to be embraced. -- WaldenMathews ---- This is a delicate subject. I believe strongly that people need to be very judicious about what XP practices they apply and how they apply them. And must monitor the results and tune the practices to their local environment, as described eloquently in the DrivingMetaphor. XP, even if applied "perfectly," is not an infallible set of alchemical steps that transmutes flawed projects into gold. That said, I've been thinking all night about the varying degrees to which people can be foolish about how they are AdoptingXp or any other development approach. :) There are some people who seem to want to adopt XP (or claim it) primarily because it is hip, and it seems to leave them free to do whatever they feel like at any given moment. I think of this as eXtreme Posturing, or eXtreme Playacting. This is of course not what XP is about -- it is more like the daily schedule in a monastery, which prescribes in detail the activities the practitioner should pursue on an hour-by-hour basis. Whether or not teams adopt all the practices or only some, a common risk seems to be overconfidence in the form itself. Alistair describes teams that close their eyes and tell themselves that everything must be OK because they are doing XP and are thus guaranteed salvation. This is like the old story about they guy who sets his cruise control and then gets out of the driver seat to mix himself a drink in the back. "The dealer said I could just set it and forget it!" (In stark contrast to the DrivingMetaphor) This isn't development approach, or lightweight methodology, or anything nearly so rational. This is eXtreme Superstition, or maybe eXtreme Voodoo. -- BillBarnett ---- Cool - I like the term ExtremePosturing, and will try that out for a while, saving PAP for other purposes. My purposes in doing this I already described above. cheers -- Alistair ----- I like PAP a lot, and it certainly addresses a different group than Posturing. PAP reminds me pleasantly of PGP; it also evokes some of AaMilne's capitalised phrases (like Very Small Animal)... -- bb ----- I think we need to consider what's an insult in the Extreme Sports world. Therefore, I propose PoseurProgramming. It conjures up an image of some guy at the mall who falls down an escalator and goes "Whoa, that was EXTREME!" -- NickBensema How about ExtremelyBadProgramming? Just a thought. -- RobHarwood That's a bad (as in not-good) idea, considering the Extreme Sports dialect is one of those which employs BadMeaningGood. -- NickBensema ---- A similar idea is MovieSetXP - taking the 12 practices at face value without understanding how they complement and build on each other. This describes teams, often of inexperienced developers, who are attracted to XP for a variety of reasons along the lines of hype, developer-centricity, etc. These are the same people who believe that XP espouses: "As a reward for doing those, * You don't put comments in the code. * You don't write any requirements or design documentation. -- JackBolles ''Perhaps you mean the same thing as CargoCultSoftwareEngineering?'' ---- Adventuresome programming? Is that like implementing hit-list management software for the mob? ''....and finding your name in the list :-) '' ---- Pretty Adventuresome Programming... Hacking is the word. You tell the teams management they are hacking. You then say they are lying when they claim to be doing XP. Management understands lying. PhilipHaynes ---- See CrystalClearMethodology, AntiPattern, IfYouNameItTheyWillBlameIt, EdgeOfChaos ---- CategoryAdoptingXp