I wanted to let everyone know that we'll be giving away a free pass to Research Triangle Software Symposium. The very popular No Fluff Just Stuff traveling software conference will be in your backyard if you're in North Carolina.
It's primarily a Java conference, but we've got a strong Agile track as well. And there are classes in other topics, like Scala, Technical Debt and more.
I'm a bit biased... I'm one of the speakers. :) But I really like the conference and the people it draws. It's a great chance to get a quick introduction to a broad collection of topics and network with a great national and local crowd.
And if you don't win the free pass, you could always try writing a haiku about Atlassian. :)
Last weekend I spoke at the Great Lakes Software Symposium in Chicago and an audience member verbalized a great tip about driving the team towards small code commits.
When you want a team a to add one feature or fix one bug, you use tools like continuous integration to train yourself (and your team) to check in a single feature. But how big are those features? If you've got features lasting weeks or months, then adding a single feature is a huge amount of code.
The key to small code commits is small estimates.
My definition of small is between half a day and a week's worth of work. Anything longer than a week probably has a surprise or two hiding in it. You haven't decomposed that feature down far enough and when you encounter this hidden surprise it might blow up in your face. Anything shorter than half a day is too small. And you can't do anything in half a day anyway... try it sometime and see the interruptions appear from out of thin air.
It's simply easier to estimate smaller chunks of work. It also minimizes the code collisions between you and other developers. It makes your integration tests more effective as well. If your integration test covers 150 classes, you need to use small code commits and continuous integration to isolate what code was broken.
So where are you? Still working on figuring out how to estimate? Start with small units of work and be sure to look back and see how you're performing over time. Fast feedback leads to fast fixes. Be sure to work in smaller amounts of work, commit often, and look back over what you've done as often as possible, whether it's your continuous integration system providing the feedback or the estimate errors.
But remember....
Smaller estimates lead to smaller code changes.
Category: Agile
(Apr 17)
Agile ITX will be in DC this June.
I was fortunate enough to be involved with the organization of this conference and I think it'll be a great one. The speaker list is out of this world.
The topics were selected to help both the developer and their managers. I'm constantly hearing from managers who just don't know how to manage or introduce Agile practices. In addition, we selected topics that hit the entire software development life cycle, not just the execution phase.
We're featuring three awesome books as a part of the conference. One of my favorites, Ship It! as well as Release It! and Manage It! Every attendee will get a copy of all three books.
Category: Agile
(Feb 25)
Clarke Ching has conducted email interviews of a number of personalities in the agile space and he's publishing them a few at a time. So far he's got interviews from Johanna Rothman, Jim Shore, Shane Warden, and me.
My page is here.
Enjoy!
Category: Agile
(Feb 11)
Richard Sharpe interviewed a number of people (including Neal Ford, Andy Glover, the Poppendiecks, J.B. Rainsberger, James Shore, and myself) to see what everyone thought of McCabe's Cyclomatic Complexity.
Everyone thought it was useful, but for different things, and in different ways. I found it interesting to hear different points of view.
Video: McCabe Cyclomatic Complexity
Enjoy!
Category: Agile
(Feb 7)
I often get email or questions about what is "Agile" and how do I start to understand it? This is the standard email I send back with a collection of links that have some good information on the topic.
The start of Agile
The Agile Manifesto
An overview of the many Agile flavors
The New Methodology by Martin Fowler
XP and Scrum are the most popular flavors of Agile, so here are a few links specific to them.
A comparison of XP to Agile by Bob Martin.
An intro to XP
Scrum info on Wikipedia.
These days most shops I encounter put together their own process by picking and choosing practices from various methodologies. Technically that's a hybrid Agile approach. The danger there is that you never try a practice that you don't think will fit and you miss out on a real gem that you never understood. The benefit is a set of practices that nicely fit your shop and team. That's the approach we took in Ship It!.
Whatever flavor of Agile/agile you latch onto, don't be religious about it. Be religious about your religion, not your software process choices. Be open to change and adaptation. Be willing to let someone else work differently than you.
Category: Agile
(Feb 5)
Just a quick reminder that Ken Pugh is coming to AgileRTP tonight. He'll be speaking on Business Value and Agile Requirements. If you're having trouble selling Agile processes to your management, you should give this topic some attention.
Business Value and Agile Requirements by Ken Pugh
This talk focuses on three questions. What is business value? How do we measure it? And what do we do with it? Along the way, we'll look at how business value relates to effort as measured in story points. And we'll examine what estimates really are.
In you're in the Research Triangle Park area of North Carolina, come visit us and hear a great talk!
Category: Agile
(Jan 31)
I recently heard a great story about a software team getting frustrated with Cruise Control. Apparently that piece-of-junk software actually complains if you check in code that won't compile! Worse yet, it lets everyone see who checked in the bad code.
The team's solution? They wanted to turn off Cruise Control. Another developer removed his email address from the system.
David Bock's reply? Don't turn off the fire alarm. Deal with the fire.
Classic.
Category: Agile
(Dec 10)
Richard Sharpe got a few quick interviews from a number of speakers at the conference last week. He's pulled the various interviews together and has posted the first one today. He spoke with myself, Ken Pugh, Jean Tabaka, the Poppendeicks, J.B. Raisberger, Alan Shalloway, and more.
Video: Agile Development Practices 2007
Enjoy!
Category: Agile
(Dec 4)
Tuesday the 5th Megan Sumrell will be speaking at Agile RTP about Agile testing methods. If you're in RTP, NC, you should consider coming out to hear it. She's an excellent speaker who's working in a strong Agile shop. There'll be lessons for both developers and testers tonight.
An Overview of Agile Testing
Do you work on a team that has trouble keeping up to date? Do you spend too much time in the debuger? Too many evenings and weekends fixing bugs? Do issues keep coming back? If so, you're probably missing some of the huge benefits that a great testing strategy can provide. Come out and hear Megan present a tester's point of view on Agile testing and pick up some strategies for your own shop.
I hate to miss this one but I'll be in Orlando speaking at the Agile Development Practices Conference.
Busy week!
Category: Agile