Ship It! LIVEShip It! LIVE
home about services writing contact

We develop, test, and create fine software products, and design creative solutions to your problems.
The development of software is an intrinsically creative process. We are dedicated to improving our mastery of the art.
Links · RSS Feed
Popular Pages

...It would be really nice if, as an industry, we could stop being such a bunch of screwed-up clowns and start living up to our potential. Ship It! is one of the things that could help, if only tho...
-Mike Gunderloy
..."Ship It!" is in the style of the other Pragmatic books and is an easy and focused read. I finished it in two days and have already gained a wealth of insight that I can apply immediately. Hig...
-Anil John
...Much like the Mac, this book “just works”, because it takes the best from lessons learned from team leaders and team players and takes the mystery out of the project management processes as appl...
-Robert Pritchett

Small Code Commits (Apr 22)
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

New England Software Symposium (2008-09-12)
Back in Boston! I'll be speaking on Saturday and Sunday.
Pacific Northwest Software Symposium (2008-09-19)
Back on the west coast. I'll speak (and keynote) on Friday and Saturday in Redmond.
Agile Development Practices (2008-11-10)
Any conference in Orlando is good, but this one is great!
Agile One: Boston (2008-11-18)
The first Agile Experience was a huge success. Tell your manager about this one.


© 2007 Agile Artisans.