Understanding Open Source Culture: Openness, Sharing, and Collaboration

Understanding Open Source Culture: Openness, Sharing, and Collaboration

Introduction

INTRODUCTION

The essence of open source lies in openness, sharing, and collaboration. The open source model is a method that relies on internet platforms to accumulate collective intelligence on a large scale through joint participation and collaboration, achieving continuous innovation.
Source

This article is an original publication by the e-works editorial department, Yang Pei.

In recent years, with the continuous surge of the open source wave, the open source movement has been flourishing both domestically and internationally. For example, in June and November 2021, Huawei successively donated the core infrastructure of HarmonyOS and the openEuler operating system to the OpenAtom Foundation to co-build and prosper the domestic operating system open source ecosystem. In October 2021, Alibaba’s T-head announced the open sourcing of the Xuantie RISC-V series processors and the opening of a series of tools and system software to promote the accelerated integration and innovation of RISC-V software and hardware technology. On January 31, 2022, the CentOS Linux community officially stopped updating and maintaining CentOS Linux 8 and shifted to developing and maintaining the new CentOS Stream version to achieve a fully open source model. In May 2022, Baidu announced that its self-developed industrial-grade deep learning open platform “PaddlePaddle” has gathered 4.77 million developers and serves 180,000 enterprises and institutions. In July 2022, Chipone officially announced the donation of the high-performance open source digital simulator EpicSim to openDACS to promote chip open source technology collaborative innovation.

The open source movement can be traced back to the 1960s. If we start counting from 1991 when Linus Torvalds created and released the Linux kernel, marking the gradual establishment of the open source movement, it has now been 31 years. In these 31 years, the open source movement has gradually expanded from early projects focused on the Linux operating system, desktop office software, and web browsers to numerous directions and fields such as databases, middleware, IoT, microservices, big data, artificial intelligence, edge computing, and cloud computing. At the same time, the influence of open source culture has also begun to receive much attention.

01

The Essential Characteristics of Open Source Culture

Open Source’s Main Manifestations

The concept of open source originated in the software industry, and its basic connotation is the openness of source code, which is an open and shared development model. Under the open source model, users can freely access the source code and are allowed to use, copy, modify, and republish it, provided they comply with the licensing restrictions.

The “2022 China Open Source Development Blue Book” released by the China Open Source Software Promotion Alliance points out that the essence of open source lies in openness, sharing, and collaboration. The open source model is a method that relies on internet platforms to accumulate collective intelligence through joint participation and collaboration, achieving continuous innovation. In this method, the core developers of the project closely collaborate with a large peripheral community, sharing resources, conducting collaborative development, and managing code over the internet, thereby significantly enhancing project development efficiency and capacity to respond to changing demands.

Table 1
Open Source Software Promotion Alliance of China was established in 2016
summarized and proposed the (internationally recognized) characteristics of open source
Understanding Open Source Culture: Openness, Sharing, and Collaboration
To date, open source, as an innovative collaborative model, is not limited to open source software (Open Source Software) but also includes open source hardware (Open Source Hardware), open design (Open Design), open documents (Open Document), and open source technologies (Open source Technologies).

1. Main Manifestations of Open Source

Open Source Software: can be understood as software with open source code constrained by a neutral licensing agreement. According to the Open Source Initiative’s definition of open source (The Open Source Definition), open source software not only means that the source code is accessible, but it must also meet ten principles, including freedom of distribution, integrity of the original author’s source code, non-discrimination against individuals or groups, non-discrimination against any field, and neutrality of the license. The Linux operating system is the most typical example of open source software.

Open Source Hardware: The concept of open source hardware was inspired by open source software, but it actually existed as early as the 1960s. According to the Open Source Hardware Association’s definition, open source hardware consists of hardware designs that can be obtained through public channels, allowing anyone to learn, modify, publish, create, and sell existing designs. Some well-known examples of open source hardware include Arduino, Raspberry Pi, BeagleBone, micro:bit, and more.

