Wednesday, December 30, 2009

Welcome

Welcome to The Faster Software Project, a year-long attempt starting on January 1, 2010 to increase the productivity of a programming team. I'm the CTO of a high-traffic website with a team of about a dozen programmers. We've got a five-year-old codebase that's a challenging mix of first-generation get-it-out-the-door code and shiny new object-oriented encapsulation. We started as a typical fast-paced startup, but as we've grown we've started to feel a little sluggish. Things naturally take longer as a team grows and embraces software development practices that emphasize quality and scalability. But there's a growing, pervasive feeling that things should just be happening faster.

In recent years, the software development world has largely been focused on quality and flexibility. A great leap forward in quality has come from an emphasis on unit testing, test-driven development, peer review, and pair programming. Advances in flexibility have come from the agile software movement. Among both efforts, speed always gets a token nod: it's said that over time, higher quality software produces fewer time-consuming bugs. And agile practices like Scrum yield productivity gains as teams achieve a purported state of divine performance.

But rarely do you hear about concrete research showing gains in productivity. And it's no wonder -- no one has actually figured out how to measure programmer productivity yet.

So our work is cut out for us. But I, and lots of people I talk to, are convinced that something can be done to speed things up. And that's what this year is all about.

No comments:

Post a Comment