Fangs made his name as the chief, multi-instance component of the Extreme Programming “circle of snakes”, discussed on-line (back in 2001), and in Extreme Programming Refactored. The idea was that the XP practices are like a ring of poisonous snakes daisy-chained together: e.g. the practice of not exploring the requirements up-front (relying instead on one-line user stories) is kept in check by a permanent on-site customer, who expands on the requirements when cornered for more details by programmers (who hunt in pairs); and so on. All it takes is for one of the practices to slip, and a snake wriggles loose. Then you’ve got an angry serpent heading your way…
In XPR we talked about how to “defang” each snake, or risky practice, to ultimately produce a version of XP that’s more rigorous while still retaining the core agile values.
But after his 20 minutes of infamy, what’s Fangs been up to since?
You must have had some fun scaring basement-dwelling programmers by leaping out at them from under their desks when their XP practices started to slip. Deep down, did you really enjoy it?
Fangs: You know, I’d really like to say no, my conscience gnawed at me like a bulimic supermodel at breakfast time. But really, there was some satisfaction to be had from seeing the practices slip, deadlines whoosh by, while coders blithely told their managers that the schedule is the customer’s problem. I mean, what do you expect? I’m a serpent.
Are you still in gainful employment?
Times are tough, I’ll say that. XP projects are few and far between these days, but they’ve been replaced by “agile”, an altogether slipperier beast. And let’s face it, agile is everywhere now… mainly because it isn’t easily defined, so anyone can choose a single practice and say that they’re being agile. It’s difficult to make a circle out of one snake. It’s terrible for my backache… and I’m not as limber as I used to be.
It’s those single surviving practices that I find fascinating.
Yes, some practices wriggled free of XP and have even become quite respectable. TDD, of course, is a pretty major one, and in many ways that’s got a circle of snakes all of its own. Then there’s user stories, which are being used more and more as a form of high-level requirements. Here’s a user story of my own: “As a salivating serpent, I want to wriggle around provocatively licking my fangs while cube-farm coders run screaming for the safety of the snack table.”
I dread to ask, but have any other XP practices escaped into the wild?
The so-called planning game has been warped and adapted in many companies. People no longer talk about gummi bears when they’re tracking project velocity, but they do estimate in terms of effort and complexity rather than time. They should try estimating me, I’m a complex beast with neuroses and misbegotten aspirations to fill several volumes of ectothermic amniote pop-psychology.
But aren’t these the stand-alone practices that could wreak havoc if one wriggles loose – and now they’re being applied individually?
Ssssscary, huh? Seriously though, what’s happening is that they are being applied selectively. The post-modern agile crowd appears to be savvier, more choosy than the original XP disciples who would strike down from upon high any who dared to voice dissent from the teachings of Beck. These days, projects are being tailored, with one practice added in at a time, rather than the original XP doctrine which was to apply everything and then, if you want to tailor the process by untying a snake, well.. good luck!