Open Design: Open design is another manifestation of open source projects. It is defined as design projects that can be obtained through public channels under open source licenses, mainly referring to non-source code types of projects, such as icons, UI, sketches, blueprints, etc. These projects must also comply with open source agreements and enjoy the protection of the agreement’s regulations.

Open Documents: Open documents are defined as document projects that can be obtained through public channels under open source licenses. Open documents exist in various projects and cover a wide range of types, such as blogs, encyclopedias, recipes, project documentation, etc.

Open Technologies: Refers to open source code, open source components, open source software, and cloud services based on open source projects obtained from code hosting platforms, open source communities, open source organizations’ official websites, or through collaborative research and development and commercial procurement.

2. Overview of Mainstream Open Source Technologies

With the continuous surge of open source, a huge technological ecosystem has formed around it, and the proportion of open source technologies is greater in emerging fields.

(1)Docker——Open Source Application Container Engine

In recent years, container technology has rapidly swept the globe. Application containerization has disrupted the development, delivery, and operation models of applications, gaining wide application in cloud computing and the internet. Containerization refers to packaging software code and all required components (such as libraries, frameworks, and other dependencies) together, isolating them in their own “containers.” This way, the software or application within the container can consistently move and run in any environment and infrastructure without being affected by the operating system of that environment or infrastructure, achieving “build once, run anywhere.”

Essentially, containerization technology draws inspiration from the “container” solution for goods transportation. The container solution simplifies loading and unloading tasks by consolidating goods into large standardized containers that can be used in trains, trucks, ships, and planes, thereby speeding up transportation. Similarly, containerization technology packages “applications and their dependency packages,” standardizing applications as components, freeing them from tightly coupled relationships with systems, allowing them to be developed, debugged, and run in any mainstream system, thus helping developers and enterprises more conveniently migrate to the cloud.

Understanding Open Source Culture: Openness, Sharing, and CollaborationFigure 1 Container technology draws from the container solution

Currently, Docker has almost become synonymous with container technology. However, Docker itself is not a container but a tool for creating containers, an open source application container engine. As an application virtualization technology, Docker was developed by Docker (formerly dotCloud) and announced open source in 2013. Docker allows developers to package their applications and dependency packages into a portable container, which can then be deployed on any popular Linux or Windows operating system machine, and can also achieve virtualization. Today, Docker, as a popular open source container technology, is favored by an increasing number of developers and large enterprises facing IT transformation.

(2)Kubernetes——Open Source Container Orchestration Platform

As Docker technology gained popularity, problems arose. People found that with the widespread application of microservices technology, the number of containers deployed for projects was increasing, and if Docker was applied to specific business implementations, difficulties arose in orchestration, management, and scheduling. Thus, a management system was urgently needed for simpler, more efficient, and flexible management of Docker and containers. Hence, Kubernetes technology emerged.

Kubernetes, derived from the Greek word for “helmsman” or “navigator,” is abbreviated as K8s, replacing the eight characters of “ubernete” with “8.” Kubernetes is a portable, extensible, and open source container orchestration tool. Container orchestration refers to the automated deployment, management, scaling, and networking of containers, allowing users to manage clustered container applications using this tool. Kubernetes originated from Google’s Borg system, which Google open-sourced in 2014, naming it Kubernetes and donating it to the Cloud Native Computing Foundation (CNCF) in 2015. Currently, Kubernetes has a large and rapidly growing ecosystem, with a wide range of services, support, and tools.

(3)OpenStack——Open Source Cloud Computing Management Tool

OpenStack is known as the most widely deployed open source cloud computing management tool in the world. It manages IaaS cloud resource pools (servers, storage, and networks) through commands or a web-based visual control panel. OpenStack was jointly developed and initiated by NASA and Rackspace in 2010, aiming to provide software open source projects for the construction and management of public and private clouds. In 2012, the OpenStack Foundation was established as an independent organization to manage and promote this technology, marking a watershed moment for the project. According to official data from the OpenStack Foundation, OpenStack currently supports over 100 public cloud data centers and thousands of private clouds, with an overall deployment scale exceeding 25 million computing cores.

(4)Hadoop——Open Source Distributed Storage and Computing Architecture

