Showing genuine interest when building relationships with the open-source community can help the success of your product and trust among collaborators.
For those who have been following and are familiar with open-source technology, we all know that it works and comes with many benefits. The last year has been a testament to this as we saw many software giants such as Microsoft, IBM, and Oracle consolidate their positions in the open-source community.
Mainstream adoption of this trend will only continue to grow as many organizations, both large and small, turn to open source in tough economic times to reduce costs and improve their ability to innovate. In fact, a recent survey found that 68% of organizations recently turned to open source during the economic downturn to help them save time and money. While Big Tech companies have the resources they need to succeed, this begs the question for many smaller organizations and development teams considering open source: how can they leverage the myriad of benefits it has to offer in order to be successful?
Let’s take a look at the advantages of open source, how to build and innovate a product with this technology, and the necessary steps to garner the trust of the open-source and developer community.
What are the advantages of open source?
One of the main advantages of open source is the capability to collaborate across different groups of people that wouldn’t cooperate otherwise due to different companies and geographic limitations, among other reasons. This cross-pollination of various developers helps produce high-quality software because of the peer-review process with hundreds of people collaborating to get improvements implemented, making the wisdom of the crowd an important factor.
Moreover, open-source technology is usually merit-based and not purpose-built to aid the bottom line of a company. This tends to produce higher-quality software, is built with extensibility in mind, resulting in more affordable ways to customize and extend the technology for particular use cases. Users can select from a large number of providers that use the same underlying open-source technology without the commitment of vendor lock-in.
Additionally, the transparency of open source software makes it more secure since anyone can audit the source code. The larger number of code auditors means that security vulnerabilities are spotted and solved much quicker. Open-source communities provide a great deal of peer-to-peer support and help, allowing people to engage in an authentic way. Members genuinely want to see other members of the community be successful in using the tool on top of which the community has been built. This can also help streamline and speed development for any application with open-source dependencies.
How to build and innovate products using open source
The first step to building products using open source is to pick the right open source technologies. It’s important to be lean by creating experiments, moving to PoC, verifying assumptions, and building iteratively. Don’t jump straight into the hype train of the latest open source technology that is buzzing. One example might be small companies selecting Kubernetes for scale out of the gate, which adds considerable complexity to applications that don’t really need it. It’s better to start with something simple, say Ruby on Rails or Python Django. After you’ve gone through this stage, you can determine the product-market fit, start working on the second version of the product and set the proper fundamentals.
Second, choose open-source projects that have an active and vivid community. Even if the technology is considered “old school,” communities are a wonderful thing. For example, the development of Laravel gave new life to the PHP language. The goal is to get the open-source community to ensure the longevity of the project and provide good support through people willing to lend their expertise to extend the tech according to your needs.
A great way to commercialize an open-source project is through a packaged experience. In essence, shepherd the open-source project to flourish on its own terms while concurrently packaging an opinionated version of the open-source project to solve a particular business problem for particular users. This differentiates the product by letting the open-source community grow the project on its own while asking for user feedback for the commercial project. Time-to-value is a great metric to differentiate between the OSS and the commercial one, which simply allows the user to arrive quicker to the point to get value.
In the case that you want to innovate an existing product using open source, the best way to do this is to carefully move towards open source components to build and quickly deploy applications.
Gaining the trust of the open-source community
Trust is very hard to build and very easy to destroy. This is why it’s so important to be consistent in how you engage with the open-source community. Traditional sales and marketing tactics won’t work with developers because they value authentic engagement and a genuine interest for the open-source community and its philosophy. A generic approach typically used to garner the attention of other audiences will not work and will give the wrong impression that you’re only utilizing the open-source component to further your business goals. It’s important that developers see you as an expert in the space, which is only possible if you have credibility. In order to do this, engineers of the company must spend time with the community engaging, chatting, and building their credibility. Unless a person has developed their own personal credibility, the community members may not trust the expertise of someone new. This is particularly challenging for companies that need to steer open source communities since their advocates need to be already experienced and known in the community.
Whether you’re building a new product from scratch or innovating an existing one, there are many benefits to using open source. Understanding the advantages of it, the open-source components, and aligning it with your goals are the first steps to determining if it’s the right fit for your product and company. Beyond that, showing genuine interest when building relationships with the open-source community can easily make or break the success of your product and trust among collaborators. It’s a long-term commitment, so patience is key.