At IBM Think 2019, February 12-15, IBM Chairman, President, and CEO Ginni Rometty personally participated and moderated the only sub-panel other than the keynote, which was “Open Source: The Future of the Enterprise and the Cornerstone of Innovation.” In addition to Rometty, Cloud Foundry EXECUTIVE Director Abby Kearns, Linux Foundation Executive Director Jim Zemlin, Redmonk co-founder Steve O ‘Grady, Morgan Stanley executive Director Marcelo Labre, and Andre Fuetsch, PRESIDENT and CTO of AT&T LABS.

 

How important is the open source issue to IBM that Rometty is stepping in and moderating the conversation? In 2018, IBM spent more than $34 billion to acquire Red Hat, a software company that has focused on open source for 25 years. What may come as a surprise, however, is that the Red Hat deal is not IBM’s only investment in open-source software. In fact, IBM’s investment in open source goes all the way back to the Linux era, and more than 70% of the famous WebSphere Application Server is open source, including more than 700 open source components.

 

On a broad scale, IBM is involved in thousands of open source projects and communities. In addition to its heavy adoption of open source code, IBM is one of the largest contributors to the GitHub organization and code base. IBM’s major contributions to open source projects include: Contributed the Java runtime J9 as the Eclipse OpenJ9 incubator to the Eclipse Foundation, OpenLiberty, which will be used for Java EE and MicroProfile applications Runtime contributed to OpenLiberty. IO, source code to open blockchain project Hyperledger Fabric, source code to Apache OpenWhisk serverless platform, OPEN IBM quantum computing API Qiskit, and open IBM AI The Fairness 360 Toolkit (AIF360) and AI Robustness Toolbox (ART), multiple analysis projects open source as Apache Toree and Apache SystemML, and more than 100 other contributions over the past three years.

 

Bold press open source for 20 years

IBM’s commitment to and practice of open source is far greater than many people realize. IBM is a founding and highest-ranking member of many open source communities, the originator and strategic supporter of many open source projects and communities, including Linux, Apache, Eclipse, and others. IBM has been promoting open source protocols, open governance, and open standards. IBM paid $1 billion in royalties to support Linux in the 1990s, provided technical resources and funded the founding of the Linux Foundation in 2000.

 

In 1999, IBM helped create the Apache Software Foundation, which provided thousands of lines of code and resources to support the Apache Web Server Project. IBM is one of the founding sponsors of the Apache Software Foundation, helping to shape open source licensing and governance norms and contributing to numerous projects. IBM employees have held leadership positions within the organization and on the Board of Directors of the Apache Software Foundation since its launch. With nearly 200 projects on the Apache Software Foundation for two decades, including Web technology, XML, Web services, document processing, mobile, cloud, Big data and analytics, serverless and messaging, it is clear that IBM has been creating and leading collaboration and innovation in an open environment.

 

A typical example that may not be noticed by many is the Eclipse open source project and foundation. In 2001, IBM developed the Eclipse project and led to the establishment of the Eclipse Foundation in 2004. IBM contributed a large amount of source code, developers, and legal assistance to the Eclipse open source project, and today Eclipse is a Java open source development platform that integrates multiple development languages in a plug-in manner. Support includes C/C++, COBOL, PHP, Android, Python, R, and more. The well-known IBM Rational Software Architect is based on Eclipse, which is the foundation of IBM’s Java development tool family.

 

In February 2019, which marks the 15th anniversary of the Eclipse Foundation, Eclipse Foundation Executive Director Mike Milinkovich wrote: The open source community model that emerged when the Eclipse Foundation was founded in 2004 is well known today, and was quite new in 2004. The Eclipse Foundation started with 50 founding member companies, including IBM, SAP, HP, Intel, and others. Today it has grown to 275, with IBM and SAP remaining strategic participants. The Eclipse Foundation started with 12 open source projects. Today it has grown to 360 committers (large code contributors to the core modules and system architecture of open source projects) from 150 (mostly IBM engineers) to more than 1600 broad code contributors today. The Eclipse IDE integrated development environment has evolved from a desktop software development tool to support rich development application scenarios such as the Internet of Things, autonomous driving, geospatial and cloud native Java runtime. In 2018, Eclipse projects reached an all-time high with the migration of Java EE from Oracle to The Eclipse Foundation’s Jarkarta EE.

 

Remember, back in 2001, IBM donated $40 million worth of software code to the Eclipse Open source community (IBM VisualAge) to the then fledgling Eclipse Consortium, By then, the Eclipse Society had gathered 150 leading software development tool vendors, and more than 1,200 independent developers in more than 63 countries had participated in the Eclipse Society’s operations. Eclipse was originally intended to provide a single, unified software development process for all developers and a development tool and environment that integrated all software development tasks, including testing, performance tuning, and Bug removal. At that time, almost all software development tool vendors were involved in Eclipse projects.

 

In 2001 James Governor, an analyst at Illuminata, an IT consultancy, described this as IBM’s boldest open source “bet” yet. Eclipse is free to developers and is to software development what Linux is to operating systems. IBM, on the other hand, provides commercial development tools and Services based on Eclipse, which is open source, to support the development of e-business applications based on Web Services, XML and J2EE. Eclipse-based development tools can run on both Windows and Linux systems, so developers no longer need to develop e-Business applications on Windows and then transplant them to Linux, but can develop directly for Linux. Eclipse significantly enhances the productivity of Linux developers and enables developers to develop business applications for enterprise environments.

 

Establish an open governance ecosystem

The October 2018 update to the IBM Open Technology Methodology document, co-authored and regularly updated by Todd Moore, VP of OPEN Technology, IBM Open Technology Distinguished Engineer, and Chris Ferris, CTO, states: One thing IBM has learned through all of its open source efforts is that inclusive and open governance communities tend to attract the largest ecosystems and the largest markets.

 

IBM believes that while open source software projects and communities are important, open governance is even more important. Many open source projects are run by one person (or vendor) and are very closed in terms of governance, severely limiting the contributions of others; Other projects are more enthusiastic about external contributions, but remain closed in their technical strategy and direction. Once open source projects reach a certain level of success, a tipping point is usually reached where, without open governance, users realize the greater risk of being locked in or even abandoned by vendors. Both users and contributors want to have a say in decisions, and if they feel their voices are not heard, the project will fail or split. This often leads to adverse effects on ecosystems and even community collapse.

 

The reality is that open technology projects managed under open governance, such as those found in the operations of organizations such as Apache, Eclipse, Mozilla, and Linux, are clearly more successful, longer-lived, and less risky than projects controlled by a single vendor, or more rigorously governed. IBM often participates in open source projects controlled by a single individual or vendor to help them see the value of open governance and the potential for greater success. If IBM can effectively bring the project into open governance, it will significantly increase its investment to help ensure the success of the project and work to grow the community and ecosystem.

 

IBM understands that a rising tide lifts all boats. It is not enough for IBM to succeed on its own. IBM needs to ensure that many businesses succeed in order to sustain a vibrant ecosystem. This reduces the risk for IBM itself and, more importantly, for its users to embrace open source. In fact, since most corporate users tend to give preference to open source instead of proprietary products, so the first step is to try to integrate their own open source stacks, however when companies once learned through practice the challenge, often will be transferred to and has profound skills, and experience and have a thorough understanding of relevant community of open source technology suppliers.

 

IBM also believes that once enterprise users embark on the open source journey, they need a partner who can help them integrate open source technologies and who has the ability to continue to influence the open source community. Enterprise users expect their open source partners to understand the enterprise environment and the long-term interests of the enterprise, and to align their own interests by influencing and guiding the technical direction and progress of the open source community.

 

