Posted on 03/31/2007 10:02:49 AM PDT by ShadowAce
Im sure everyone reading this has heard the debate over whether that top dog free operating system should be called Linux or GNU/Linux, but how big a contribution is GNU or Linux to that operating system? As conventional wisdom has it, its the availability of applications that make a system valuable, and this is where free software really shines. Linux contributes only about 6% to the cost value of a full operating system, but then again, GNU contributes only about 15%who do we have to thank for the remaining 79%?! And why dont we hear them complaining about what its called?
This isnt really about GNU/Linux, its really about asking Where does free software come from? In order to answer that question in any really definitive way, of course, you first have to collect all the relevant free software applications into one giant collection so you can do statistical analysis on them. Wouldnt it be nice if somebody would do that for us?
Oh, yeah... ;-)
Debian GNU/Linux represents the largest such collection in existence, and with something like 15,000 packages, it comes pretty close to representing the universe of free software (or at least, working free software, theres plenty more that isnt ready for prime time yet, as a quick look at Sourceforge will tell you). Debian will do nicely.
Meanwhile David Wheeler (who you may recall is an occasional contributor to Free Software Magazine), wrote a package called SLOCCount to count physical source lines of code (SLOC) in software projects, as well as evaluate them in terms of their estimated replacement cost if they had to be redeveloped from scratch according to proprietary methods, represented by their COnstructive COst MOdel (COCOMO) costs (which was, of course, originally developed to help managers estimate the cost of proprietary software development projects). This model is convenient to use, because it only needs physical source lines of code as an input, and thats the easiest thing to collect. There are more sophisticated cost models out there (COCOMO II for a start), but they require more sophisticated input, and are therefore harder to use on a large automated estimation project. So COCOMO I it is.[1]
Observing these two wonderful facts, a group of researchers in Spain decided to have a go at Debian with SLOCCount, and published their results. Their interests are in things like what programming languages were used, but the complete data set can be used to answer some other questions, too. Including the question of who writes free software.
The dataset lists SLOC, package size, and COCOMO estimated cost for each package considered. The packages are meant to cover the entire bulk of Debian source packages, but without overly duplicating code (for example, if two closely related branches exist, pick only one of them). This makes sense, because presumeably the code was only developed once, and so copying didnt cost much (some would say that's the whole point of free software).
So, in the end, they have 8,560 packages listed for Sarge (not the entire set, but fairly close). Less for earlier distributions, of course.
Now where do they come from? One way to estimate affiliation is by looking for dashed package names: for example, its probably fair to count, say, mozilla-thunderbird
and mozilla-suite
as both being products of the Mozilla project. Even if such a package is actually maintained by a third party, its still part of the Mozilla culture surrounding the Mozilla project. Many large free software projects are like that: a well organized core with a halo of unaffiliated supporters.
For the GNU project, however, there is a simpler way: they have a list. Which is nice, because they have quite a few projects. Fortunately, Debian is pretty conservative with package names, so if they package, say, gcc, theres a strong chance the package name will contain the string gcc, so we can filter. Also, all Debian package names are strictly lowercase (this is policy), so we know exactly what to do to compare. This makes it a snap to cross-reference the GNU package list against the Debian collection.
Combining the two techniques, we can get a good picture of whos behind all those packages. Here it is:
This estimate is by total accumulated SLOC, so it doesnt draw any distinction between lots of small packages and one giant package. This means, for example, that it overestimates the value of GNU versus Linux. Both are underestimated against the field of smaller independent packages. However, SLOC are a nicely objective measure, so its good to start with this.
To get a better picture of the division by value, however, we can use the COCOMO estimated replacement cost numbers. These are a kind of lower limit to the value: because presumeably, you would have to spend this much to create these packages in order to use them. If they were developed by a proprietary organization and then sold, they would have to be sold at prices that would raise at least this much (distribution costs and profits would probably at least double these costs).
In any case, heres what that valuation looks like:
You may be a little surprised by the total cost figure at the bottom of the chart. Yep. That's in adjusted Year 2000 US dollars, and is equivalent to approximately one half of the cost to develop the first Space Shuttle [2]. Thats a lot of value. Note of course, this is not necessarily what it actually cost to develop: we assume that free software methods are considerably more cost-efficient, and most of the contributions were in kind donations of time, so actual cost is much harder to compute.
But this chart is really about the pie slices: GNU, while being the single largest contributor, still only accounts for 15.3%. Meanwhile, Linux isnt even number twothat honor goes to a set of desktop applications, OpenOffice.org. More to the point, more than half of the applications come from the fieldthousands of individual applications created by individuals or companies for their own reasons, not backed by any of the high-profile, high-mindshare free software organizations.
I dont mean to diminish the importance of the flagship organizations in maintaining free software. But its the fleet backing them up that makes the system into the powerful force that it is. The fairest term for what we like about GNU/Linux is probably neither GNU nor Linux, but rather just the Free Software Operating System. Free software operating systems are made valuable principally by the contribution of individual developers.
[1] I should probably mention that David originally used SLOCCount to analyze the Red Hat distribution, and while thats interesting, its not as up to date or as comprehensive as the research I refer to here. Maybe Ill write about that on another day.
[2] I got this information from transcripts from the Columbia Accident Investigation Board, reviewing the program. The cost adjustment is my own, based on government tables for adjusting the cost of large scale projects (not the consumer price index, which is inaccurate for these kinds of figures). The actual cost in 1980 dollars, was actually less than the figure for Sarge, but thats just because of inflation. This is the cost to the first flight (of Columbia), and does not include program maintenance costs, which, over some 25+ years of flight is obviously much higher. Thats the fairest comparison I can make because it compares development to development in adjusted dollars. Gives you pause, doesnt it?
Copyright ©2007 Terry Hancock / Creative Commons Attribution-ShareAlike License (http://creativecommons.org/licenses/by-sa/3.0)
Originally published at www.FreeSoftwareMagazine.com.
You must retain this notice if you reprint this article.
Unless otherwise noted, the illustrations in this piece have the same attribution and licensing.
IB4GE
In Before Golden Eagle?
I doubt he's interested in how free software actually happens. Sometimes I think he believes it's secretly funded by Leonid Brezhnev. ;-)
He'll be around. Just give a bit of time. His personal crusade to stamp out the evils of Linux won't let him stay away.
Hmmm. Something else to note, a portion of the value of the bannered contributions also belong to the blue swath contributors in that they are not the bannered entities, but made contributions to the bannered effort.
So that's RMS? Geez... who'd a thunk it?
Few Linux folks who know about RMS consider him a saint. It's just as unfortunate that the free (speech, beer, whatever) software movement has a whacko self-absorbed figurehead, as that the proprietary software movement has a whacko self-absorbed figurehead (that would be the legendary chair-throwing monkeyboy Ballmer).
I am grateful for the early work RMS did, in particular the gcc compiler, because that made possible a lot of technical work that I did in the 90's. For that matter, anyone who uses any of the modern BSD UNIXes, MacOS-X, and others, is indebted to RMS and the gcc developers.
However, RMS has become a religious nut-case, and like all religious nut-cases, he's lost touch with what it's really about. He cares now only for his own glorification. Witness how he's screwing GPLv3 into a corner.
Look, I work as Director of SysAdmin for a company that writes and sells proprietary software; I use and maintain servers running Windows, NetBSD, Solaris, Linux, and MacOS; and I love and hate them all because nothing is perfect. I support users running all of the above plus Vista. If I were a religious nut-case, I'd be out of a job.
I happen to be writing this on my home Linux box, but my WinXP box alongside is crunching on a task and my Mac Mini is downloading some updates. I use what works best for the task. Free software often (but not always) does it best.
So I don't think you're playing fair, to paint all GNU, much less all GNU/Linux or other free software boosters as leftists. Many of us are simply folks who don't think that Microsoft et al -- despite their overwhelming market success -- are doing the best job out there, and we'd like to try to do better ourselves. You're welcome to judge the results as inferior -- it's a free country. I prefer to have a mix, since that way I can do anything I need to do, on at least one of these boxes.
the guy really is a fruit i would prefer that linux go to the BSD license model. secretly i think even Linus wants to kick his sissy ass.
I don't think it's any secret. Linus is a much more reasonable and pragmatic individual, and Stallman's excess of dogma obviously pisses him off. He's said as much, a number of times, on the record in print. It's not a religious war -- it's a disagreement on what's important, between a nutcase and a practical man.
I don't, I just state simple facts like Stallman is a green party whacko and Torvalds came from a family of well known communists and sit back and watch those act like I criticized their family instead of admitting the obvious. They may not all be leftists but when they attack me for questioning those like Stallman who are, you certainly have to wonder.
It's not all political. But it's unfortunate that the software development world has so many people who take themselves so seriously (whether on the free side or the proprietary side).
When I started programming in 1970, nobody thought about communal software -- the closest we came was trading sections of our card decks.
I wrote a bunch of apps and utilities in assembly for my KIM-1 in 1976-1978, some of which wound up getting passed around in the various Users Groups of that era. I grew up believing, as most did then, that software was the "free" component of computers -- that you paid for the hardware, and the software was cooperatively developed to run on it. It was, of course, a simpler time...
Bill Gates's vision for a company that sold only software changed all that, for most people, for better or worse who knows.
It's unfortunate that Microsoft did not evolve that original business model over time -- instead of still flogging NT in 2007, they might have gotten the more truly visionary, even revolutionary things done, that Gates was talking about 15-20 years ago. But that would have required opening up, because no one company can do those big things alone. Microsoft consumes but does not cooperate.
It's not leftist to cooperate. An awful lot of excellent products (both computer-related and otherwise) developed over the years through cooperation between capitalist companies. It doesn't mean they don't compete, even fiercely -- but sometimes it makes good business sense to play well with others, because a rising tide lifts all the boats.
Microsoft presently stands alone today, but when they fall, as they inevitably must, no one will step out to catch them. Much as I look forward to that (because I don't think their monopoly is a good thing for software), I shudder to think what will rise from those ashes.
People are quick to point the finger at Microsoft instead of ever admit the issues with Linux, but there have been choices other than Microsoft since before Linux existed. I myself used SCO Unix back in the early 90's, and there have been many other versions of Unix available from US companies such as Apple Computer's OSX operating system since that time. Now we're supposed to use some foreign copy of Unix, with funky names like "Ubuntu", instead of American originals like Apple? Forget it, at least when it comes to me.
Thread Jester Ping
A low-volume pinglist dedicated for all the thread jesters out there--you know who you are...8^)
Yep, my first home Unix box was an AT&T 3B2/300 running SysV, in 1985. I've used AppleII machines, DEC PDP-8, -11, VAX11/780, Flex-09 (6809), you name it. Linux is only the latest of a long line of non-Microsoft OSes.
Hell, I remember when Microsoft was a Unix company (XENIX, before they sold it to Santa Cruz).
> ... and there have been many other versions of Unix available from US companies such as Apple Computer's OSX operating system since that time. Now we're supposed to use some foreign copy of Unix, with funky names like "Ubuntu", instead of American originals like Apple? Forget it, at least when it comes to me.
Yes, but don't forget that Apple's OSX is a legitimate modern-BSD derivative, and as such is 100% dependent on RMS's gcc compiler. I happen to think OSX is the best-of-breed among all the UNIX/Linux variants, in most respects, especially security and the GUI.
But we should acknowledge that OS-X as a product would never have existed were it not for Stallman's excellent, free -- and more important, portable -- compiler. That's just giving credit where due; it doesn't affect my dislike for him later becoming a righteous, counter-productive, asshole.
Incidentally, I run RedHat and Fedora Core Linux, not "Ubuntu". Nothing against the latter technically, but it sounds too close to "Obama" for my tastes. ;-)
What the devil are youse talkin about ? I'm a flunky, not a lackey!!!!
I agree with that, and I could almost support them with all the foreign versions of Linux out there, but since they allow the Chinese to legally rename their "Red Hat" software to "Red Flag", free of charge, I find it pretty difficult. "Ubuntu", "Red Flag", Cuba and North Korea standardizing on it, too many questions and way too few answers.
Allowed? Nah, I just don't think they (Red Hat) could have stopped the Chinese from punning on the name, legally or otherwise. Shoot, a company with Microsoft's resources couldn't have prevented that -- consider the percentage of Chinese Windows that is pirated, maybe 95%? The Chinese do what they damn please (which pisses me off, but that and a buck get me a cup of coffee).
Besides, although "Red Flag" is loosely based on the Red Hat Enterprise distro, it isn't merely "Red Hat" with the name changed. It's yet another distro, and differs in the same way that most Linux distros differ from one another, which is to say, not a hell of a lot. They claim it's improved from Red Hat, but every Linux distro claims it's the best.
Two things about the Chinese distro annoy the hell out of me. One is that the desktop looks way too much like WinXP's or Win2K's desktop. Granted, desktops all have a lot in common... The other is their logo of the penguin Tux marching with the ChiCom red flag. I have not read an interview with Torvalds in which he is asked about that (I think the Tux penguin is trademarked and owned by him), but given his family, he probably went along (again, he probably couldn't have done much about it anyway).
I happen to like the goofy penguin logo, and I'm not happy about the association with the ChiCom flag.
Anyway, I don't fault Red Hat for the Chinese name -- I don't think they could have done squat about it.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.