DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

How are you handling the data revolution? We want your take on what's real, what's hype, and what's next in the world of data engineering.

Generative AI has transformed nearly every industry. How can you leverage GenAI to improve your productivity and efficiency?

SBOMs are essential to circumventing software supply chain attacks, and they provide visibility into various software components.

Related

  • Top 11 Selenium Testing Misconceptions You Should Know
  • In-house Tool for Performance Testing
  • Open Source Tools Options in Web Application Development
  • Comparing SCA Solutions: WhiteSource, Synopsys, Snyk, and Sonatype

Trending

  • Software Specs 2.0: An Elaborate Example
  • My Dive into Local LLMs, Part 1: From Alexa Curiosity to Homegrown AI
  • Effective Exception Handling in Java and Spring Boot Applications
  • What Is Plagiarism? How to Avoid It and Cite Sources
  1. DZone
  2. Data Engineering
  3. Big Data
  4. What's The Most Important Part of the Open Source Ecosystem?

What's The Most Important Part of the Open Source Ecosystem?

The community of users and contributors who share their knowledge, experience, and insights to improve collaboration, innovation, quality, and security.

By 
Tom Smith user avatar
Tom Smith
DZone Core CORE ·
Feb. 15, 18 · Analysis
Likes (5)
Comment
Save
Tweet
Share
7.1K Views

Join the DZone community and get the full member experience.

Join For Free

To gather insights on the current and future state of open source software (OSS), we talked to 31 executives. This is nearly double the number we speak to for a research guide and believe this reiterates the popularity of, acceptance of, and demand for OSS.

We began by asking, "What do you consider to be the most important elements of the Open Source ecosystem?" Here's what they told us:

Community

  • 1) Good integration with other tools. Invariably, a variety of tools need to work well with one another in order to accomplish something useful. 2) Having a healthy community. A large set of users exposes the open-source software to a variety of use-cases and thereby drives innovation. 3) Listening to the community. This one is the complement to having a good community. It is important for any open source project to listen to the incoming feedback and address it promptly. 4) Transparency. It is important to communicate to end users that features have been tested thoroughly, those that are in beta and especially if there are any newly discovered bugs or vulnerabilities in the software. 5) Avoid getting locked-in to a vendor. Since the software is open and many users are trying out its features, it is easy for any user/company to know what features work, the roadmap and if it will suit their needs. The open APIs and ecosystem also make it easy in case the user decides a different tool is a better fit for their use-case. 6) Better security features. Since the entire architecture and the code are in the open, the set of security features being supported is easy to figure out, and if something is missing it’s easy to influence the roadmap of the project.
  • The healthiest open source projects have a strong level of contribution from actual users, and they typically have a genesis in a practical solution to a big, real-world problem that was solved within an organization. As a commercial product manager, there is always a tendency to favor announceable enhancements that will help drive marketing and sales. Existing users care more about getting bugs fixed, manageability enhancements, and the like. A really healthy open source project has a good balance of people pushing the boundaries with new ideas and features, and people trying to make their own lives better through fixing bugs and nagging manageability issues.
  • Open access and comment contributions. Enable start-ups to explore code developed by someone else to quickly deploy their own product.
  • A people-first driven community. A culture based on meritocracy. A philosophy of “doers.” If you don’t contribute, people don’t listen to you. “Words are cheap, show me the code,” Linus Torvalds famously said. Share and collaborate.
  • 1) Look at longevity – is there a company behind the code, why are they building it, will they continue supporting it, what is the frequency of updates? 2) Active contributor mechanism and community.3) Active forum community for help and support.
  • Community. Some projects have good technology but can be difficult to get help. The Docker community, for example, is very strong. This is the value of open source. The ability to communicate directly with the people who created the software.
  • The most important element of being part of the OS community is the responsibility of each member to give back. It's important to contribute to the kernel of all our Open Source projects because doing so ultimately gives us a larger scope of features, quality and user feedback from which we can benefit.
  • An open and inclusive community is critical--open source software is at its best when real-world users suggest improvements and contribute new features. It’s impossible for the original creators of a project to design perfect software that meets the needs of a diverse set of users. That’s why collaboration is so important in the space and why open source solutions often evolve so quickly; there’s a chorus of feedback and proposed functionality from people using the software in the real world. Cross-community collaboration is important, too. No software project exists in a vacuum. For example, many Apache Flink users also use Apache Kafka to move their data into and out of Flink. It’s best for users, then, that Flink and Kafka integrate seamlessly and can work together to provide a complete solution for developers.
  • Brings developers and platforms closer to solutions for problems. Look at how something operates, see the software archaeology. Community, direct relationship with others that created or are working on a component. A big change has been GitHub. Used to be Apache was the home now GitHub is the new software commons.
  • The license that powers the project, the community that builds the project and the availability of tooling to interact with the project all are make-or-break elements for a selected ecosystem or project. If any of them isn’t right, it’s very difficult to make the decision to depend on that component. If any change in the future, this can be the action that makes a company decide to move away from that component.
  • The important elements of the open source ecosystem are: 1) Community: An open source project’s success is defined by the extent of the community that rallies around it. The community for any successful open source ecosystem needs to be holistic. Not just the developers, but the users of the software must also consider themselves an active part of the community. End users can test the software and report bugs, and they can also contribute to the documentation. 2) Engagement: Once there is a community with a critical mass around any open source project, they must stay engaged and active. They should add value by submitting bugs, writing documentation, tutorials, and answering questions in forums. Successful open source projects provide channels for interaction between different users and between users and contributors. 3) Strategic Direction: Each open source project needs to have at least a few people (or an organization) responsible for guiding the project in the right direction. Without an overarching strategy, open source software risks gradually become irrelevant and losing the community and its engagement.

