Eleven years after he rocked the Linux community by withdrawing the non-commercial version of BitKeeper, his source code management system, Larry McVoy has finally been forced to open source the application.
BitKeeper was a proprietary tool that Linux creator Linus Torvalds started using in 2002, simply because there were no decent systems to manage the kernel project.
At that time McVoy had two versions of BitKeeper – a commercial version and a non-commercial one, the latter being free for use by anyone who was not running a business. The only condition for use was that all change logs be sent to a world-readable server controlled by BitMover, the company that was developing BitKeeper.
There was often friction between Torvalds and other kernel developers who preferred to use free and open source software for all their work. But Torvalds, who has a motto of using what he deems to be the best tool for the job, continued because it made him much more productive. It helped him to deal with large numbers of kernel patches submitted by developers, who often got fed up waiting for a patch to be evaluated.
But in 2005, trouble arose. McVoy announced that he was stopping development of the non-commercial version of BitKeeper and phasing it out.
Then it became known that McVoy had taken the decision because the creator of Samba, Andrew Tridgell, had developed a BitKeeper-compatible tool
McVoy said he had decided to drop the non-commercial version because Tridgell had reverse-engineered the protocols used in BitKeeper.
However, Tridgell said that he had written SourcePuller without using BitKeeper.
This led to a furious spat between Torvalds and Tridgell, with Torvalds accusing Tridgell of "screwing people over" in reverse engineering the protocols of a proprietary source code management system.
Tridgell’s explanation was simple: he had developed SourcePuller without using BitKeeper. "Some people expressed some scepticism over that, perhaps because they haven’t noticed that BK servers have online protocol help," he said. "To access this, users need to type ‘help’ into a telnet session.
"I don’t think it is unreasonable to assume that this help was intended for people like myself who wished to implement new clients."
Torvalds was thus forced to stop using BitKeeper. He developed a tool called git and many people began to contribute code to make it bigger and better.
Now given the popularity of Git, McVoy has been forced to release BitKeeper under an Apache 2.0 licence, an open source licence.
A few days ago, in a Q and A on Hacker News, McVoy wrote : "Git/Github has all the market share. Trying to compete with that just proved to be too hard. So rather than wait until we were about to turn out the lights, we decided to open source it while we still had money in the bank and see what happens.
"We’ve got about two years of money and we’re trying to build up some additional stuff that we can charge for. We’re also open to being doing work for pay to add whatever it is that some company wants to BK, that’s more or less what we’ve been doing for the last 18 years.
"Will it work? No idea. We have a couple of years to find out. If nothing pans out, open sourcing it seemed like a better answer than selling it off."
If McVoy had not phased out the non-commercial version of BitKeeper 11 years ago, it is unlikely that Torvalds would have moved away from it. Torvalds was the best advertisement possible for BitKeeper because he had only one reason to use it: it helped to run the kernel project and made him more productive.
McVoy has now come full circle and accepted the reality of the triumph of open source. But it may be too late for him and BitKeeper.
HOW TOP MANAGERS MOTIVATE, ENERGISE EMPLOYEES
Download an in-depth guide to managing a healthy, motivated and energetic workforce without breaking the bank.
SAS HANDS-ON WORKSHOPS
Visual Analytics – Data Quality – Visual Statistics
Run by SAS subject matter experts, these 90 minutes workshops are run in a classroom environment, with experienced facilitators assisting you through a number of data related activities.