IBM’s commitment and contribution to open source in the industry is long-term, ongoing, and beyond imagination. IBM serves on many open source foundation boards, including Linux, Eclipse, Apache, CNCF, Node.js, Hyperledger, and many more, and thousands of IBM employees use and contribute open source software. IBM values and is committed to open governance because IBM believes it is the best way to ensure the long-term success and viability of open source projects. IBM developers work on important open source projects every day, contributing thousands of dollars to hundreds of open source projects every month.

 

Benefit all

Contrary to many impressions, one notable feature of all open source projects and communities in which IBM participates is open governance with multiple participation. This is because open source projects with a single participant are extremely risky. Recently, Facebook announced that it would discontinue the Parse (a popular mobile development platform) project, leaving thousands of developers in limbo. There are also many cases where developers release cool features as open source and then end up abandoning or ignoring the open source release for whatever reason.

 

IBM evaluates open source projects by looking closely at five aspects of the project: 1) Responsible licensing. IBM obviously wants to know about the open source licenses associated with this technology. 2) Participable submission process. IBM strives to ensure that there is a clearly defined process in place to welcome contributions from external contributors. 3) Diverse ecosystems. IBM identified multiple vendors and ISVs that are offering products based on the technology. 4) Get involved in the community. IBM requires a process to increase the technical influence of other contributors in the community. 5) Open governance. IBM evaluates governance models to determine if they are truly open.

 

Of course, IBM also studies technology and evaluates whether there is architectural fit, but technology can usually be fixed and improved over time. The key is for IBM to determine if there are enough positives to warrant the investment to help the project achieve true open governance for the benefit of all. IBM has demonstrated an ongoing commitment to driving innovation in the open source space, offering a broad portfolio of products based on open source, and helping to build sustainable, thriving communities and ecosystems around the open source projects that matter most.

 

IBM believes that leadership in Open source is of differentiated value to its customers, so much so that IBM even has a phrase to describe itself: “IBM is Open by Design.”

 

Focus on the enterprise

 

IBM invests heavily in and delivers strategic open source projects in security, scalability, robustness, online upgrades, globalization, documentation, continuous integration, and more. IBM also invests in open source projects that integrate IBM innovations into project functionality. IBM makes extensive contributions in other important ways, including marketing, evangelism, and various board-level committee activities. IBM also often takes the lead in defining interoperability and portability, which are critical to the success of any open technology.

 

In addition to buying Red Hat, IBM has invested nearly $1 billion over the past five years and hundreds of open-source development, marketing and evangelism resources. IBM has initiated many open source projects and has worked tirelessly to help open source organizations and their hosted projects define and succeed. IBM did this because IBM’s value gained from these projects and organizations beyond the open source software itself, most of which benefits from the vibrant community and thriving ecosystems, these ecosystems around the focus of open technology for development, and the success of IBM products and the investment is directly proportional to the success of the open source project.

 

IBM is focused on driving interoperability, portability, and many of the capabilities that are most important to the enterprise. IBM is also focused on contributing IBM innovation upstream and, when it is of equal value to strategic projects such as OpenStack, encapsulating it and providing external interaction through apis and SPIs for enterprise users. IBM will ensure that the interfaces defined by these technologies (APIS and SPIs) are fully exposed.

 

IBM takes pains not to create forked code such as “IBM Hyperledger Fabric” or “IBM Kubernetes” : Hyperledger Fabric in IBM blockchain platform has the same structure as Hyperledger published by Hyperledger organization, Kubernetes integrated into IBM Cloud has the same code published by CNCF, The Docker included in IBM Container Service is the same as the Docker published by the community, and Cloud Foundry is the same code published by the Cloud Foundry Foundation. IBM adds value by integrating all of these open source capabilities to implement the IBM Cloud.

 

IBM invests in community code for strategic technologies and ensures that patches and new features are added upstream, rather than adding additional complexity or relying on IBM to maintain different versions independently. When IBM wants to add extensibility that takes advantage of different IBM (or other company) capabilities, the necessary apis or SPIs are created in the community. IBM has also invested in ensuring that these extension points are not abused to create the potential for locking.

 

Those well-known IBM open source projects

 

