Up
0
Down

Doing business at “the bazaar”. How open source software is [still] changing software engineering globally

An open market; a bazaar

Free/Libre Open Source Software (FLOSS) is a software development and distribution model that allows users to freely access, use, modify, and redistribute the source code and other, complementary, assets of software. FLOSS began to emerge in the late 1970s and early 1980s, with the development of the GNU project by Richard Stallman and the creation of the Free Software Foundation (FSF) in 1985. In the 1990s, FLOSS gained mainstream attention with the development of the Linux operating system by Linus Torvalds, which quickly became a popular alternative to proprietary operating systems. The 1990s also saw the development of important FLOSS licenses, including the GNU General Public License (GPL) and the Berkeley Software Distribution (BSD) license. In his famous essay “The Cathedral and the Bazaar” [1], Eric Raymond uses the concept of the bazaar to describe the culture of openly co-creating software with the Open Source Software model in contrast to the less agile, closed source model that big software companies, like Microsoft, were using at the time. 

In the early 2000s, the FLOSS movement continued to grow, with the establishment of the Open Source Initiative (OSI) and the adoption of FLOSS by major corporations such as IBM, Google, Meta and big tech companies in general. FLOSS also played a significant role in the development of the World Wide Web, with the creation of the Apache web server and the PHP scripting language. Nowadays, FLOSS is used in a wide range of applications, from desktop and mobile operating systems to web servers, databases, and cloud computing platforms. Key achievements of the FLOSS movement include the democratization of software development, the promotion of collaboration and knowledge sharing, and the creation of a vibrant ecosystem of software tools and applications that benefit users around the world. FLOSS has also helped to advance important social and political causes, such as privacy, security, and digital rights.

How can Free/Libre Open Source Software be a competitive advantage for a software company?

FLOSS has evolved from a radical concept to a highly accepted and appreciated model in the software industry. Its rising popularity and adoption can be attributed to several competitive advantages, it offers to software companies that are utilizing it.

To begin with, one major advantage is, cost efficiency. Open source software eliminates the need for purchasing expensive licenses associated with proprietary software. This, in itself, can result in significant savings. However, the benefits extend beyond initial costs. The fact that the software can be customized and maintained at a lower price compared to proprietary software translates to more substantial long-term cost benefits. Moreover, as FLOSS is developed by a global community, the costs of development and innovation are shared, making the software more economically sustainable.

The community development aspect of FLOSS brings us to another vital competitive advantage. FLOSS is often backed by a vibrant, active community of developers, enthusiasts, and experts who voluntarily contribute to the software's development and refinement. This means that the software can be innovated and improved at a pace that might be hard to achieve with a conventional in-house team. The open-source community also aids in identifying and rectifying bugs swiftly, often faster than what may be possible in a typical software company setup.

FLOSS is celebrated for the high degree of flexibility and customizability it provides. Unlike proprietary software that comes with a predefined set of functionalities, open source software can be modified and adapted to suit a company's specific needs. This flexibility allows software companies to offer tailor-made solutions to their customers, thereby gaining a competitive edge in the market.

The transparency intrinsic to FLOSS fosters trust — a fundamental element in today's digital world, where data breaches and cyber threats have become common. Since the code is open for inspection, customers, partners, and other stakeholders can verify the claims a company makes about its software. This transparency and the subsequent trust it builds can be a substantial competitive advantage.

Open source software's interoperability is another feather in its cap. By adhering to open standards, FLOSS is often easier to integrate with other software and systems. It enables software companies to construct and propose more versatile and comprehensive solutions to their clients. In a rapidly evolving digital ecosystem, this ability to collaborate and integrate can be crucial to staying competitive.

Attracting and retaining top talent is a universal challenge in the software industry. Many developers prefer working with open-source technologies as it allows them to improve their skills, contribute to the community, and build a visible portfolio. Thus, companies that embrace open source can attract top talent, which in turn, fuels innovation and growth.

Releasing software as open source also allows companies to test their product in the market, garner user feedback, and make necessary improvements before committing to a commercial release. This accelerated pathway to achieving product-market fit can significantly aid in the company's growth.

Lastly, the longevity of open-source software and the avoidance of vendor lock-in makes FLOSS a preferred choice for many businesses. If a proprietary software producer goes out of business, its customers could be left without vital support. With open-source software, the code remains available for others to maintain and improve, irrespective of the status of the original creators. This provides customers with the assurance that they are not solely reliant on one vendor's vision, lifespan, or financial stability.

Nevertheless, despite these considerable advantages, FLOSS also presents unique challenges. These include developing a sustainable business model, ensuring quality control with multiple contributors, and navigating legal and license intricacies. Companies wishing to leverage the competitive advantages of open source need to approach these challenges thoughtfully.

From the “Open Source” to the “Inner Source” Software development model

FLOSS has revolutionized the world of technology by fostering collaboration, transparency, and innovation. It has empowered developers worldwide to contribute to and benefit from a vast ecosystem of shared knowledge and code. Open source has not only impacted software development but has also inspired the evolution of new development models, such as the Inner Source software development model. 

Building upon the success and principles of FLOSS, the Inner Source Software development model emerged as a way to bring the benefits of open collaboration and transparency within organizations. Inner Source adopts similar principles to open source, but instead of focusing on collaboration with external contributors, it centers around fostering collaboration within an organization. It enables developers from different teams and departments to contribute to shared codebases, breaking down organizational silos and promoting cross-functional collaboration.

Key Principles of Inner Source include but are not limited to:

  1. Open Collaboration: Inner Source encourages open collaboration within an organization, allowing developers to access and contribute to shared codebases. It promotes a culture of transparency and encourages knowledge sharing across teams.
  2. Modular Architecture: Inner Source emphasizes modular architecture, enabling independent development and deployment of software components. This modular approach fosters reusability, scalability, and promotes a culture of ownership among developers.
  3. Meritocracy: Similar to open source, Inner Source thrives on meritocracy, where contributions are valued based on their quality and impact. This principle encourages active participation and recognizes the expertise of individual contributors, irrespective of their organizational hierarchy.
  4. Continuous Learning: Inner Source encourages continuous learning by providing developers with opportunities to work on diverse projects and collaborate with experts in different domains. This cross-pollination of knowledge and skills enhances professional growth and innovation within the organization.

Whereas the benefits of Inner Source for a company or organization can be summarized as follows:

  1. Knowledge Sharing: Inner Source breaks down information silos and encourages knowledge sharing across teams, leading to enhanced collaboration and faster problem-solving. Developers can learn from each other's experiences and leverage shared expertise.
  2. Reusability and Efficiency: The modular architecture of Inner Source promotes code reusability and avoids duplication of efforts. Developers can leverage existing solutions, components, and libraries, saving time and effort while ensuring consistency and quality across projects.
  3. Cross-Team Collaboration: Inner Source enables collaboration between teams that may have previously worked in isolation. By contributing to shared codebases, developers gain exposure to different perspectives and approaches, fostering a culture of cross-team collaboration and innovation.
  4. Enhanced Quality and Scalability: The collective effort and peer review in Inner Source result in improved code quality, as multiple developers contribute their expertise to the shared codebases. Furthermore, the modular architecture facilitates scalability, as teams can independently work on different components without affecting others.

By embracing the principles of transparency, collaboration, and knowledge sharing, Inner Source has brought the power of open source within organizations, enabling them to harness the benefits of collaborative software development. With its emphasis on modular architecture, meritocracy, and continuous learning, Inner Source fosters innovation, efficiency, and scalability within organizations.

Open Source Program Offices (OSPOs). A step towards strategic growth within a company or organization using FLOSS

In the digital era, open source software has emerged as a powerful force driving innovation, collaboration, and growth. Open Source Program Offices (OSPOs) have gained significant attention as they enable companies and organizations to harness the potential of FLOSS. By establishing an OSPO, entities can strategically leverage FLOSS to foster innovation, reduce costs, enhance development processes, and build a vibrant ecosystem. 

OSPOs play a vital role in promoting innovation within companies and organizations. By adopting FLOSS, entities can tap into a vast pool of creative and talented developers from around the world. OSPOs help in identifying relevant FLOSS projects, evaluating their potential benefits, and integrating them into the organization's infrastructure. By encouraging internal collaboration and engaging with external communities, OSPOs facilitate the exchange of ideas and best practices. This collaborative environment fuels innovation, leading to the development of cutting-edge solutions and products.

As we already mentioned, cost reduction is a significant advantage offered by FLOSS, and OSPOs act as a bridge between organizations and the open source community. Through careful evaluation and selection, OSPOs identify FLOSS solutions that align with the organization's requirements. By adopting these solutions, companies can significantly reduce their expenditure on software licenses and proprietary tools. Moreover, OSPOs can help organizations effectively manage and mitigate risks associated with using FLOSS by providing guidelines for licensing, compliance, and intellectual property management.

OSPOs introduce streamlined and efficient development processes by leveraging the power of FLOSS. Open source software promotes collaboration, transparency, and peer review, which leads to higher code quality and faster development cycles. OSPOs assist in implementing agile development methodologies, fostering a culture of open communication, and nurturing cross-functional teams. This collaborative environment not only enhances the quality of software but also improves productivity, enabling organizations to respond quickly to market demands.

OSPOs serve as a bridge between organizations and the FLOSS community, enabling them to actively contribute to open source projects. By contributing code, bug fixes, and new features, companies can build their reputation and influence within the FLOSS ecosystem. This participation fosters valuable relationships with developers, users, and other organizations. Furthermore, OSPOs can facilitate the establishment of partnerships, collaborations, and knowledge-sharing initiatives, which strengthen the overall FLOSS ecosystem and generate new business opportunities.

Incorporating FLOSS through OSPOs not only brings immediate benefits but also ensures long-term sustainability. By actively engaging with open source communities, organizations can stay updated with the latest technological advancements and industry trends. This continuous learning and adaptation enable companies to remain competitive in a rapidly evolving market. Additionally, OSPOs can contribute back to the community by releasing their internal projects as open source, giving back to the ecosystem that supports their growth.

Open Source Program Offices (OSPOs) provide a strategic framework for companies and organizations to leverage the power of FLOSS for growth and innovation. By facilitating collaboration, cost optimization, enhanced development processes, and ecosystem building, OSPOs enable entities to capitalize on the benefits of FLOSS effectively. As companies continue to recognize the potential of open source software, establishing OSPOs becomes a crucial step towards staying ahead in the digital landscape, fostering a culture of innovation, and achieving long-term strategic growth.

So it seems that there can be structure in a “bazaar” as well. The open, dynamic and continuously evolving opens source community has now evolved to a mature ecosystem that fosters innovation, co-creation and even inspires corporate processes. With the new advancements in software: AI solutions, blockchain and decentralized applications in general, virtual and augmented reality and so forth, one thing is guaranteed. From here onwards, the sky is the limit. 

References:

[1] The Cathedral and the bazaar, Eric Raymond [online]

Image Credit: Peter Schulz on Unsplash