LWN.net Logo

Following up after a day in the shop

Following up after a day in the shop

Posted Sep 27, 2004 4:55 UTC (Mon) by iabervon (subscriber, #722)
In reply to: Following up after a day in the shop by lm
Parent article: An Interview with Tom Lord of Arch (O'ReillyNet)

I agree entirely with the need for BK to be proprietary. I have no doubt that it is ahead of everything else due to having a full-time team of really good people. OSS can get full-time paid developers, but it doesn't tend to happen until a project is as big as Linux or Apache. I'd guess that someday arch will reach the point of being important enough to enough major projects that it will get enough development effort to surpass BK, but I'd bet that you and your current team will retire before then. Ironically, I think that the existance of people prohibited from using BK forces projects to use arch instead, and that gives arch market share and attention, meaning that it improves more quickly. If anyone could use BK, I bet arch would progress about as quickly as Hurd, and nobody but Tom Lord and RMS would really care about it.

On the other hand, I doubt that a competitor could learn anything significant from using BK. Actually, that's not quite true. I doubt that a competitor could learn anything more from personally using BK than from reading Documentation/BK-usage and similar documents. I'm fairly certain that everything that is really clever about BK would require as much effort to identity as something that could be reverse-engineered from BK as it did to work it out in the first place. You are, after all, constantly having to tell people that there are hard problems in version control; these people are hardly going to identify the hard problems and the solutions to them simply be using a tool which hides from the user just how hard the problems are. Linus has, at this point, used BK probably more intensely than anyone who doesn't work for BM (and quite possibly anyone who does). Linus is good enough to write a C compiler just because it seems like a good idea. Linus clearly cares a lot about version control and having it work right. But Linus hasn't decided to write his own version control system. Chances are that, if he hasn't done it, nobody else will.

A number of years ago, I used Purify from Rational. It was pretty easy to tell what it was doing from what it produced (plus, there were whitepapers provided which explained a bit more). On the other hand, there was absolutely no danger of anyone reverse=engineering and reimplementing it from using it (Years later, valgrind came out, which has a similar effect but using a very different method). Rational was perfectly willing to let whoever wanted to buy and use Purify to work on whatever they wanted. For that matter, they even gave me tech support, despite me using a trial license at a point when my employer's license hadn't been renewed (they were fanatical about the quality of the software; I was just telling them that -fomit-frame-pointer should be mentioned as a reason you can't debug a program; they wanted to make it work for my case). As far as I can tell, Rational did well on Purify. So there's at least that example of a successful model: let anyone of no commercial significance use your software for free; let anyone whose budget is noticable buy a license for a lot of money; don't worry about the competition. Just focus on getting as many people as possible, whoever they are, to pay you and your developers.

With 20/20 hindsight, I bet Google would now be even more thrilled with BK developed at Google and released under the GPL than they are with Orkut. Too bad there wasn't any way at the time to know it would work out that way...


(Log in to post comments)

Following up after a day in the shop

Posted Sep 27, 2004 7:21 UTC (Mon) by darthmdh (guest, #8032) [Link]

Bravo! When BK first appeared I loved the fact they made it open source, it meant if I ever found any bugs I could fix them and contribute this back, or merge in fixes from others without having to rely on a vendor release (since most commercial software houses like to roll up a bunch of stuff over time and their support track record was yet to be proven). This is what open source is all about. Not that you get something free of charge (which so many people mistakenly believe), or even that you can rip off other's ideas - essentially fork a codebase and try to "compete" (be it financially or simply in mindset). Of course, like most ventures there's always some village idiot who wants to spoil things for everyone else, and so it was with BK and Bitmover were forced to make it more and more closed. Unfortunately by some of the very people they were trying to help by having it free in the first place. People who want to rip off open source software simply for the credits are IMO no better than software pirates who want their credits on their 0-day warez. Open source is about improving the open source software, not providing 50 billion nearly-identical alternatives to what currently exists, with someone else's name/brand on them, and nothing improved that you would write home about.

I buy software because its a tool that helps me solve real problems. Little annoys me more than computers that make tasks slower than doing it manually - what's the point? Why should I bother with arch (for example) when 6 months down the track I'm still not able to do any useful work with it because I still don't understand how the heck it works, its poorly documented, the syntax is woeful and confusing, and the mailing lists are full of egotists that want to enforce this "little boys club" mentality? Bitkeeper had a bit of a learning curve (mainly getting my head around the ChangeSet versus revision thing - I was used to CVS and PRCS) but it was well documented and the support is amazing. And I say that as a gratis user - what they must do for their paying customers blows my mind. I deal with a lot of commercial vendors and there are few that come even close - to *paying* customers. That being said, to compare the two, BK improves my productivity and arch kills it dead and then some, when I'm writing code. I don't use an SCM tool because its a cool thing to do or the latest buzzword, or is licensed to me under the terms of the LLOTW (Libre License Of The Week). I want a tool that will assist me with the *real* task at hand - providing decent software in an agreeable timeframe. Same goes for Window Managers, editors, debugging tools, command shells, you name it.

Don't get peeved at Larry because he had to make his baby closed, get peeved at the morons who forced him to do that. They're the real enemy of open source.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds