Estimating the Size/Cost of Linux 196
2bits writes "Wow... A Billion Dollars Worth Of Software On My System For Free! Check This Guy Out, He Came Up With A Counting / Pricing Method For Quite A Few Types of Source Code. Here is the Program. The results on the site are sorta dated, based on RH 7.1, but the app is pretty cool!... Hey, I can finally find out how much all my side projects are worth / costing me..."
value? (Score:3, Insightful)
Instead of wasting time figuring out ficticious pricing based on the way that corporate america prices software, why not figure out a way to remove the aforementioned hidden costs from Linux so that the masses can begin to see what many of us on /. have known for a while: That GNU Linux and Open Source Software represent a great choice.
Re:Billion dollars? (Score:3, Insightful)
Sure, but what about the time spent in bug fixes, patches, etc? I supposed you can do something like this:
Programming cost = E dollars * ((X lines * C * percent * A minutes) + (X lines * D percent * B minutes))
You could even go fancy and calculate lines-per-minute based on each langauge. But then, what about Man pages, documentation, support sites, etc. These are things you would pay for in commercial software. Shouldn't these be a factor as well?
His Paper Is Bunk (Score:5, Insightful)
In his paper, he uses the basic COCOMO model for estimating the cost. This model, quite frankly, sucks. Boehm's book even states, more or less, that the COCOMO model is only accurate to a factor of 10.
Since I no longer have the Boehm book, this quote from a google-found web page will have to do. This is a quote of a quote from Boehm's book, Software Engineering Economics:
"Basic COCOMO is good for rough order of magnitude estimates of software costs, but its accuracy is necessarily limited because of its lack of factors to account for differences in hardware constraints, personnel quality and experience, use of modern tools and techniques, and other project attributes known to have a significant influence on costs."
Basically, this means that the estimate could be anywhere from $100M->10B in true cost.
At the very least, this kid should have stated which of the model variants he was using.
Better yet, he should have subdivided the source code into multiple categories: kernel+drivers, tools, productivity software, etc. etc., and then applied the various models to them.
Just my 2 bits.
BTW, here [nasa.gov] is the google-found page which has the quote I stole. Plus, it gives a nice, albeit brief, overview of COCOMO.
-d
Re:bad news for Linux? (Score:2, Insightful)
The IRS is going to love me come audit day...
Re:lets see here..... (Score:1, Insightful)
The resulting value of 666 is also a common joke among geeks.
sigh -- Maybe this is why some people have
Re:Yeah, right (Score:2, Insightful)
I think Microsoft has proved that true.
Bloated code may not be best, but it gets out the door faster.
Can you imagine what would happen in Microsoft cleaned the code to Windows XP? Imagine, they release an 40-mb service pack that trim's the OS size down 300MB, decreases boot-time by 75%, improves program launch speed 300%, improves security, stability, and functionality; all while making the OS easier to upgrade, and implement.
Of course, when this release is finally out in 2057, it won't make much difference.
as everybody knows : (Score:2, Insightful)
Linux is free (as in beer) if you time is worthless.
</flamebait>
Re:No more functions for me... (Score:3, Insightful)
cost != value in general
No, SLOC isn't Junk, and You Missed the Point (Score:3, Insightful)
1) SLOC says nearly *EVERYTHING* about developer contributions. After all, the SLOC is what the developer contributes.
2) Efficiency is a measurable metric, and can be quite as simple as (SLOC/MM)-(NumBugs/MM), where MM=Man-Month.
While there is a variance in the efficiency of programmers, for any given company a median efficiency can be determined. From this, a decent cost-estimate for SLOC may be determined.
i just don't know why people don't count 'Customer Problems Solved Over Time' as the end-all, be-all.
That collected metric would have almost no utility, unless you could atomize the concept of a 'customer problem'.
"Well, it took us 6MM to craete that web-based
accounting system, so it should take us about
the same to develop these kernel drivers"
Something like the above doesn't help anyone. It doesn't help the programmers who take part in recording the data; it doesn't help the managers plan and predict the product lifecycle; it doesn't help the customer in letting him know when to expect to see the next product release.
What you failed to do was drill down further in your analysis of the problem.
Let's say you just finished putting out product "X", which solved some customer problem. Now the customer wants product "Y" to solve some other problem. How do you estimate "Y" based upon "X"?
Answer: Break it down. "X" required the following capabilities: A,B,C, and D. You recorded and tracked the amount of time it took to accomplish each capability.
Now, you break down the customer problem, "Y", and determine what it would take to solve it.
If you did a good job at atomizing the customer problem on project "X", then you should have been able to come up with an average amount of time/AtomicProblem. Apply this metric and Viola!, you should have a good idea about the scope of "Y".
Many people like to take the AtomicProblem and equate it to a SLOC estimate.
What SLOC counting does is try to establish a commonality among various projects so that future projects of various natures may be estimated using previous metrics. This is not perfect, but it should be used as an aid in determining overall project scope and costs.
i mean, you can't have it both ways. Either SLOC shows how productive programmers are, or it doesn't.
SLOC shouldn't be used to estimate programmer productivity. It should be used to estimate project productity.
-D
Re:Good Lord (Score:3, Insightful)
Re:His Paper Is Valuable (Score:3, Insightful)
His paper is valuable, priceless even, in that it is throwing a spotlight on a part of the Open Source phenomenon that has not yet come into public discussion.
While I don't know COCOMO, I accept that his numbers are highly suspect. But you have provided a range of accuracy that corrects for this. I am very confident that any reasonable assessment of the Linux development effort is going to be greater than $100 million and less than $10 billion.
So it is indisputable that Linux is a resource whose development effort exceeds $100 million.
And no reasonable person can question that this resource is now available at very low cost to anyone or any institution, on a global level.
It is difficult to see how anyone could not recognize that the use of this resource increases global wealth. Linux does make the world pie bigger.
I think that is the real story here. Linux is a tool, a lever, that has required at least $100 million of effort to develop, but which anyone can put to work for extremely low cost. I think this kind of phrasing needs to be brought to the attention of those who are being FUDded by groups that feel threatened by Open Source.
Yeah, right. (Score:5, Insightful)
So either I'm doing enough work to be worth several hundred thousand dollars a year, or this thing is complete nonsense.