In the hybrid cloud era, to cope with explosive data growth, the production system’s requirements for continuity, enhance operational efficiency, and reduce operational risks and management costs, enterprises are building “data lakes” to break down data silos and information silos, achieving efficient storage, management, and utilization of massive data. When discussing big data and data lakes, people often associate them with Hadoop.

Hadoop, developed by the Apache Foundation, is an open source distributed storage and computing architecture used for processing large data sets, primarily to address the storage and analytical computation of massive data. Hadoop consists of four basic modules: the Hadoop core libraries, HDFS distributed file system, YARN distributed resource scheduling system, and MapReduce distributed offline parallel computing framework. Additionally, the Hadoop ecosystem includes components such as Ambari, Avro, Hive, Pig, Spark, and more. In the industry, Hadoop has become the recognized general storage and analysis platform for big data, with many vendors providing development tools, open source software, commercial tools, and technical services around Hadoop.

Understanding Open Source Culture: Openness, Sharing, and Collaboration

Figure 3 Hadoop Open Source Ecosystem

There are many popular open source technologies today, such as MySQL, openGauss, Hyperledger, RISV-C, TensorFlow, PyTorch, ROS (Robot Operating System), EdgeX Foundry, EdgeGallery, etc., covering numerous fields such as databases, blockchain, chip design and development, artificial intelligence and deep learning, robotics, and edge computing.

02

Open Source Drives Agile Development

Continuous Delivery and Cloud Computing Innovation

Regarding the advantages of open source, Eric S. Raymond, the soul of the open source movement, once made a vivid metaphor. In his book “The Cathedral & the Bazaar,” he compared the hierarchical closed source world to a cathedral and the open source software development world to a bazaar; compared to the solemn cathedral, the bazaar is more vibrant and conducive to communication between people.

In fact, open source is just like that. Open source, as a flattened, self-consistent management collaboration form, can gather collective wisdom, efficiently mobilize development resources, better achieve complementary advantages, and promote multi-party collaboration and technological iteration. Furthermore, open source sharing is also a distinct feature of the current deep development of digital technology. Gathering strength through an open source approach to achieve “joint technology construction” often yields better results than fighting alone. Currently, open source plays an important role in supporting agile development, DevOps, continuous delivery, and cloud computing innovation.

1. Open Source Promotes Agile Development

In recent years, driven by rapid technological advancements, intensified market competition, diversified and personalized consumer demand, and increasing uncertainty and risk, the speed of product updates has accelerated, and product life cycles are becoming shorter, especially in high-tech electronics, software, and internet industries. “Agile Development” has gained increasing attention as a development model that can respond to rapidly changing demands and shorten delivery cycles.

Agile development is often compared with the Waterfall Model. The Waterfall Model is a classic idealized software development model, also known as the traditional model, proposed by Winston Royce in 1970. The core idea of the Waterfall Model is to simplify complex problems by breaking them down into sequential processes, separating function implementation from design to facilitate division of labor and collaboration, using structured analysis and design methods to separate logical implementation from physical implementation; it divides the software life cycle into six basic activities: planning, requirements analysis, software design, programming, software testing, and operation maintenance, and specifies a fixed order in which they connect from top to bottom, like a waterfall flowing downwards, completing one stage before proceeding to the next.

Understanding Open Source Culture: Openness, Sharing, and CollaborationFigure 4 Waterfall Model/V Model

The Waterfall Model conforms well to the layered design thinking of software engineering and is suitable for large software development, thus becoming the most widely used development model in software development enterprises. The advantages of the Waterfall Model are that it draws from the construction engineering field, making software development as simple as building a house; moreover, it makes the software development process orderly and controllable, enabling good collaboration among project managers, product managers, architects, software engineers, testing engineers, and operations engineers, while ensuring the quality of the developed software products. However, the disadvantages of the Waterfall Model include difficulty in responding to demand changes in a timely manner. Requirements are uncertain and cannot be fully defined at once or within a short period; in the Waterfall Model, as changes occur later in the process, the costs become greater. Secondly, the workload distribution is uneven. For example, early-stage developers and testers cannot participate, while late-stage developers and testers become particularly busy; if the previous stage is delayed, it compresses the time for subsequent stages, leading to delays or quality issues. Thirdly, the value delivery cycle is long. In the Waterfall Model, it generally takes several months, a year, or even years for a product to go from project initiation to delivery to users. Fourthly, the developed software products may not meet users’ needs. In the Waterfall Model, users typically only see a runnable software product in the final stages, and the final product may not be what users truly need.

