Slashdot Mirror


Interview With BitKeeper Author Larry McVoy

Jeremy Andrews writes "KernelTrap has spoken with Larry McVoy, BitMover founder and primary BitKeeper author. BitKeeper, a distributed source control system, has been adopted by Linux kernel creator Linus Torvalds and condemned by free software icon Richard Stallman. In this interview, Larry looks back through the years, describing his exposure to computers and Linux. He also discusses the history of BitKeeper, from writing NSElite for Sun (which turned into their still used SCM, Teamware), to his desire to keep Linus from burning out, to the present day solution. The choice to not license BitKeeper under the GPL is also explained. Larry discusses much beyond Bitkeeper as well, exploring some of his other interests. Find the full interview on KernelTrap."

1 of 347 comments (clear)

  1. The only part of the interview that matters.... by mshiltonj · · Score: 4, Informative
    This is his response to the GPL issue. It's a good point. The choice is: Enough money to feed the family and pay the mortgage, or give back to the community and make a fraction of what you could have otherwise. It's not always this black and white, but many times it is.


    Larry McVoy: I've never bought into the open source model as a self sustaining model for all software. It works in some places the software is tied to some other source of revenue, such as hardware, but in general, it stinks as a business model. It's fantastic if your goal is to have a lot of free software out there, but it starts to fall apart when building that free software costs more than you can extract from it in revenue.

    BitKeeper is in that camp. There is about 25 man years of effort in BitKeeper so far, with no end in sight. We pay Bay Area salaries, so our cost for an engineer is about $160K/year. That's at least 4 million dollars no matter how you look at it, and that's a lower bound. I took a hard look at the Cyclic people who tried to make a business out of supporting CVS and they pulled in $145K in their best year. It would take 27 years to make $4 million at that rate, and that assumes we stop drawing salaries today. In this product space, if people can use it for free, they will. People have tried to argue with me that BitKeeper is a better tool and it would generate more support revenue. That's nonsense, exactly because it is a better tool. At least with CVS, there are enough broken or missing features that you could generate revenue to fix them. Maybe.

    So I took a hard look at the situation and decided that I wanted to maximize value to everyone. I divided the world up into 3 camps: the free users, the commercial users, and the vendor. The goals were to provide maximum value to everyone and have everyone provide value back in return. Here's how it works:

    Free users: these users don't pay in money, but they do pay. They pay by using the product and pointing out bugs. BitKeeper is a dramatically better product because of the free users. The BKL, the free usage license, insists that you are running the latest images, because that's where the free users provide value. It doesn't help anyone to get bug reports on problems we've already fixed. The job of the free users is to help debug the latest.

    Commercial users: these users pay in money which funds further development. As a commercial user, they can pick which release they want to run, which sometimes means they stay back for stability reasons, perceived or otherwise. They benefit from the free users running a new release first, and it's typical that they wait for the timestamps in the download area to be a few weeks old before upgrading.

    Vendor: we provide value in the form of the product and support. We get the bug fix value from the free users and financial benefit from the commercial users. The money is turned right around into additional development.

    While BitKeeper is hardly a get rich quick scheme, it is self supporting. We've taken no outside investment, the company is built on the backs and wallets of the people who work here, and that's cool. It means there is no outside board of directors in the form of VC's telling us to stop wasting time giving it away. I know that giving it away has helped make it a better product, which is good for everyone, but I'd hate to be in the position of having to justify that decision to a VC before the fact. It's easy to see that things worked after the fact, it's much harder to see that they will work ahead of time.

    The bottom line on the licensing scheme is that it was designed to give as much and get as much as possible to and from all parties. Licenses such as the GPL give more to the free users, but give dramatically less to both the original author and to the commercial users. Using GPLed software for everything is like living in a world where the answer for when you have an illness is "here are the plans for the hospital, you can finish building it and check yourself in. Oh, and here's the medical instruments you'll need, you can slice yourself open and poke around. You can do it, good luck!".

    Licensed software is more like the insurance model. Nobody pays what it cost to develop the software, that's way to expensive. So everyone pays a little bit and the cost load is spread out. Yeah, for consumer applications like what Microsoft ships, they can get very rich because there is a very large market. But for applications like BitKeeper, it's a tiny market, about a million seats world wide, and there are about 300 different SCM tools out there. Hardly the area to go try and do a free product and hope that support revenue will work. It's just not realistic. There is absolutely no chance that BitKeeper would be anywhere near as good as it is today if we had chosen to GPL it.