Top Linux programmers had been debating whether changes would be grand enough to warrant naming the next version 3.0, but Torvalds called the next version 2.6. These programmers typically don't conduct such debates in person, preferring instead to trade ideas, code and sometimes acerbic remarks on the Linux kernel mailing list. In addition to the feature and code freezes, Torvalds is making other changes that underscore the growing maturity of the Linux development process. In February, he switched the management process for the vast repository of Linux code from a free-wheeling model to the more formal BitKeeper software. Torvalds said he picked BitKeeper because it doesn't rely on a single, central repository. Under BitKeeper, "Every developer has a complete BitKeeper repository, and they're all equal," Torvalds said, an egalitarian structure that dovetails with Torvald's belief that every contributing programmer should be a "first-class citizen". BitKeeper also helps Torvalds gradually share more power in governing Linux with other top programmers, he said. In Linux' earlier days, Torvalds said, "My interest was wide enough that it made sense to have one person do the (Linux) release management. It turns out that as the kernel grows, the size of my interest stays fairly constant, which has made it less and less relevant to the whole kernel, which is why I'm trying to cultivate all these people who help me do all these parts of the kernel." Indeed, as the Linux kernel expands, much of Torvalds' job increasingly involves rejecting badly written code. "My job is to say no, to some extent. If you keep things clean enough and have some kind of requirement for what code can look like, you're already ahead of the game," he said. The BitKeeper move irked some, including Richard Stallman, a MacArthur Foundation "genius grant" winner whose work cloning Unix and founding the Free Software Foundation provided a launching pad for the Linux movement. BitKeeper is proprietary software, a closed product that runs contrary to the shared development model Stallman began and Torvalds embraced for the Linux kernel. Torvalds said on Thursday he'd prefer to use an open-source equivalent, but there is none. "I'm hoping that some people in the open-source community will see the light and stop pushing CVS (the Concurrent Versions System code management software) and try to do a BitKeeper-like thing instead," he said. The biggest software change for the 2.6 kernel, Torvalds said, is an overhauled "block device" software, which governs how data is sent to devices such as hard drives, flash memory and CD-ROMs. "The block device layer was too broken for words," he said. The changes required an overhaul to all related "drivers", the software that communicates with specific hardware devices. Updating the drivers for the block device changes is probably the main source of crashes in the current test version of Linux, Torvalds said. Other than that, the new version "looks fairly stable", he said. Of Linux penguins and blind hens
Linux development might be becoming more formal, but Torvalds believes there are limits. For example, he argues against planning sessions where programmers chart out grand futures, he said. "I think a lot of things I don't like tend to be overdesigned," he said. "To me it's bad. Somebody spent too much time thinking and too little time doing." Linux programmers tend to be more free-form, with enough programmers trying things out so that eventually someone comes upon the right approach. "If you have enough people going out and trying it, it's like this blind hen approach to finding food, sometimes you just get lucky," he said. "There is no grand scheme." "The major architectural idea in Linux is to have this notion of where you want to go -- preferably you get some input from something that has worked before, like Unix -- then you have tons of people who have their own crazy wacky ideas, and you hope that the klutziness evens out," he said. One of the chief advantages of the open-source method of sharing code publicly is that programmers are ashamed to expose poorly written code for all the world to see. "In Linux," Torvalds said, "you probably fixed the worst warts even before you put them in the code."





