NOTE: Links to session videos should be added within the next 24 hours once Agile Journal makes them available.
It's been an excellent day at the 2010 Agile Connect virtual conference. The speakers for the two morning presentations, Tim Lister and Robert C. Martin, were both superb. The passion that these gentlemen have for professional software development practically bursts through your screen.
Mr. Lister was particularly entertaining and engaging during his talk, so if you ever see his name come up as a presenter at a future conference, make sure you add his session to your agenda.
A great takeaway from Robert Martin's presentation, "Are You a Development Professional?", was his request that everyone in the audience make sure that the next book they read would be MIT's influential "Structure and Interpretation of Computer Programs" (check out the full text for FREE, direct from MIT). He's right. This is an absolute must-read for every software development professional, including those of us who've been writing code for years.
On a related note, MIT is very generous with the materials associated with this course, from the full text of the book to actual MIT classroom lecture videos. This Google Search results page should give you an excellent jumping off point for finding more information.
The second half of the day saw sessions that focused less on programming, and more on life-cycle, project management, and process adoption. Good stuff, but not the blood-stirring talks of the morning for the hardcore coders among us.
Jeffrey Hammond from Forrester Research discussed the changing face of Agile-based Application Life-cycle Management, and how modern tools for Agile ALM are helping to bring about the reality of a results-oriented work environment. I was gratified to see Rally Software recognized as one of the strongest Agile ALM solution providers in Forrester's May 2010 Wave on Agile Development Management Tools. Go Rally!
Aside from my Rally Software Fanboy itch being scratched, a nice takeaway from this session was the idea that Agile best practices can live with other methodologies. Heck, sometimes it's just got to be that way.
It's easy for those of us who are passionate about Agile to want the rest of the world to join us for some planning poker and sign off on 2 week iterations. Unfortunately, not everybody wants to (or can) go Agile. Coming up with a hybrid ALM solution that can be adapted to the skills and abilities of the team at hand is going to be more likely to yield success than shoehorning teams into solutions simply for the sake of "going Agile".
In the day's penultimate session, Dan Rawsthorne gave a step-by-step walkthrough for building and monitoring an Agile release plan. For software project managers who already have some experience with Agile planning and monitoring, but want to solidify their understanding of Agile methods and practices, this session is extremely valuable. Dan covers things at a furious pace, so make sure you have enough time to view the session and slides twice.
Note that Dan's session is NOT tailored to someone who's an Agile newbie. You'll get the most out of this session if you already understand (and have used) key Agile concepts like User Stories, Story Points, Use Cases, Iterations, Burndowns / Burnups, etc. If you are brand new to Agile, you can get a quick introduction to these concepts by checking out Agile Development and SCRUM on Wikipedia. Once you've got the basics, check out some of the Agile Development videos / webinars from VersionOne and Mountain Goat Software to help round things out.
Finally, Michael DePaoli closed the day with a presentation on introducing and scaling Agile development within an organization (i.e. "Agile Transformation"). This presentation is perfect for business decision makers who are currently thinking about making an Agile Transformation, but currently lack a roadmap for doing so.
Michael's session had the highest-level content of the day, but knowing Agile / Scrum basics is still a requirement if you want to get the most out of his talk. One interesting note: Michael presents an organization's adoption of Agile as an Agile project itself. In his example, Agile is introduced over a series of Releases, with each release building on the successful implementation of the previous one. Sound familiar?
Another great point is that organizations making an Agile Transformation should focus on process, then organization, then tools. Too often people download or subscribe to an Agile ALM software suite, and think that they will suddenly start absorbing Agile development practices by osmosis. I've never seen it happen like that, and it was instructive that the guy working for a company that makes Agile tools has not seen it work that way either.
A final note: Make sure to stay through to the end of this session, as Michael discusses what motivates knowledge workers (approximately 40 minutes in). I'm a firm believer in trying to understand what motivates people, so Michael's take on developer psychology was a welcome addition to an already interesting presentation.
All in all, day one of Agile Connect 2010 was well worth the time. Can't wait to see what tomorrow's sessions bring.