What is the value of the code contributed by the Eclipse community? Inspired by a 2015 Linux Foundation study of the value of open source collaboration, we estimate that the roughly 162 million total physical source lines of code in Eclipse repositories represent an $8.7 billion USD shared technology investment by our community.
Open source has won because no single company can compete with the rate and scale of disruptive innovation delivered by collaborative ecosystems. In this post, I’ll share the details of our analysis of the economic value of open collaboration under the Eclipse governance model. As borne out by our experience, industry collaboration done properly delivers broad benefits to the ecosystem, including increased business agility, margin preservation, and the riskless sharing of intellectual property.
The Strategic Value of Eclipse Collaboration
Delivering sustainable software innovation at scale requires an economic investment that is unlikely to be shouldered by one company alone. Industry leaders like Bosch, Google, Amazon, and many others have embraced this reality. Increasingly, collaboration is viewed as a basis for competitive advantage.
The thinking goes like this: working with other industry players — even your fiercest competitors — on technology below the value line frees up scarce organizational resources to focus on delivering differentiating features faster, thereby igniting revenue growth. By pooling the development effort associated with commodity or backend capabilities, open source participants can save on headcount expenses, lower their development costs, and mitigate business risk by accelerating the market adoption of technologies and standards.
Consider mature industries faced with commoditization of traditional differentiators like the automotive and telecommunications sectors, where incumbents are squeezed by declining profits and the entry of digital-native disruptors like Tesla and Google. Collaborative development done right enables margin preservation and IP sharing without the threat of antitrust and regulatory challenges.
There are plenty of real-world examples of fierce industry rivals collaborating on open source. At the Eclipse Foundation’s openMDM Working Group, Audi, BMW, Daimler, and other automotive OEMs and supply chain partners collaborate on open technologies for the management of standardized measurement data. In the cloud space, Alibaba, Amazon, Google and Microsoft are members of the Cloud Native Computing Foundation. Commercially-friendly OSS foundations provide the even playing field for everyone to frictionlessly work together on sustainable technology, while managing risk, and extracting value.
The Eclipse Foundation has a proven track record of enabling open collaboration and innovation earned over 15 years. The Eclipse Working Groups provide an open and vendor-neutral governance framework for individuals and organizations to engage in collaborative development. Combined with efficient development processes and rigorous intellectual property services, the end result is clean code that is readily built into commercial products. In essence, we help the Eclipse community deliver open source code that works and scales in the real world.
What’s in a Number?
My colleague Benjamin Cabé recently shared the detailed methodology behind the count of 162 million total physical source lines of code contributed to 330 active Eclipse projects in 1,120 Git repositories (as of August 1, 2018). The goal of our economic analysis was to assess the value to the ecosystem delivered by Eclipse projects.
The creation of the original Eclipse project was announced in a 2001 IBM press release as a contribution of $40 million of software. At the time, the Eclipse community already involved more than 150 leading software tool suppliers and over 1,200 individual developers from 63 countries.
The Eclipse ecosystem is now supported by over 275 members and more than 1,550 committers. By sizing the software development effort to recreate the R&D effort over the last 14 years and now available to all, we can estimate the value provided to everyone who consumes these projects, including companies shipping this open code in commercial products.
The findings are remarkable:
- Using Barry W. Boehm’s well-regarded Basic Constructive Cost Model (COCOMO), the total amount of development effort required to rebuild the R&D available to all is an estimated 59,246 person-years.
- It would take 1,700 developers about 35 years to rebuild the 162 million total physical source lines of code in the Eclipse code repositories.
- The total economic value of this work is estimated to be $8.7 billion.
- Coming in at 2.93 million lines of code, the development costs of Eclipse IoT projects total about $128 million.
Breaking Down the Math
Here are the detailed results of our analysis:
Value | Notes | |
---|---|---|
Total Physical Source Lines of Code (SLOC) | 162,582,158 | Within the Eclipse repository as of August 2018 |
Thousands of Source Lines of Code (KSLOC) | 162,582 | (KSLOC = SLOC / 1,000) |
Development Effort Estimate, Person-Years (Person-Months) | 710,948 (59,246) | (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05)) |
Schedule Estimate, Years (Months) | 35 (418) | (Basic COCOMO model, Months = 2.5 * (person-months**0.38)) |
Development Team Size | 1,699 | (Team Size = Effort/Schedule) |
Total Estimated Cost to Develop | $8,735,111,546 USD |
Average salary = $102,470 / year, overhead dividend = 0.695 (Total Estimated Cost = Schedule Estimate, Years * Development Team Size * $102,470 / 0.695) |
Model Assumptions and Limitations:
- Salary and fully loaded costs used are courtesy of the US Bureau of Labor Statistics (March and August 2018 data). The Linux Foundation’s 2015 study used $95,280 per year for the median software developer salary and a 0.693 fully-loaded overhead factor.
- The model assumes all the software development would occur in the US. Clearly software development is global, and labor costs would vary accordingly.
- It is assumed that all lines of code have equal value. This ignores the differences in languages, functionality and quality of the code. While counting lines of code allows an estimation of the development effort required to recreate the code within these projects, the languages, problems being solved, and the resulting code within the various Eclipse projects is quite varied. Arguably, better measures of value and derived benefits are the potential or measured impact to the ecosystem and end users.
- The figures above do not include the value of the Eclipse intellectual property services. Thus the value of code of IP cleanliness — a major factor for companies building commercial products — is not captured.
- Certain Eclipse projects, most notably the Eclipse Modeling, include code generation capabilities. For instance, the Eclipse Modeling Framework (EMF) project is a modeling framework and code generation facility for building tools and other applications based on a structured data model. Modeling accounts for 27.1 million out of the 162 million total lines of code. See the analysis by Eclipse project below for additional context.
- This analysis focuses on net additions to the code base. Thus, the amount of effort tied to deleting and changing the code (not to mention modifying dependent code) is not captured in the estimate.
- For consistency with the studies by David Wheeler and The Linux Foundation respectively, the line counting approach ignores blank lines and comments. The case can be made that this approach undervalues code readability and maintainability.
- The analysis assumes the same COCOMO complexity factors and development constants used by Wheeler et al. in their studies.
Line Count by Project
Top Level Project | Lines of Code |
---|---|
Eclipse RT | 54,961,728 |
Eclipse Technology | 28,887,621 |
Eclipse Modeling | 27,140,344 |
Eclipse Tools | 14,214,182 |
Eclipse Web Tools | 9,651,900 |
Eclipse | 6,401,518 |
Eclipse Enterprise for Java (EE4J) | 5,809,126 |
Eclipse Cloud Development | 3,114,768 |
PolarSys | 3,105,229 |
Eclipse IoT | 2,930,217 |
Eclipse Business Intelligence and Reporting Tools (BIRT) | 2,235,624 |
Eclipse Science | 1,670,051 |
Eclipse Data Tools | 939,424 |
Eclipse Mylyn | 767,652 |
Eclipse SOA | 752,774 |
Grand Total | 162,582,158 |
Collaboration in the Real World
The massive shared code investment by the Eclipse community is a testament to the power of collaboration. More than 275 organizations and thousands of developers globally have contributed to the creation of billions of dollars of software value for the ecosystem to leverage. The Eclipse Foundation is proud to support these collective efforts.
Many thanks to Benjamin Cabé, Wayne Beaton, Barry W. Boehm, David Wheeler, and the authors of the various Linux Foundation studies which inspired this analysis.