Don't forget the basics: opening keynote of the Michigan Agile and Beyond conference
The Michigan Agile and Beyond Conference brought 450 people together this weekend in Dearborn, Michigan to teach, learn and debate the broad subject of agile software development. The “beyond” part of the theme bothered me a little, for the same reason that it irritates me when I hear companies explaining that they do “practical agile”. Both statements miss the point that agile is about nothing more than delivering valuable software frequently and regularly. What can be more practical than that? Why do we need to move “beyond” that?
Ron Jeffries & Chet Hendrickson offered the best advice I heard all day in their opening keynote. Namely, to go beyond, you must travel through. Their point was that if you’re not in the “agile space” now, successfully using the core practices, then get there before you start tinkering or adapting. It reminded me of the debate in the early 2000s of whether you had to use all (then) 13 practices of XP to claim you were doing XP. Someone (might even have been Ron) responded that you’re doing XP when you’ve mastered all 13 practices and figured out which ones you need and how to use them on your project.
Chet cut straight to the chase when he said it matters what you do, because “agile isn’t any damn thing.” Ron followed that by quoting Emerson Codd: “The truth isn’t like a bunch of puppies running around where you chose your favorite.” Their talk was as casual, funny, and inspiring as always. They shared some of the simple truths about software development:
- Software development is all about people (Funny Ron quote: “When I got into computing, it was not with the intention of hanging out with other people.”) Tools can’t replace or compensate for people.
- Requirements need to get into the heads of the people building the software. Documents are a poor way of doing this.
- If you can’t ship working software every month, try two weeks. If you can’t do it in two weeks, try one week. You learn to build software by building and shipping working software.
- Waterfall doesn’t give you accurate information until it’s too late.
- If your software isn’t bug free, you can’t trust your velocity.
- If you’re manually testing everything your need for testers grows at least linearly with the number of iterations. You’ve got to automate some of those tests.
- If you can’t refactor, you can’t do evolutionary design.
They summarized by identifying the three non-negotiable core practices to being agile:
- Ship software regularly
- Test as you go
- Refactor to evolve the design
While their message, at least to me, was fundamentally one of “don’t forget the basics”, Chet and Ron also addressed the “beyond” part of the conference. They cited relationship to management, human resources, and dealing with projects that don’t fit in a single room as challenges that are still beyond the scope of accepted agile thinking. Ron called out Pillar Technology and Atomic Object as examples of companies pushing the boundaries of agile. They also reminded us that we have an obligation to share our experiments, both our failures and successes, to grow the body of agile knowledge. Chet added that these experiments push agile into new territory, but are still grounded in the simple statements of the Agile Manifesto.


Marvin Toll Says:
March 15th, 2010 at 09:17 PMhmmm … What I learned About ‘Beyond’ on Saturday First, some context.
One of the ‘motivators’ for the Conference was the pace of adoption in our region … and the belief that if one continues to do the same things for the next 5 – 10 years that we have been done for the past 15 … we should expect a similar outcome. If you are OK with the fact that the largest Corporations in our region have not embraced ‘Agile’ then our discussion ends.
However, I asked of myself and others – what can we do in the ‘Agile’ space “Beyond” what is already occurring? A possible answer that I’m willing to invest 90 days exploring is something like the following “What if?”.
What if we took a regional perspective toward ‘Agile’ instead of merely an individual, project team and company perspective? What if we moved “Beyond” the notion that every Company in the Region should develop an assessment process to qualify applicants technically? What if we considered a (logical) regional talent pool instead of each Company sustaining its own? What if we rejected the pattern that Architecture, ‘Building Blocks’ (for application assembly), and Value Propositions should be created (and recreated) again and again. What if we collaboratively embraced a transferable set of Regional Practices and ‘Implementation Patterns’?
‘Agile’ can not be just doing the same damned thing over and over again and hoping for a different outcome for our region.
Nayan Hajratwala Says:
March 16th, 2010 at 09:19 AMI agree that we can’t “do the same things for the next 5-10 years that we have done for the past 15”. The problem with the Michigan region is that aside from a very few companies (Gale being at the top of that list), basic agile practices have not been attempted in good faith. In my experience, Michigan companies have been great at making excuses: “our environment is too complicated”, “our challenges are too unique”, etc.
There needs to be more collective effort put into getting the basics down, and then all the “beyond” innovation will follow.
Nayan Hajratwala Says:
March 16th, 2010 at 09:22 AMAlso—i forgot to say, Marvin, it seems like you have a lot of interesting ideas, but my brain can’t seem to understand what you specifically mean, so i’d be interested in hearing more details. See you tomorrow night!
Carl Erickson Says:
March 16th, 2010 at 12:00 PMNayan, I agree with your observations, but I wonder if it’s special to Michigan or not. It would be interesting to see data on agile practice adoption by region.
Marvin Toll Says:
March 16th, 2010 at 05:14 PMInteresting … how does our region stack-up? I’ve been told that Michigan companies not finding the talent wanted are recruiting on the East Coast … maybe that warrants a bit more investigation … Which cities? Which areas? If some regions are adopting more quickly – why?
Marvin Toll Says:
March 16th, 2010 at 05:19 PMBy way … the March MAE meeting has been moved to April to discuss our shared Regional Challenge. ( http://agileenthusiasts.ning.com/events/april-meeting-the-conversation )