Here are some of the most notable open source projects IBM has contributed to or contributed to:

 

The Eclipse. In 2001, IBM partnered with other companies to create the Eclipse Consortium, the predecessor of the Eclipse Foundation, through an initial license for the Eclipse Java IDE framework. IBM’s goal for the Eclipse Foundation is similar to Apache’s: to create a safe place for collaboration and innovation under open governance. There are now more than 360 projects on Eclipse. Similarly, open governance provides an attractive place for open source developers to collaborate and innovate.

 

Java. Going back to its earliest days, IBM was one of the early adopters and contributors of Java. IBM was instrumental in helping shape the Java language and runtime, as well as the J2EE specification and Sun Microsystems. Over the years, IBM has helped promote open source Java, making OpenJDK the premier open source Java. More recently, IBM has open-source the J9 runtime, a high-performance, low-memory Java Virtual Machine (JVM) optimized for the cloud, and Liberty runtime for Java EE and MicroProfile applications, which provides an open foundation for WebSphere. IBM will continue to lead and contribute to the establishment of the Eclipse base specification Process, which will replace the Java Community Process (JCP) previously used for Jakarta EE.

 

Linux. In 2000, IBM partnered with other major industry leaders to establish the Linux Foundation and became its founding platinum sponsor. Of course, IBM’s investment goes well beyond sponsorship. IBM has been and continues to be a leader in the Linux community for many years, investing hundreds of engineering resources in the Linux kernel and in many now over 80 Collaborative Linux Foundation projects, some of which IBM played a major role in getting started.

 

Cloud native. In July 2015, following the release of OCI, IBM, Google, Docker, Weaveworks, Red Hat and others launched the Cloud Native Computing Foundation (CNCF), aiming to provide an open governance model for Google’s Kubernetes project. This is a key component of IBM’s strategy for cloud and other technologies related to cloud native applications. Since then, the organization has flourished under the leadership of CNCF President Todd Moore of IBM, with projects including Kubernetes, ETCD, RKT, Fluentd, Containerd, and gRPC. Related to IBM’s cloud strategy, IBM is increasing its investments and contributions to CNCF technologies, especially Kubernetes.

 

Istio. IBM’s partnerships with Google on Docker, Kubernetes, and CNCF have yielded additional results. IBM and Google have teamed up with Lyft to merge IBM’s Amalgam8, Lyft’s Envoy, and Google’s service control. The result is the Istio project, a top-level abstraction for routing and policy management for cloud-native microservices. The goal is to eventually migrate Istio to CNCF to ensure open governance of this important and increasingly popular project.

 

Libcontainer. IBM has been one of the major contributors to Docker over the past few years. Three IBM developers earned the respect of their peers at Docker and were appointed maintenance staff. Docker launched the Open Container Initiative in June 2015, with IBM as one of the founding sponsors. Docker contributed Libcontainer and Docker image and transport format specifications to the computing. IBM has been one of the major contributors to OCI since its inception.

 

Containerd. In December 2016, Docker contributed Containerd to CNCF. In another testament to IBM’s leadership in open source, Containerd is a core container runtime component that manages the full container lifecycle of containers on hosted host systems. Two IBM employees have been certified as maintainers of container projects.

 

Knative. Google announced the Knative project, developed in close collaboration with IBM and many other major vendors in the serverless and platform-as-a-service space, which provides building blocks to provide serverless functionality for Kubernetes. IBM believes this will be a key technology and is working closely with the community to evolve platforms such as Cloud Foundry and OpenWhisk into Knative based platforms.

 

OpenWhisk. When Amazon introduced AWS Lambda in 2014, it signaled a potential shift in the direction of function-as-a-service (FaaS) or serverless computing. Many companies are beginning to explore this area, including Google, Microsoft and many others, and IBM is no exception. In early 2015, IBM Research began working on developing powerful serverless capabilities for the IBM Cloud. IBM recognized that in order for IBM serverless work to be viewed as a viable alternative to proprietary AWS Lambda products, it needed to open source under open governance so that a vibrant community and ecosystem could grow around the open source project. In February 2016, IBM opened its serverless platform and named it OpenWhisk. Following growing interest in OpenWhisk, IBM established Apache OpenWhisk as an incubation project in November 2016 with partners including Adobe and Red Hat.

 

