Monday, November 2, 2009

The little stuff

I'm taking an opportunity to try to clean up some little stuff in Derby.

Over the last few years, the Derby open bug list has grown, as the community has been doing a great job of paying attention to problems that are found, but has been concentrating on the important problems first.

This triage of problems is necessary, and it is good to fix the important problems first, but after a while the smaller problems build up, and obscure the view, and it can be hard to distinguish between the big problems and the little ones.

So I'm spending some time just trying to clean up the little stuff, looking for simple, well-understood minor issues that I can go in and resolve.

There are so many open issues (1000+) that I can't possibly make a serious dent, but if I can do my part to move some of the minor issues out of the way, hopefully it will be easier for the community to find and focus on the big problems.

I'm doing a similar process at work. I've recently taken over maintenance duties for several large and complex libraries of code, and before I add any new functionality, I'm trying to work as hard as I can at resolving the existing bugs, making the existing test suites run reliably, and so forth.

An approach similar to this is what is known as the "broken windows" theory, which says that if you have a crime-plagued community, a useful way to start turning things around is just to fix the simple things that can be fixed, which demonstrates that you care about the situation. The theory says that the first step toward fixing things is to care about them, and that will in turn lead to improved behaviors and improved results.

In the software engineering world, the analogy is quite reasonable, I think: fixing bugs, improving the documentation, working on the test suites, etc. are all part of fixing the broken windows, and showing that you care about the software.

No comments:

Post a Comment