For novel ideas about building embedded systems (both hardware and firmware), join the 40,000+ engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. Click here to subscribe.

By Jack Ganssle

The Use of Agile

Published 7/02/2007

Agile 2007 ( is coming to Washington DC in August. This gathering of agile practitioners, lecturers, and other interested parties promises to be an interesting pedagogical opportunity that will incorporate plenty of informal opportunities to network with like-minded developers.

The agile movement found its roots in IT, and has slowly made some inroads into the firmware sector. My observations suggest that, to date, embedded developers use either few of agile's tenants, or cherry-pick a handful best practices into more traditional strategies. It's somewhat rare to find a shop that employs, say, all 12 of eXtreme Programming's (XP) practices.

Some XPers maintain that there is only One True Way to do XP. Others suggest that eXtreme Programming is more a framework that one tunes to a particular environment. Me, I think that some of the approach's ideas should be shouted from the rooftops, praised in pulpits and embraced by all developers. Others are totally batty - or are perhaps only suited for an environment like web development that is practically orthogonal to embedded systems.

But all truly professional developers, even if totally cynical about the agile methods, should be intimately familiar with the precepts. Professionalism implies a deep connection with one's field, and a willingness to learn and use new ideas. Any developer who isn't paying attention to the agile revolution isn't part of the community of software developers.

Agile topics routinely make it into the sessions at the Embedded Systems Conference. Those classes are well-attended, suggesting a lot of interest in this topic from firmware types. Interestingly, I can't think of any classes advocating big-bang design.

Two classes at Agile 2007 will be focused on embedded development.

I talk to folks all the time who express disappointment with a book or a conference. They've learned a few things, gotten some fodder for thought, but had hoped for total enlightenment from the Mount. I figure good ideas are scarce. A book, a discussion, a conference that yields <i>one good idea</i> is irreplaceable. One that produces a single <i>great</i> idea might save weeks or months of work, or might spur a train of thought that results in a new product or a startup.

I haven't been to previous Agile Conferences, but plan to spend some time at this one, hoping to find a neat idea or two, or maybe just to meet some insightful folks that help birth new concepts. In my experience, it's pretty hard to attend any sort of conference and not learn something.

What do you think? What is agile's role in firmware development? Will you go to the conference.

<b>Late update:</b> according to the website, the conference is already sold out.