Slashdot Mirror


Linux Foundation Puts the Cost of Replacing Its Open Source Projects At $5 Billion

chicksdaddy writes: Everybody recognizes that open source software incredibly valuable, by providing a way to streamline the creation of new applications and services. But how valuable, exactly? The Linux Foundation has released a new research paper that tries to put a price tag on the value of the open source projects it comprises, and the price they've come up with is eye-popping: $5 billion. That's how much the Foundation believes it would cost for companies to have to rebuild or develop from scratch the software residing in its collaborative projects.

To arrive at that figure, the Foundation analyzed the code repositories of each one of its projects using the Constructive Cost Model (COCOMO) to estimate the total effort required to create these projects. With 115,013,302 total lines of source code, LF estimated the total amount of effort required to retrace the steps of collaborative development to be 41,192.25 person-years — or 1,356 developers 30 years to recreate the code base present in The Linux Foundation's current collaborative projects listed above.

20 of 146 comments (clear)

  1. Huge presumption by sunderland56 · · Score: 3, Interesting

    They are presuming that all of their projects are equally valuable. The GCC compiler, for instance, is widely used, and it's disappearance would put a large hole in the software world. Gnu Hurd, on the other hand.... if it disappeared tomorrow, would anyone even notice?

    1. Re:Huge presumption by gstoddart · · Score: 2

      Wait, what? Does the Linux Foundation own either of those two things?

      Linux isn't "every piece of Gnu software on the planet", and I seriously doubt very much the Linux Foundation either claims to own GNU Hurd, or has anything to do with it being pushed.

      Are you perhaps totally confused about what "Linux" is? I'll give you a hint ... it's the core operating system. It's certainly not every piece of GNU software, and it's definitely got nothing to do with GNU Hurd.

      --
      Lost at C:>. Found at C.
    2. Re:Huge presumption by Tough+Love · · Score: 2

      The GCC compiler, for instance, is widely used, and it's disappearance would put a large hole in the software world. Gnu Hurd, on the other hand....

      Neither is a Linux Foundation project.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    3. Re:Huge presumption by Tough+Love · · Score: 2

      Does the Linux Foundation own either of those two things?

      The Linux Foundation does not "own" any of its projects.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    4. Re:Huge presumption by IamTheRealMike · · Score: 2

      Yes, their infographic lists "Dronecode" whatever that is, alongside node.js

      The other problem with trying to calculate the value of the Linux kernel specifically is that it counts the costs of all the drivers as well and you end up concluding that building a kernel is infeasibly expensive (reality check: there are quite a few of them out there, made by non-huge companies). If Linux was developed from scratch commercially you wouldn't attempt to develop drivers for every piece of hardware known to man all in the same source tree. You'd do what Microsoft do and define a driver API. Then the costs of hardware support are spread out across industry and no one entity ends up paying the entire cost.

      The Linux kernel guys don't do that because they prefer being able to refactor/redesign any part of the kernel at whim, even at the huge cost of having all driver development be centralised. But that's not the only way to do it.

    5. Re:Huge presumption by Grishnakh · · Score: 2

      Right, the other way is the Microsoft method where you create an API and just let everyone else write driver code for their own devices. Then you get tons of horribly-written drivers, all running in privileged mode inside the kernel, and every time one of them has a problem, you get a blue screen. It doesn't matter how great your kernel is because just one shitty third-party driver will crash it.

      This very problem has dogged Microsoft for decades now. The only ways they've gotten around it are 1) adopting part of the Linux model of making their own drivers for many commonly-used peripherals and including those as part of Windows, and 2) instituting the WHQL program to have MS test out third-party drivers and check their quality. The latter option simply isn't doable for Linux, because it requires a large, for-profit organization maintaining the OS and which is able to set up something of that scale, and it also requires the OS to already be in a market position where hardware makers are willing to pay high fees to have their drivers checked and certified by the OS vendor under this program. Almost no one is going to pay $$$$$ to have some company (or something like the Linux Foundation) thoroughly check their closed-source drivers, because Linux marketshare outside the server room is puny.

      On top of this, Linux does have a big presence in the embedded sector, but here there's loads of closed-source drivers with varying quality, and it's caused a lot of problems.

      Finally, being able to change interfaces at a whim when things change (such as when WiFi standards are amended) is a big advantage; having a fixed API/ABI makes that impossible, so you end up with workarounds like multiple API versions, which results in kernel bloat and performance loss.

      The other thing you could do is go to a pure microkernel design, but there again you get performance loss.

  2. Honestly, sounds low ... by gstoddart · · Score: 4, Interesting

    If every corporation which relies on Linux as part of its infrastructure had to buy or build every piece of technology required to replace Linux, I should think on a global scale it would be far more than that.

    Because a lot of that effort would be duplicated by multiple companies .. and of course the patent litigation by all of the players who seek to claim they invented some piece of technology which predates them.

    I can believe $5 billion in this quite easily.

    Of course, I can't read the paper since I need to fill out some fscking form from, and that's not happening.

    Pity the Linux Foundation doesn't believe in open information.

    --
    Lost at C:>. Found at C.
    1. Re:Honestly, sounds low ... by Tough+Love · · Score: 2

      I can't read the paper since I need to fill out some fscking form from, and that's not happening.

      That bit of PHB genius demonstrates adequately how disconnected from the community the Linux Foundation really is.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    2. Re:Honestly, sounds low ... by gtall · · Score: 2

      My guess is the $5 Billion is fairly low. Who would organize the redone software, every two-bit company out there would contribute and then claim they owned a piece of the result. it would be a cluster-f of immense proportions. Meanwhile, the companies that currently rely on it would be SOL for further updates for security issues. Then there is the cost of companies throwing up their hands and buying closed source because every two-bit company with their closed software stack would be promising bargains like crack dealers...errr...like they currently do but now with a more captive clientele.

    3. Re:Honestly, sounds low ... by BradMajors · · Score: 4, Insightful

      Since just one company, Microsoft is earning two billion per year from Android alone. Five billion does seem low.

  3. COCOMO calculation and its drawbacks by __roo · · Score: 5, Informative

    For those who don't know, COCOMO is an algorithm that was developed in 1981 by Barry Boehm for estimating the cost of building software (typically in person-hours). The numbers in the article were generated by the basic COCOMO calculation in David Wheeler's free SLOCCount toolset.

    One drawback is that SLOCCount uses the basic COCOMO calculation, which is based on historical data gathered by Boehm in 1981. Here's a COCOMO-81 calculator in case you want to play with your own code. Sometimes its estimates are pretty good, but I've sometimes found that applying line counts from my projects in some modern languages (especially functional ones like Scala) throw it off. That could definitely affect the "1,356 developers 30 years" estimate in the article.

    Wheeler has a good discussion of COCOMO in SLOCCount if you want to learn more about it.

    1. Re:COCOMO calculation and its drawbacks by gstoddart · · Score: 2

      That could definitely affect the "1,356 developers 30 years" estimate in the article.

      Sure, but look at it this way: way more developers than that have been working away on Linux for the last 20+ years.

      My experience with people trying to re-write a similar set of functionality from scratch, and covering all of the corner cases, exceptions, audits, and bug fixes ... that tells me that it takes a LOT longer to write something like that.

      So, ignoring the userland stuff, and things which hook into Linux, it's still a massive undertaking to write it, test it, verify it, find all the issues, identify and fix exploits ... all of those things take a lot of time.

      I don't think it's all that unrealistic to think that trying to rebuild it from scratch would be a massive undertaking, costing huge sums of money ... because it already was a massive undertaking. A lot of it might have been done without someone directly paying for it, but it took a hell of a lot of resources.

      But the 20+ years of who knows how many people which have gone into Linux isn't something you could reproduce quickly. I don't buy that for a minute. You'd have security holes, crash conditions, optimizations, errors, or huge gaps in functionality.

      So, in a roundabout way ... thanks to all the people who have made Linux what it is. Because it's far too easy to undervalue it or take it for granted.

      --
      Lost at C:>. Found at C.
    2. Re:COCOMO calculation and its drawbacks by tomhath · · Score: 2

      That it's overcounting old code, or undercounting newer C99/C11 code, or that the man-hour estimates for post-1981 languages aren't up to date?

      All of the them. COCOMO says "tell me how many lines of code there will be in project and how many LOC/HR your developers will write and I'll tell you how long it will take". Well, duh.

  4. On the flip side... by Junta · · Score: 4, Insightful

    They said it would take approximately 30 years for approximately 1300 developers to get there. We know because we have an idea of how things evolved that estimate is actually a bit short. Some of that codebase is about 30 years old, and well more than that many developers have contributed. Things have been done, discarded, redone. The estimate is actually a pretty optimistic one that assumes the developers get it 'mostly' right the first time when actual history has had many many dead ends that caused a total rethink. One would expect the same out of a private endeavor. So there's some balancing out.

    --
    XML is like violence. If it doesn't solve the problem, use more.
  5. Re:erhm by Anonymous Coward · · Score: 2, Funny

    Well, sure. America is part of the civilized world... except for the rampant genital mutilation.

  6. Seems Low by EndlessNameless · · Score: 2

    Since most companies would either develop proprietary solutions or buy at a substantial markup from an establish publisher, the actual cost to replace all that software would be much, much higher. And if an established organization offers a replacement, it will likely have competitors---which again gives a duplication of effort, even if it is much smaller duplication than proprietary redevelopment of the functionality. This is not addressed at all in the paper.

    They do acknowledge that failed or superseded code is not included in their analysis, and there was certainly developer time spent on code that is not a part of the project, either because it was culled or never made the cut to begin with.

    Given both of those factors, the $5 billion figure is a very low best-case value. The practical cost of replacement would be monumentally higher once the mundane practicalities come into play.

    --

    ---
    According to the latest ruleset, this post should be modded as Vorpal Flamebait +5.
  7. Re:Imputed Income! by murdocj · · Score: 2

    The current US "regime" wanted to charge home owners who had taken a mortgage on a house years ago and were making relatively small payments by current rates, the difference between what their house would rent for (if it was more than the mortgage payment) and the mortgage payment as imputed income. Yes, if you were paying $500 a month and the house could rent for $1500, you would have to add $12000 to your annual income in "imputed" income.

    This sounds like extreme BS. Care to cite something other than Internet rumor?

  8. No, way more. by EmperorOfCanada · · Score: 3, Interesting

    The costs also need to consider all the dead ends and bad decisions. How much code was built that was never injected into the system. I suspect that many Linux developers have conjured up some really long and interesting code that they then never submitted. They threw it out and started again.

    Then there is the quality of the programmers. The few programmers that I have met who contributed to the Linux codebase were pretty damn kickass. Thus hiring them would not only be expensive but really hard. Most of them wouldn't work for most companies as they know they are the elite of the elite and can pick and choose their surroundings.

    Also Linux contributions are often a resume builder. Thus many junior but very very good programmers will do some Linux contributions which then makes them look cool. The reality is that they don't want to work on Linux but want some other job, such as the games industry. This is a double problem. Some company hiring for their 5 billion dollar project would never have hired them because they had crap resumes, and these kids didn't want to work on Linux and thus wouldn't accept a job working for a big boring company building an OS.

    Then there is the urgency factor. Many critical tiny bits of Linux were built by people with a specific problem. They didn't have a Linux driver for their 10,000 machines with the L257B Arcnet card. Thus they dove in and modified the driver for the L256A arcnet card just enough to make it work. But where would that kind of bug/feature have been prioritized by a corporation? Plus again the person doing this brought a skillset that was obviously very good for that problem but otherwise might have been a terrible hire for the project.

    Then there are the various OS distributions that compete. Not all Linux decisions have been good ones. Thus different distributions follow different paths resulting in winners and losers for various aspects of the system. Over time the winners end up spreading across the distributions and the losers just sort of fade away. Even the classic Gnome vs KDE has resulted in each becoming better. So one must count the costs of developing both Gnome and KDE.

    This last one even extends out to other Open Source OS projects such as BSD in that code from that project end up in Linux as well as providing competition.

    Then there is the whole build the wrong thing problem. Linux has evolved steadily to meet the demand of its users. But a corporation would build a product that would meet the demands of its marketing department. Thus any corporation building Linux wouldn't build Linux. They would typically build something like Windows or OS/2; Operating systems that were designed to create an ecosystem for selling other crap made by that company and locking their customers in.

    So while it is interesting to say such a huge number, I personally think that the number would be far far larger as to put together such a talent pool would probably be a mega project in itself over and above the actual paying of that pool and the other development costs.

  9. Re:Screw you. by unixisc · · Score: 2

    This!!! They should recalibrate everything from base 10 to base 16, so that computers save cycles doing BCD conversions

  10. Re:Dr Evil! by invictusvoyd · · Score: 2

    Chick Norris can rewrite the entire kernel in a day . Without a single bug.