Agile development centers around the evolution of user needs and employs an iterative, incremental approach to software development. In agile development, software projects are divided into multiple sub-projects, and the results of each sub-project are tested and feature visibility, integration, and functionality. Simply put, agile development does not pursue perfect design and coding in the early stages, but seeks to develop the core functionality of the product in a short time, release a usable version as early as possible, and then iteratively upgrade the product according to new requirements throughout the production cycle, achieving “small steps, quick runs, and rapid iterations.”

Agile development is essentially a mindset without fixed processes or methodologies. Currently, the main implementations of agile development include SCRUM (iterative incremental development), XP (Extreme Programming), Crystal Methods, FDD (Feature Driven Development), etc. Among these, SCRUM and XP are the most popular. Compared to the Waterfall Model, the advantages of agile development are its greater flexibility in responding to demand changes, shorter feature development times, and the ability to obtain market feedback sooner, thus quickly responding to market changes and improving risk avoidance capabilities.

Understanding Open Source Culture: Openness, Sharing, and CollaborationFigure 5 Extreme Programming

In fact, to achieve agile development, embracing open source is a feasible approach. This is because, under the current demands for agile development and rapid iteration, it may not be the best method for most enterprises to attempt to complete all tasks independently. When a company has completed a software project and is ready to launch it, its competitors may have already taken the lead, and leveraging open source can create a latecomer’s advantage. With open source, many basic components of software development are already in place, allowing projects to be completed more quickly and focusing more attention on areas that provide the most value to the business.

In today’s agile development practices, open source technologies are widely used and have expanded from software development to broader fields, becoming key factors in enhancing agility. For example, in the field of chip design and development, as Moore’s Law approaches its limits, traditional strategies for pursuing general performance in chip development are becoming unsustainable. However, high thresholds and commercial restrictions in the chip field hinder further innovation and response speed to the market. In this context, the emergence and rise of open instruction sets (such as RISC-V), open source hardware construction languages (such as Chisel), and open source EDA have made open source technology a key factor in lowering chip development barriers and facilitating agile chip development.

Moreover, according to the “Open Source Ecology White Paper” released by the China Academy of Information and Communications Technology in 2021, 89% of codebases in the IoT industry contain open source code; in the manufacturing and cybersecurity fields, the proportion of open source code is 84%; and in mobile application software, educational technology, pharmaceutical health, and marketing technology industries, the proportion is 82%. Open source is profoundly influencing the innovation and evolution of information technology across various industries.

2. Open Source Promotes DevOps and Continuous Delivery

Modern software not only pursues agility in the development phase but also needs to bridge the information gap between the development and operations ends, promoting efficient collaboration between development, testing, and operations to achieve repair through continuous delivery and resolve issues more quickly. This is because, while agile development greatly increases software development speed, it primarily focuses on the development phase without considering the operations phase. When developers, testers, and operations personnel hand over work, the values and principles of agility are not reflected, resulting in a lack of necessary collaboration efficiency among development, testing, and operations.

DevOps is an abbreviation for Development (development) and Operations (operations). Although major vendors have different focuses in their definitions of DevOps, they are fundamentally consistent, emphasizing the integration of development and operations. Referring to mainstream vendors’ definitions, DevOps can be understood as a combination of cultural concepts, processes, and tools. It can enhance an organization’s ability to deliver software while ensuring excellent product quality, thereby better serving customers and gaining competitive advantages in the market. The purpose of DevOps is to eliminate the barriers between the traditionally isolated development and operations teams, integrating developers, testing engineers, operations engineers, and other relevant personnel into a highly automated workflow, focusing on the rapid delivery of high-quality software that meets all user requirements while maintaining the integrity and stability of the entire system.

Table 2
Definitions and Descriptions of DevOps by Major Vendors

(Source: Various vendors’ official websites)

Understanding Open Source Culture: Openness, Sharing, and Collaboration

DevOps has evolved based on agile development and lean principles, supporting enterprises in maximizing the speed of product or service delivery, covering all aspects from initial ideas, production releases, customer feedback, to implementing improvements based on feedback. In the specific practice of DevOps, various tools are needed to support asynchronous collaboration, seamlessly integrate DevOps workflows, and automate the entire DevOps process as much as possible. The categories of DevOps tools generally include project management tools, collaborative code repositories, continuous integration/continuous deployment (CI/CD) pipelines, automated testing frameworks, configuration management (infrastructure as code) tools, monitoring tools, and continuous feedback tools, etc.

Understanding Open Source Culture: Openness, Sharing, and CollaborationFigure 6 DevOps Reference Architecture

(Image Source: “The DevOps Handbook”, IBM Limited Edition, 3rd Edition)

Today, there are increasingly more open source DevOps tools available for use in development, testing, deployment, delivery, maintenance, and monitoring analysis. For example, version control systems like Git, code review tools like Gerrit, project management platforms like Taiga, automated testing tools like Selenium, application container engines like Docker, container orchestration tools like Kubernetes, continuous integration and continuous delivery tools like Jenkins, configuration management tools like Chef, automated operations tools like Ansible, and monitoring tools like Nagios are all open source.

3. Open Source Drives Cloud Computing Innovation

Currently, a new round of technological revolution and industrial transformation is deepening, with the digital economy thriving, and computing power becoming one of the core competitive advantages of industries. As a mainstream advanced computing model, cloud computing provides foundational support for new technologies such as big data, artificial intelligence, and 5G, while also bringing new momentum for industrial transformation and digital economic development.

Open source and cloud computing are inseparable and mutually reinforcing. On one hand, open source is increasingly becoming the mainstream of cloud computing technology. The open source ecosystem provides continuous momentum for product innovation in the cloud computing industry, playing a crucial role in the rise of cloud computing and continuing to have a profound impact in emerging fields such as cloud-native. In recent years, supported and driven by open source technologies, the concept of cloud-native has been continuously enriched and implemented, rapidly expanding from an ecosystem centered on container technology and orchestration technology to encompass microservices, automated operations, service monitoring, and analysis. This is specifically reflected in: Docker’s technology remains popular; Kubernetes has become the most widely adopted container orchestration technology by enterprises; Redis, as the most popular high-performance open source key-value storage database among microservices and container developers, is currently used by 900 million containers; the cloud-native application development framework Spring Cloud has become one of the leaders in distributed microservices frameworks; the open source distributed storage system Ceph, with its three major features of high reliability, high performance, and easy scalability, has captured a significant portion of the cloud platform storage market; and to date, OpenStack has almost become the de facto standard for open source cloud computing technology.

Moreover, several international giants have acquired open source companies to explore broader markets and enhance their overall competitiveness in the cloud computing field. For example, Salesforce acquired open source application integration service provider MuleSoft to continue consolidating its leading position in cloud services; Microsoft acquired open source cloud computing platform jClarity to enhance its Azure cloud computing platform; and IBM acquired Red Hat to become a global leader in hybrid cloud.

On the other hand, cloud computing has also promoted the development of open source. The key features provided by cloud computing and cloud platforms, such as on-demand use, elastic scaling, and light operations, provide the best runtime environments and important market distribution channels for various open source software. The Open Core and cloud-native models provide new modes for the commercialization of open source and have become the main models adopted by current open source commercial companies. Effective collaboration between cloud platforms and open source communities gives users flexible choices without worrying about vendor lock-in.

However, it is worth noting that because open source licenses generally stipulate that the relevant license requirements must be complied with only when “distributing” the software, most mainstream open source licenses do not consider providing services in the form of SaaS as a “distribution” scenario. Therefore, cloud service providers generally do not have to provide corresponding source code when using open source software to provide cloud services. As several well-known open source software vendors have modified the open source licenses used for their original software to restrict cloud service providers from using open source software to offer SaaS services without giving back to the community, this will to some extent limit cloud service providers’ ability to offer open source software products and services to cloud users.

03

Open Source ≠ Free

Five Major Business Models of Open Source

The definition of open source software originated from free software. Free software refers to software that respects the freedom of users and communities. Roughly speaking, free software grants users the freedom to run, copy, distribute, study, modify, and improve the software (Liberty), but it does not mean that it can be obtained and used for free (Free). To reduce ideological divides and avoid misunderstandings caused by the term “free,” the Open Source Initiative (OSI), established in 1998, decided to use “Open Source Software” as a common name, which has been increasingly accepted. Today, the term open source software is used far more frequently than free software. This shows that open source software is derived from free software, but it does not equate to free software; open source and free cannot be equated.

In fact, although early open source projects were mostly driven by the creators’ passion, to ensure the sustainable development of open source projects and attract more developers to participate in improving defects and enriching features, open source projects do not exclude commercialization. Moreover, a successful open source project usually relies on market promotion and support from commercial companies. The complementarity between open source and commercialization has strongly promoted the innovation of open source technologies. Nowadays, five major business models have formed around open source projects.

1. Subscription-Based Productization and Technical Support Model

Due to the restrictions of some strict open source licenses, open source software does not allow fees to be charged during licensing transfers. Thus, a new term “Subscription” has been used to refer to this charging process. Under the premise of open source software being free, users can obtain technical service support for each version of the product for a certain period through paid subscriptions, such as product upgrades, phone support, etc.; if users do not want to pay for a subscription, they can only obtain the open source product and its source code, while other aspects such as code quality and product stability cannot be guaranteed. A typical representative of this business model is Red Hat. Paul Cormier, who stepped down as president of Red Hat in July 2022, is the proposer of the subscription model for open source commercialization. Although this model has sparked significant controversy since its proposal, it has also helped Red Hat gradually become the largest open source software company in the world, and Paul Cormier has thus become a key figure in Red Hat’s transformation.

2. Dual Licensing Model

The dual licensing model refers to code that has two sets of licenses, one is a traditional open source license (such as GPL, AGPL, etc.), and the other is a commercial license. If an open source software is entirely completed by a single vendor, meaning that the vendor owns the code, then it can adopt the dual licensing model. In this way, on one hand, the vendor can charge licensing fees to commercial users; on the other hand, the product can still integrate into the open source community ecosystem, gain improvement information, receive developer support, build reputation, and increase the user base, thus capturing the market. The relational database management system MySQL is a typical example of the dual licensing model.

3. Open Core Model
As the name suggests, the open core model refers to the core code being open source, while proprietary tools or feature packages are closed source. In simple terms, the open core model is to add some paid features to the open source version, creating a commercial version for sale, and continuously iterating. We often see that many “community versions” of software may be open source, while the corresponding “enterprise versions” may offer many additional features for a fee. Typical examples of this model include Kafka, Cassandra, GitLab, etc. Moreover, Google’s market strategy for the Android operating system is, in a sense, also an open core model. Currently, phone manufacturers can obtain the AOSP (Android Open Source Project) free of charge as the operating system framework, upon which they can further customize and develop. For example, Xiaomi’s MIUI, OPPO’s ColorOS, etc., are all deeply customized based on AOSP. Beyond AOSP, Google also provides paid GMS services (Google Mobile Service). Only Android phones that obtain licensing permission can use GMS services; in the international market, GMS services are essential.
4. Software as a Service (SaaS) Model

In recent years, with the maturation of cloud service technology and the improvement of cloud infrastructure, the SaaS model has gradually emerged. SaaS is a software application model that provides software services based on the internet, characterized by low investment, high returns, and ease of implementation and management. In the SaaS model, users do not need to deploy their servers, and software developers do not need to invest heavily in offline operations personnel. The SaaS model offers high availability, high configurability of applications, and high scalability of functional services, allowing users to flexibly configure according to their needs, leading to high usage efficiency.

Although the SaaS model is not exclusive to open source software, it has increasingly become the mainstream business model for open source software. For example, the unicorn company Databricks in the big data field serves enterprise clients through an open source SaaS model, which has become a key advantage in its development process.
5. Bundling Sales Model

This model primarily targets hardware manufacturers. Market competition pressures hardware companies to develop and maintain software, but the software itself is not the profit center, hence they adopt open source software. This model is widely adopted by large companies. For example, server suppliers like IBM and HP bundle free Linux operating systems with hardware servers for sale. Additionally, there are cases where free open source software is bundled with commercially profitable software to drive sales of the commercial software.

Of course, there are many other business models for open source projects, including selling branded peripheral products, such as the Mozilla Foundation and Wikipedia Foundation selling T-shirts, coffee cups, and other merchandise, which can also be viewed as a form of open source commercialization; advertising models, such as Mozilla Firefox as an open source web browser partnering with Google to make Google Search the default search engine, thereby earning significant income from Google; training (or consulting) models, which provide training, certification, or consulting services based on open source projects; and using open source software to build application systems, expanding the open source ecosystem, and sharing revenues from products within the open source ecosystem.

04

Promoting the Development of the Open Source Ecosystem

Four Types of Open Source Organizations Play Important Roles

The development of open source software and hardware relies on the strong management and promotion of open source organizations behind them. Generally, domestic and international open source organizations can be divided into the following categories:

1. Open Source Solution Providers

Open source solution providers mainly include providers of open source software, open source hardware, and open source technologies. For example, Red Hat, as a global leader in enterprise-level open source solutions, relies on community power to provide clients with technologies such as Linux, OpenShift, containers, and Kubernetes. Arduino, as a pioneer in open source hardware, has developed open source hardware that is popular among electronics enthusiasts and hardware geeks, becoming one of the most mainstream open source hardware platforms and promoting the development of open source hardware. In addition, international vendors such as Microsoft, IBM, Google, Oracle, Intel, and domestic vendors such as Huawei, Baidu, Alibaba, and Tencent are actively embracing open source development strategies and participating in the construction of the open source technology ecosystem.

2. Open Source Alliance Organizations

Open source alliance organizations can be divided into comprehensive open source alliance organizations and specialized open source alliance organizations. For example, comprehensive open source alliance organizations include the Open Source Initiative, Open Source Hardware Association (OSHWA), China Open Source Software Promotion Alliance, and the “Kechuang China” open source innovation consortium. Specialized open source alliance organizations include the Open Design Alliance, the IntelliCAD Technology Consortium, the Open Source GitOps Industry Alliance, the OpenStack China Alliance, and the China Artificial Intelligence Open Source Software Development Alliance.

3. Open Source Foundations

Open source foundations are important components of the open source ecosystem. Generally, open source foundations are public welfare organizations that are non-profit and non-governmental, aimed at helping the growth of open source projects. Open source foundations raise funds through non-profit means such as donations and membership fees, accept corporate donations, and incorporate open source projects that meet the foundation’s requirements under their umbrella, investing funds in project development by providing hardware and software infrastructure, hiring professionals for service purchases, and organizing marketing activities. Unlike investment funds, open source foundations do not invest in enterprises and projects in the form of equity.

For non-profit and neutral open source foundations, they hold the intellectual property rights of open source projects and have no commercial interests, providing a good collaborative platform for contributors, developers, and users; foundations also help developers and open source enterprises through technical services and project incubation, such as software repositories, issue tracking, technical guidance, legal support, project investment, and public relations maintenance; foundations also provide daily operations and governance of projects to meet the management needs at different stages of the project lifecycle. Open source foundations are more popular abroad (especially in the United States), and globally renowned open source foundations include the Apache Software Foundation, Linux Foundation, and Eclipse Foundation. China’s open source foundations are still in the early stages of development. The OpenAtom Foundation, established in 2020, is China’s first open source foundation, marking a milestone.

Understanding Open Source Culture: Openness, Sharing, and CollaborationFigure 7 OpenAtom Foundation Official Website

4. Code Hosting Platforms

Code hosting platforms also hold significant value in the open source ecosystem. First, they provide a collaborative environment for open source software development, gathering the wisdom of a large number of developers to rapidly achieve software iteration and updates. Second, as a code hosting infrastructure, they pool a large number of important open source projects, becoming a resource pool for open source code data. Third, they host open source projects, incubate project communities, and promote the application of open source software. Fourth, they establish indicators such as activity level and popularity, reflecting the hotspots and innovative development trends in open source technology. The Ministry of Industry and Information Technology has explicitly proposed to “accelerate the construction of open source code hosting platforms and other infrastructures” in the “14th Five-Year Plan for the Development of Software and Information Technology Services”.

Currently, the main global code hosting platforms include GitHub, GitLab, and Gitee (码云). In October 2018, Microsoft acquired GitHub for $7.5 billion. Many developers and enterprises in China use GitHub, with the number of users second only to the United States, ranking second globally. On March 18, 2021, GitLab Inc. jointly established a Chinese joint venture company with Sequoia Broadband and Gaocheng Capital, dedicated to providing Chinese users with a one-stop integrated DevOps platform covering the software development lifecycle. Gitee is a Git-based code hosting service launched by the Open Source China community in 2013, and it has become the largest code hosting platform in China, committed to providing high-quality and stable hosting services for domestic developers.

In addition, China’s code hosting platforms include Baidu Efficiency Cloud, Huawei Cloud CodeHub, Alibaba Cloud Code Management Codeup, Tencent’s CODING, and CSDN’s GitCode, among others.

Understanding Open Source Culture: Openness, Sharing, and Collaboration

– References –

1. China Open Source Software Promotion Alliance. “2022 China Open Source Development Blue Book”.

2. iResearch. “2022 China Open Source Software Industry Research Report.” https://mp.weixin.qq.com/s/71C_gElix5stCQyn9IYnLA

3. Open Source Initiative (OSI). “The Open Source Definition (Annotated).” https://opensource.org/docs/definition.php

4. Gitee. “An article to help you understand ‘open source’ and its past and present.” https://my.oschina.net/gitosc/blog/5016932

5. Gu Yekai. “Promoting the Development of Domestic Basic Software through Open Source.” http://cpc.people.com.cn/n1/2021/1227/c64387-32317470.html

6. Microsoft. “What is DevOps?” https://azure.microsoft.com/zh-cn/resources/cloud-computing-dictionary/what-is-devops

7. IBM. “What is DevOps?” https://www.ibm.com/cn-zh/cloud/learn/devops-a-complete-guide.

8. Amazon Web Services. “What is DevOps?” https://aws.amazon.com/cn/devops/what-is-devops

9. “The Love-Hate Relationship between Open Source and Cloud Computing.” https://baijiahao.baidu.com/s?id=1651422669393621070

10. Xue Ge’s Vision. “Business Models and Innovations of Open Source.” https://www.36kr.com/p/801990980906757

11. Paper Airplane. “Business Models of Free/Open Source Software/Hardware.” https://zhuanlan.zhihu.com/p/360893820

12. Driss.Vin. “Research on Open Source Code Hosting Platforms (Including Industry Interviews).” https://mp.weixin.qq.com/s/DS3H0gnTwdfUDmRYn2s0oA

Understanding Open Source Culture: Openness, Sharing, and Collaboration

2022 Annual Forum is Coming Wuhan

Understanding Open Source Culture: Openness, Sharing, and Collaboration
Long press the QR code for details
Or clickRead the original text to register
Understanding Open Source Culture: Openness, Sharing, and Collaboration
Understanding Open Source Culture: Openness, Sharing, and Collaboration
Understanding Open Source Culture: Openness, Sharing, and Collaboration
Understanding Open Source Culture: Openness, Sharing, and Collaboration
Understanding Open Source Culture: Openness, Sharing, and Collaboration

Leave a Comment