Artificial intelligence and machine learning. IBM has recently opened up some key AI technologies, including: AI Fairness 360 Toolkit (AIF360), an open source software toolkit that helps detect and machine learn bias in models; Adversarial Robustness, used to quickly create and analyze attack and defense methods for machine learning models. The Deep Learning Framework (FfDL) is a deep learning as a service platform offering TensorFlow, Caffe, PyTorch, and more on Kubernetes.

 

Hyperledger. In 2015, IBM recognized the great potential of blockchain technology, as it is the technology underlying Bitcoin. IBM’s research in this area concluded that the blockchain technology platform at the time was not suitable for enterprises. So IBM set out to build a new blockchain platform with enterprise needs in mind — one that could be used in a highly regulated environment. IBM believed that this important technology should not be controlled by any single vendor, so it partnered with the Linux Foundation to build Hyperledger, the fastest growing project within the Linux Foundation. IBM contributed 44,000 lines of code and built the first Hyperledger project, Hyperledger Fabric, under open governance. Since then, Hyperledger has incubated nine more projects. Hyperledger Fabric was the first to hatch, the first to become “active”, and the first project to reach version 1.0.0 (June 2017). Nearly 300 engineers from 40 companies participated in four Fabic releases, demonstrating the value of open source development under open governance.

 

Node. Js. The Node.js community turned to IBM for help in resolving differences within the community. This divergence led to a fork in Node.js and different paths for the two projects. Node.js is the most popular Javascript development framework, but fragmentation can lead to fragmentation and collapse of the ecosystem. IBM worked with both factions and convinced them that the solution was to bring Node.js development under open governance. IBM helped other key stakeholders establish the Node.js Foundation under the Linux Foundation and worked to heal the split, and the fork was eventually merged back into Node.js. Thanks to IBM’s leadership, the project is now hugely successful and maturing.

 

With that in mind, you can see why Ginni Rometty, chairman, President, and CEO of IBM, is hosting the IBM Think 2019 “Open Source: The Future of the Enterprise and the Cornerstone of Innovation” segment. Not only is open source important to IBM, but IBM exists and is designed to be open! Because only open source has the widest compatibility, and this is the secret of enterprise IT success — many of the success of what is considered proprietary technology and product is the widest compatibility, whether IT is Oracle database, VMware virtualization software, IBM middleware, Microsoft operating system are the same way to success. What was once a vendor-led compatibility effort is now being replaced by community open standards led by the open source community, and the way for commercial software companies to succeed in the future is to participate in the open source community’s multi-governance and provide commercial solutions and services based on open source technologies.

 

As the IBM Think 2019 “Open Source: The Future of the Enterprise and the Cornerstone of Innovation” sub-forum participants agreed: Open source software is eating the world!

References:

1, IBM’s approach to open technology, Oct., 2018, https://developer.ibm.com/articles/cl-open-architecture-update/

2, the Eclipse Foundation: 15 Years Young, Feb. 2019, https://blogs.eclipse.org/post/mike-milinkovich/eclipse-foundation-15-years-young

3, IBM Donates $40 Million of Software to Open Source Community, Nov. 2001, https://www-03.ibm.com/press/us/en/pressrelease/1025.wss

For more information, please visit the Cloud Age website:

www.cloudtimemag.com

Articles on the Age of Cloud technology also appear in:

WeChat public Numbers, letters every day, today’s headline Numbers, weibo, zhihu column, netease and sohu news end client, baidu hundred, hundred number, echoes the zhongguancun online channel of science and technology, Beijing time, a dot, interface, 51 cto blog, e – works, UC subscription number, sina finance and economics, the headline read, sina, iresearch net column, TechWeb Blogs, etc.