Agility: Hustle, Passion, Resiliency

Jason Calacanis wrote: The older I get the more I realize that business is about three very basic things: Hustle Passion Resiliency You have those things it really doesn’t matter what the idea is… you can change your ideas all day long, in fact evolving is what you’re supposed to do in business. However, you [...]

Ruby on Rails: Experimental XPlanner Port

I’ve been hearing so much about Ruby on Rails lately that I wanted to try it for myself. As an experiment I decided to port the XPlanner planning tool for XP/agile teams. This was only a partial porting effect focused on the core XPlanner functionality. I experienced a few minor challenges at the start of [...]

Code it twice?

Laurent Bossavit asks if developers have seen the following effects when rewriting code from scratch… Rewriting the code takes much less time than the first time around Rewriting the code is a lot easier than the first time around The rewritten code is better factored, more readable than that lost I’ve seen all three of [...]

Review: Extreme Programming Explained : Embrace Change …

Product Image: Extreme Programming Explained : Embrace Change ...
My rating: 5 out of 5

This is the second version of the book that started the Extreme Programming (XP) movement. The first version of the book presented it’s information in the form of “the problem” and “the solution” and many treat that advice almost as software development gospel. This new version places more emphasis on value, principles and a set of practices that are consistent with those value and principles. The practices are presented as a set of beneficial behaviors based on the authors’ experience. They are not intended to be the one and only set of official XP practices. XP is is about committing to delivering value from our software development activities. It not the goal of the book to present a specific and rigid recipe for how we should develop software.

“Practices are situation dependent. If the situation changes, you choose different pratcices to meet those conditions. Your values do not have to change in order to adapt to a new situation. Some new principles may be called [for] when you change domains.” ~ pg. 35

The practices are divided into primary and corollary categories. The primary practices are intended for teams who just getting started with agile or XP development techniques. The corollary practices are generally safer to add after the team has some experience.

I personally feel that the focus on values and principles is important for an agile practitioner or an agile team. It tough situations, effective adaptation will depend on knowing why the XP practices are recommended. This a perspective for advanced practitioners and it concerns many of the XP coaches and other XP authorities. They believe that teams new to agile development, and XP specifically, are not able to properly choose a set of practices until they’ve tried them all for a period of team. In either case, I believe many people will find something beneficial in this book. Beginners have a set of practices to try and experienced teams will get a deeper insight into the rationale for those practices.

I also enjoyed the chapter describing the birth of XP. It describes how the seminal XP team adapted their approach over time without sacrificing their values or violating guiding principles.

Other resources:

C2 Wiki Wars

“Trust – This is at the core of wiki. Trust the people, trust the process, enable trust-building. ~ Anonymous (C2 Wiki)” This lofty principle isn’t working well for the Wiki that started it all, the C2 Wiki. According to the site: “It would appear that trust has now broken down. People are accusing others of [...]