Innovation

  • Open source as a means to foster innovation is the most important element. It allows you to put your work out into the world and collaborate with other people, which ultimately fosters innovation.
  • Sharing code with others to use. Able to solve problems. Able to see the box and see what works. Have insight into the code, nothing is hidden. Thousands of eyes are looking at the code. Greater quality of source code. The error count is lower.
  • The four open source centers of gravity: cloud, data, AI, and transactions. The open governance meritocracy. Everything is driven by the community. Unleashing developers to put out code with organic innovation.
  • There are four key elements that make up a successful Open Source ecosystem. They include: 1) Believers: Most developers who are involved with an open source project are a believer, passionate, and ambitious. Those characteristics are extremely valuable for a successful open source software. 2) Innovation: The developers involved with the development of an Open Source software are independent thinkers and have the creativity to innovate new ideas. 3) Advocate: An Open Source ecosystem consists of a community of developers, users, and researchers who would act as the main advocate for the open source software. 4) Quality: An Open Source community are the first people who would be testing the software and report bugs to improve its quality.
  • Open source is the place where companies (even competitors), non-profits, NGOs, governments, and individuals all come together to cooperate and innovate. The ability to extend someone's work and make it do more is the very core of what makes both open source and innovation work. As an example, a few years ago Java Servlets and dynamic web pages were the hot technology. Now that technology is embedded in all kinds of things, but the work has moved up the stack into more interesting problems. This commoditization and extension move faster because of the way licensing works in open source software. It allows us to collaborate, embed, and extend.
  • Key pieces of technology projects can be shared without reinventing the wheel thus leading to innovation. Even competitors can share some technology. Ford and Chevy coordinate on the transmission for the Mustang and Camaro.
  • The vast network of developers and users, who are constantly innovating, building on and sometimes fixing one another’s work. Granted, progress is not as reliable as with a single, unified, in-house development organization. But the open approach has borne valuable fruit.
  • We believe that the most important elements of the open source ecosystem are the smart minds involved in building the open source software components. We believe that being a part of that ecosystem is what drives creativity and feature-rich innovations and has rendered proprietary-only stack unviable. Open source has commoditized big data and delivered innovation to the masses. 
  • The overall speed of innovation that open source brings to users and the relatively quick standardization around common protocols and interfaces is something that is tremendously rare in commercial software. If it wasn't for open source web servers and the HTTP protocol, we might still be debating whether Novell was better than HP/UX to share files. For a more modern example, the introduction of containerization marked by Docker’s rise to popularity (and more recently Kubernetes) is quickly shaping how applications have to be distributed and orchestrated.

