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."

21 of 347 comments (clear)

  1. free... as in freedom? by TechnoVooDooDaddy · · Score: 4, Insightful

    Stallman can't get over the fact that Bitkeeper is NOT licensed under the GPL, and that Linus chooses to use it anyway. Presumably Linus just likes it better, and he's free to do as he sees fit. Freedom, that's an interesting word, because the mere notion of it means it must apply equally and unilaterally to everyone, or it doesn't exist. Stallman has repeatedly tried to exert pressure on people including McVoy to license things under *his* GPL, and complaining loudly when it doesn't happen. In other words Stallman is making an effort to limit their freedom with their own product.

    Freedom applies to everyone, or it applies to no one.

    1. Re:free... as in freedom? by rapid+prototype · · Score: 2, Insightful

      you can't be "a little bit non-free" just as you can't be "a little bit pregnant". you either are, or you aren't.

      did you read what RMS had to say about Linux not even legally being able to be distributed under the terms of the GPL? and that has nothing to do with BitKeeper.

      -rp

    2. Re:free... as in freedom? by abe+ferlman · · Score: 3, Insightful

      It's suddenly become fashionable to bash Stallman on Slashdot. How odd.

      Anyway, your point is wrong-headed. Think about what gets said when people discuss GPL'd game software- people say "GPL is important for infrastructure, not for entertainment". They say when it counts open standards are important but when it's trivial it's ok to be closed.

      Well, this is a serious infrastructure issue and Stallman has every right to be upset about it.

      Your twist of the word freedom is easily parried- the freedom to take away others' freedom is not a freedom at all. The GPL position is internally consistent.

      And finally, your attack, like so many here today, is premised on an ad hominem argument- you're attacking Stallman, not his argument.

      --
      microsoftword.mp3 - it doesn't care that they're not words...
  2. RMS condemning non-free, not BitKeeper itself by Seth+Finkelstein · · Score: 5, Insightful
    Agree or disagree, I believe the phrase BitKeeper ... condemned by free software icon Richard Stallman mis-states the issue. It's not the merits of BitKeeper _per se_ which are at issue. Rather, it is the very idea of the use of it - even if it's technically better!

    What RMS actually said was:

    Bitkeeper issue
    The use of Bitkeeper for the Linux sources has a grave effect on the free software community, because anyone who wants to closely track patches to Linux can only do it by installing that non-free program. There must be dozens or even hundreds of kernel hackers who have done this. Most of them are gradually convincing themselves that it is ok to use non-free software, in order to avoid a sense of cognitive dissonance about the presence of Bitkeeper on their machines. What can be done about this? ...

    Linux, the kernel, is often thought of as the flagship of free software, yet its current version is partially non-free. How did this happen? This problem, like the decision to use Bitkeeper, reflects the attitude of the original developer of Linux, a person who thinks that "technically better" is more important than freedom.

    Value your freedom, or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn.

    That's a very profound statement. It's easy to sneer at it, to dismiss it ad hominem. But he raises important points which deserve to be addressed in depth.

    Sig: What Happened To The Censorware Project (censorware.org)

    1. Re:RMS condemning non-free, not BitKeeper itself by Anonymous Coward · · Score: 1, Insightful

      Typical RMS. Lets look at these claims in detail shall we?

      >The use of Bitkeeper for the Linux sources has a >grave effect on the free software community, >because anyone who wants to closely track patches >to Linux can only do it by installing that >non-free program.

      Nonsense many important kernel Authors (Al Viro for one) find patch + diff just fine and don't use BK at all.

      >Most of them are gradually convincing themselves >that it is ok to use non-free software, in order >to avoid a sense of cognitive dissonance about >the presence of Bitkeeper on their machines.

      More nonsense. Most of them are developers who don't have the extreme idealogical bias that RMS has against all non-free software. They just want to make free software better.

      >Linux, the kernel, is often thought of as the >flagship of free software, yet its current >version is partially non-free.

      Vintage Stallman and equally nonsensical. "I can't persuade people with logic so I'll frighten them with words like 'partially non-free'". I've got news for you hippy: All software licenses (including the GPL) retrict the use of the software and thus make it partially non-free. Sometimes those restrictions are benign, but that's a seperate issue.

      >This problem, like the decision to use Bitkeeper, >reflects the attitude of the original developer >of Linux, a person who thinks that "technically >better" is more important than freedom.

      This is precisely why linux is so much better than the Hurd. Technically better _is_ more important than freedom. Linux is both technically excellent and free.

      Its been so long since RMS wrote any code I'm sure he doesn't care that all of the open-source SCMs blow. But as an average developer IT REALLY MATTERS.

    2. Re:RMS condemning non-free, not BitKeeper itself by reverse+solidus · · Score: 3, Insightful

      RMS's philisophical point is that it's a bit odd to be using a proprietary product as the source control system for a GPL'ed kernel. Especially a GPL'ed kernel that has benefitted so much from existing Free infrastructure.

      The practical risk is that Linux, by implicitly endorsing non-free competitors to free products, is helping to cut off it's own air supply.

      For example, I suspect that there would be many fewer Free and Open Source projects if CVS were proprietary. Free (speech) infrastructure is a huge boost to software development.

      Developers have to make a choice between the short term expediency of choosing a product strictly on its current technical merits, and the long term benefits of encouraging a healthy Free software ecosystem.

      You can argue specific cases, but to deny there is a tradeoff is disingenuous.

    3. Re:RMS condemning non-free, not BitKeeper itself by Anonymous Coward · · Score: 1, Insightful

      Just to point something out in RMS's argument that makes absolutely zero sense -- you do NOT need to install the BK client in order to track the changes in the Linux kernel. All you need is an open-source, "free" web browser (i.e. Mozilla, Konqueror, Galeon, Lynx) to go and view the source, patches, etc. Don't believe me? Point your web browser (free or non-free -- which ever you prefer) to -> Linux 2.5 Development Tree. If you are interested in the Linux 2.4 tree, try this link to Marcelo's tree.

      So how is that I need to install a non-free client app to closely track the progress of kernel development RMS? This interface lets me see the entire version history of the kernel -- file by file or patch by patch from any web broswer (free or non-free). I can even search the change set comments for particular information (e.g. search for SCSI to find all of the SCSI patches). It seems to me that this interface is better than anything this community has previously had to track the progress of the kernel. Not to mention, we get more informative change logs now. Just for grins, I even accessed this site from a Kyocera Palm phone. Slow as all get out, but it worked.

  3. Extremism and Source Code Control... by ArthurDent · · Score: 3, Insightful

    RMS is an extremist. Always has been. In that role, he has fought for the complete freedom of software. IMHO, it's an admirable, idealistic view of the world. Having said that, there are times when his extremism causes him to fall right off the deep end, for refusing to make the smallest compromise for the good of the movement.

    McVoy is hardly anti-free-software. The very fact that he gives away *anything* for free symbolizes that. (He doesn't have to give anything away.) He makes the simple requirement that the free users use the newest versions for bug reporting reasons. Not a bad idea IMO.

    But RMS bristles at even the association with a software product that is ever sold for money. That extreme view causes great debate in the community (this discussion for one) and that's a *good* thing! However, RMS needs to be less beligerent about this one. The kernel needs a stable base in terms of source control. If Linus determines that the best solution is BitKeeper, then that's his decision. RMS has the right to his opinion, but not to insult the intelligence of all of us by tring to tell us that we're all compromising our values by allowing this.

    In a similar vein, am I the only one who is sick of RMS whining about the naming of Linux? The accepted name is Linux not GNU/Linux. It's out of your hands, RMS. Live with it.

    Ben

    1. Re:Extremism and Source Code Control... by ArthurDent · · Score: 2, Insightful

      You're absolutely correct. It probably should be named GNU/Linux. My only point is that the name Linux is already accepted, and it's really hard to change the terminology midstream.

      RMS marginalizes himself by looking like a whiner in this regard IMHO.

    2. Re:Extremism and Source Code Control... by ryants · · Score: 3, Insightful
      Yet, how does that stated view of commercial software jibe with his beligerent response to the idea of Linus using BitKeeper?
      Why do people have such a hard time understanding this?

      RMS believes there are certain freedoms, listed at www.gnu.org, that must be met before a software package may be called "free". In English it is unfortuante that "free" has two meanings: in Latin, they are "libre" and "gratis".

      The issues is not, never has been, nor never will be about the issue of cost (gratis). The issue is about liberty/freedom.

      BitKeeper doesn't even come close to satisfying the requirements for being free (libre), regardless of its cost. Hence RMS' problem with it.

      I hope these words were small enough for you.

      --

      Ryan T. Sammartino
      "Ancora imparo"

  4. Re:Re-inventing the wheel by Anonymous Coward · · Score: 1, Insightful

    Oh, bullshit. "Re-inventing the wheel" has obvious pejorative connotations.

  5. One little nit by fizbin · · Score: 2, Insightful
    But RMS bristles at even the association with a software product that is ever sold for money.

    RMS has never, ever, objected to any activity on the grounds that it is "tainted" by monetary objectives. (Though others nearby have - the Gnuart people, for example)

    What RMS objects to about BitKeeper (and about acrobat reader, and latex column modes, and Netscape 4) is, as he says so many times it almost makes you want to beat your head into the wall, that BitKeeper is not "free as in freedom".

    RMS has no problems with BitKeeper being sold - his problem is that the market for BitKeeper (and most other non-free software) is propped up by the restrictions placed on the buyer. In fact, RMS agrees with debian that software which contains a "don't sell this for more than the cost of the media" clause is not free. Part of the problem with BitKeeper is not that McVoy is selling it, but that I (or anyone else) can't.

    If every person who received a copy of BitKeeper from McVoy were able to use it however they wanted, examine all the source, modify it as desired, and then copy and sell the result, then BitKeeper would be free software. (I'm sure someone could weasel in a non-free restriction somewhere into that statement, but basically that's it) Contrary to popular opinion, RMS does not insist that every piece of free software be licensed under the GPL.

    Painting RMS as hostile to the pursuit of money, as though he were these guys is inaccurate. RMS is not actively hostile to the software market; he just doesn't view its continued existence as a sufficient reason for non-free software. If the commercial software market cannot survive without the restrictions on redistribution currently placed on buyers, then it cannot survive.

    People who paint RMS as hostile to making money fail to see the difference between "I hate that" and "I care about something else more than I care about that". (Those who would paint free speech activists as being against national security often commit a very similar structural confusion.)

  6. Ah, there's the rub by Nygard · · Score: 5, Insightful

    The system is no longer GNU + Linux kernel. If it's about giving credit in proportional amounts, then X, perl, Berkeley, Apache, Netscape, and many other major contributors should also be recognized.

    I do understand that some of these can be stripped away without impairing the OS, but some of them cannot.

    While calling the whole ball of wax "Linux" may be overstating the importance of the kernel, calling it GNU/Linux understates the importances of all the other contributions.

    --
    "Genius may have its limitations, but stupidity is not thus handicapped." --Elbert Hubbard (1856-1915)
  7. Re:Pragmatism by Mr_Silver · · Score: 5, Insightful
    My only problem with it, is that if I am using it for free, I am _forced_ to upgrade when new versions become available.

    So pay up and quit whining about it.

    You're getting something for free, nothing, nada, zip that someone else has spent time and effort on, why are people not appreciative of this fact any more?

    You don't go whinging about a free beer your mate gives you do you? And yes, even that beer will come with conditions (like you're supposed to drink it with him).

    --
    Avantslash - View Slashdot cleanly on your mobile phone.
  8. Re:Re-inventing the wheel by cjstephen · · Score: 3, Insightful

    The effectiveness of the source control system used to develop any non-trivial, multi-developer project is critical.

    Creating a good one isn't trivial.

    In my opinion, CVS and RCS are far from the best solutions available. CVS behaves like an automation layer on top of the single file version control of RCS, not a change management system for a whole project. It can do most things other systems can do, but you may have to waste effort working around its weaknesses.

    I've not used BitKeeper but I have used Perforce, another commercial product which can be used for free on Free software projects, and found the benefits to the development process significant. Making simple things trivial and hard things quite easy helps developers to do the right thing without getting in their way.

    Minimising the cost of using the source control system to its fullest effect leads to many improvements throughout the software development process. I'd argue it leads to better, more maintainable code.

    As a Linux user and free software advocate I'm glad that Linus is using BitKeeper, rather than CVS. I'd love to see a better free software source control system, but until we've built one I'd rather not sacrifice quality and efficiency in other important projects.

    --
    "Every good boy deserves fudge"
    GPG: 66F0 CD0A 9EC6 367F C3B4 7EB0 C76D CFBE 86CF 21E4
  9. What about FSF machines' BIOS & firmware? by dstone · · Score: 4, Insightful

    In reference to the FSF, RMS says:
    We have no non-free systems or applications on them now, and our principles say we must keep it that way.

    So is this to say that their motherboard BIOS and all supporting microcontroller code, EPROMs, firmware and controller code in their video cards, ethernet cards, etc. all comes with source code?! Impressive. Where do they shop?

  10. proprietary vendors cloud free, not FSF by _|()|\| · · Score: 3, Insightful
    Why do FSF advocates insist on clouding the difference between the right to free-use and the right to change the source?

    On the contrary, I think the FSF explains the different types of free software very clearly. The common response to a question such as yours is: would you buy a car with the hood welded shut? You're not a mechanic, so what do you care?

    Take, for example, Intel Solaris. It was distributed free of charge from its web site, ISOs and all. I download it, install it on my web server, happy as a clam that I have a free, enterprise O/S behind MyPuppySam.org. Oops, the web server crashed, and I have to reinstall. Hmm, the Solaris CD-R is scratched. "Hey, buddy, can I borrow your Solaris disk?" I ask my friend. "Sorry, dude, didn't you read the license agreement? I'm not allowed to lend you my copy. You'll have to go download it again," he replies. Oops, it's not available for download any more, because it's been "deferred," whatever that means. Guess I'll have to pay $50 and wait for the mail man. I guess I should count myself lucky that I can buy the media kit, at all.

  11. Re:Role models by JordanH · · Score: 4, Insightful
    • Good. I like a role model who has the sense to use the best tool for the job, and who doesn't waste his time with inferior tools.

    Best has a context associated with it. RMS believes that best is always free as in GPL'd. Anything else, to him, is inferior.

    Linus himself was quoted as saying "Making Linux GPL'd was definitely the best thing I ever did. "

    I'm concerned about what I see as extreme pragmatism on Linus' part. Surely, better software, in terms of features and useability, isn't the only criteria for determining it's selection. Price is obviously a major criterion with such internet-developed projects as the Linux Kernel.

    As far as I can tell, the BitKeeper license doesn't insure that future versions, perhaps even versions necessary to run on future OS releases, will still be free of charge and without source, we can't be sure that we could make it work on those releases.

    Maybe this is just paranoia and there's really nothing to worry about, or maybe not.

    RMS is insistent and consistent. Somebody has to be.

    I like Barry Goldwater's statement "I would remind you that extremism in the defense of liberty is no vice." To RMS this is about liberty and he doesn't compromise.

    It seems to me that there are two choices: The GPL is adopted for purely pragmatic reasons because we can outcompete closed source development. The other is that the GPL is adopted as a principled position.

    If we take the first position, then will we stop using Linux the moment something better comes along in terms of features, useability and stability? After all, the existence of BitKeeper proves that, at least in some contexts, that closed source development is superior to Open Source Development models. Doesn't it?

    Let me ask you. Should we adopt MicroSoft software if it offers better features and useability? Or... are there other concerns than the narrow "best tool for the job" consideration?

  12. Re:Show me the money by Anonymous Coward · · Score: 1, Insightful

    He isn't saying that the programmer shouldn't make a living, he said it is irrelevent how he does so. Of course Stallman believes everyone should be rich, so they could be happy and maybe even donate money to the FSF.

    Here's an analogy: it is irrelevant how a cocaine pusher makes a living, he just shouldn't do it selling cocaine. It is irrelevent how Britney Spears makes living, she's still hot. It is irrelevent how my DJ neighbor makes a living, if he plays music that loud one more time I'm calling the police. Etc.

    Back to your example of the programmer who slaves away making a big complecated piece of software and is finally done.

    There are many ways to get paid. You can work for a company that wants that software, and doesn't care who else has it, and is willing to pay you to do it. You can make early versions with limited functionality and hope that people pay you do add the features they need after they start using it. All of these have the added advantage that they are more likely to succeed than your "hide in the garage" strategy.

    But if you decide to invest years of your life on the promise of future income from selling a piece of software you are writing, you are fucked. You are fucked even if we ban the GPL and shoot all the GNU people; the software you describe is, like all software, infinitely copyable, and you'll get some money from some people, and large numbers of others will simply not pay. Go to gnutella and search on "*.iso" or the name of some really expensive package.

    The truth is that even in the corporate world very few people do what you described. Some big hosues like Bell Labs will let you write shit for a decade in some basement in hopes it will be awesome when they finally see it. Most expect continual progress and feedback, and make you listen to the people who are using the early versions, to steer you in the right direction. They quit paying you if your shit doesn't look useful. Why do you think the independent world is different ? Hundreds of thousands of people are paid to write software, but actually very few make money selling software.

    If you go hide in an ivory tower and write software for years, and it is awesome, well, you just did a lot of work for free. That's a feature of the digital age that exists no matter what, and the GPL just formalizes it.

    If you want to survive in the digital age by writing useful software, you have to talk to people, convince them it is useful, convince them to believe you by having your previous predictions of useful products come out true, be attentive to their needs, etc.

    The ivory tower theory here is yours. The idea that you can work for years and then expect me to pay you money is stupid. If you want me to pay you money, you better talk to me before you get to work. Or maybe you can find a patron like Michelangelo did for the Sistine Chapel; which, by the way, I can look at anytime I choose without paying, on the web.

    The final analysis is this: society is under no obligation to subsidize your particular work-alone style of software production with a monopoly; society couldn't to that if they wanted to due to the nature of the digital medium; if society could and did want to, it's a bad way to make software so we shouldn't; and finally, it is your job to figure out how to make a living, just because you presented an implausible plan for it doesn't reflect any fault of the GNU project.

    I sympathize with your sense of morality. The bible says "the laborer is worthy of his wage," and there is a natural sense of offense at someone working hard and productivly and not getting paid. But your efforts to ask society, and the mathematics of digital copying, to change so one particular strategy of hard work will be rewarded, are doomed. The universe is what it is, and it will not change so your hypothetical programmer makes money. But your hypothetical programmer can change, and do something different, and make money for writing software in some other way.

  13. Re:Pragmatism by AxelBoldt · · Score: 3, Insightful
    You're getting something for free,

    No you don't. You pay for it with the considerable hassle and expense of being forced to upgrade your basic infrastructure software whenever some company tells you to.

    If you download Linux, that's free in every sense of the word. Bitkeeper is not free. Not even free as in beer.

  14. Well Well by evilviper · · Score: 3, Insightful

    Stallman verses the world? I can't believe it! You could knock me over with a feather.

    I've heard from several leaders of many highly visible GPLed projects who have essentially said that the biggest problem with the GPL is Stallman. Not that that's not my personal opinion, so don't flame the messenger.

    --
    Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant