I presented a session at today’s Wellington Agile BarCamp.  The session was called “Crystal Clear: Big Lessons from a Little Process“.  Instead of describing all the details of the process, I outlined four of the most important lessons I have learned from it. Here are some brief notes on the presentation.… Read More


Regular feedback is a key element of agile development.  Rapid feedback improves our software.  I suggest it also improves us, the people who write the software. I’ve just read a fascinating article on where talent comes from, over on Freakonomics.com.  It outlines research into the key factors that develop talent.  The key factors are: “setting… Read More


Steve Yegge points out that it’s very hard to do a valid scientific experiment in software development: “You can’t have the same team do the same project twice; a bunch of stuff changes the second time around. You can’t have 2 teams do the same project; it’s too hard to control all the variables, and… Read More


Principled Negotiation also applies to defining your software development process.  You can’t choose Agile just because you like it.  You have to understand what your customers’ interests are, and you have to seek a process which meets their interests and yours. For instance: if the customer says they want a detailed Gantt chart, that’s a… Read More


Agile development is hard to define, because most people define it by giving examples. For instance they give a specific description of Extreme Programming (XP), instead of defining of agile development in general. We’ve ended up with a widespread misconception that agility is about XP techniques like Pair Programming and Test-Driven Development (TDD).… Read More


Crystal Clear is a methodology that summarises 10 years of research into successful software teams.  Which things really matter?  Which things most influence the project outcome?… Read More


David Anderson presents three facets of agility: The “toolbox” of iterative development techniques The belief that people are more significant than process Trust David points out that trust underlies the greater efficiency of agile approaches. Lean Software Development also emphasises trust. It is easy to fall into the trap of seeing trust as a prerequisite… Read More


Agile development can look a bit crazy, at first. I’m writing this guide to explain the foundations of agility, outline its benefits, and show why it’s not so crazy after all.… Read More


Alistair Cockburn points out that traditional processes are based on an assumption that people will successfully accomplish things that they normally struggle with. In particular, it is assumed that people will change their habits to follow detailed new instructions.  Unfortunately, humans aren’t very good at that!  Old habits die hard and, unlike the computers we… Read More