Other

  • Usability and Supportability. Historically, Open Source software has been highly functional, but the UX was lacking. There seems to have been a dramatic improvement in usability, but this needs to remain front and center to ensure that OSS can be used by everyone in an organization.

  • Keeping track of the bill of materials in your code in an automated way. Know what you are using and where. Know the top level and all libraries. Look at your own apps for vulnerabilities and then look at your customer base with static analysis.
  • Open source has gone from the fringe a decade ago to a strategic decision for developers and IT executives. Able to reuse frameworks and libraries. Reduce time to market. A strategy for future directions to not get locked into particular vendors. Looking to open source frameworks and toolsets to abstract away dependencies on cloud providers.
  • Linux by far. Rich with the kernel, compiler, libraries, and open JDK.
  • The ecosystem only exists because many, many developers are very passionate about coding. They love to solve a problem in an elegant way and then share their solution with others, often in exchange for public recognition (like “Stars” on GitHub). In the past, they used to do that in their free time. Now that companies have understood the value behind this approach, they allow their employees to create/contribute to open source projects during work time. I think this development was key to the rise of the “new generation” of open source that is not primarily driven by ideology but business reasons and personal passion. Clear open source licenses such as Apache and MIT are crucial because they provide a certain degree of legal certainty to companies that consume open source. If this was not the case, there would not be the “demand” for it on a scale that provides the aforementioned recognition or even business, hence the whole dynamic would be crippled. Unfortunately, there are still legal matters around open source that are not entirely solved, and especially patent trolls can be a bigger threat to companies that produce open source because they are more exposed than those that do not provide transparency about their code.
  • That’s hard to say because significance requires the distance of time to evaluate what was meaningful and what was just noise that was very exciting in the moment but didn’t actually change anything. We just released a pretty comprehensive dive into the relative popularity of various JavaScript frameworks over the last year. I think what’s inescapable is that the community of open source contributors is huge and growing. What’s changing is that more of them are using our ecosystem, which began as a resource for server-side JavaScript, to distribute and discover code for front-end web engineering. Taken as a whole, the JavaScript community has seen and continues to see stratospheric growth, the combination of strong growth in a hundred communities combined into a single language. 2017 saw JavaScript going to the moon.
  • The people. Like Soylent Green, open source is people.
  • Open source has democratized software development and allowed engineers to create rich applications on top of increasingly sophisticated “plumbing.” Abstractions have increased over time which is good for developer productivity -- for example, Typescript versus writing raw JavaScript, CSS compilers like Sass rather than writing CSS by hand. These capabilities promise to bring more developers into the fold and help folks express their ideas in code.
  • In the geospatial world, the open source trend has taken root over the past couple decades, deployed as software sometimes called Free and Open Source Software for Geospatial, or FOSS4G. Using open source geospatial software offers a number of benefits compared to proprietary approaches, including better software utilization, scaling without penalty, lower TCO, better pricing and better-skilled staff, compatibility with modern IT, and project persistence and resilience. The greatest benefit of leveraging open source is the resilience and continuity it builds within your organization. Developing projects in the open provides visibility to each member of your organization. This way, if an employee leaves, another should be able to pick up where he or she left off. 
  • The landscape of open source software is so large at this point, and it is ever-expanding. Keeping the momentum going is incredibly important.

Here’s who shared their insights with us:

  • Anthony Calamito, Chief Geospatial Officer, Boundless
  • Jakob Freund, CEO, Camunda
  • Pete Chestna, Director of Developer Engagement, CA Veracode
  • Julian Dunn, Director of Product Marketing, Chef
  • Matt Ingenthron, Senior Director of SDK Engineering, Couchbase
  • Stephan Ewen, co-founder and CTO, data Artisans
  • Amol Kekre, Co-founder and Field CTO, DataTorrent
  • OJ Ngo, Co-founder and CTO, DH2i
  • Stefano Maffulli, Director of Community, DreamHost
  • Kelly Stirman, CMO and VP Strategy, Dremio
  • Konstantin Boudnik, CTO Big Data and Open Source Fellow, EPAM
  • Tyler McMullen, CTO, Fastly
  • Jeff Luszsz, VP of Product Management, Flexera
  • Angel Diaz, V.P. Developer Technology and Advocacy, IBM
  • Ben Slater, Chief Product Officer, Instaclustr
  • Grant Ingersoll, CTO, Lucidworks
  • C J Silverio, CTO, npm
  • Mark Gamble, Senior Director of Product Marketing, Analytics, OpenText
  • Francis Dhina, CEO, OpenVPN
  • Sirish Raghuram, CEO and Co-founder, Platform9
  • Neil Cresswell, Co-Founder, Portainer.io
  • Lars Knoll, CTO, Qt
  • Brad Adelberg, Vice President of Engineering, Sauce Labs
  • Giorgio Regni, CTO, Scality
  • Dor Laor, CEO, ScyllaDB
  • Harsh Upreti, Product Marketing Manager, API Products, SmartBear
  • Jean-Baptiste Onofre, Technical Fellow and Software Architect, Talend
  • Antony Edwards, CTO, Testplant
  • Matt Ellis, Architect, TIBCO Software
  • Karthik Ranganathan, Co-founder and CTO, YugaByte
Open source Software development Open-source software Big data code style kafka

Opinions expressed by DZone contributors are their own.

Related

  • Top 11 Selenium Testing Misconceptions You Should Know
  • In-house Tool for Performance Testing
  • Open Source Tools Options in Web Application Development
  • Comparing SCA Solutions: WhiteSource, Synopsys, Snyk, and Sonatype

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • [email protected]

Let's be friends: