Building a Business from an Open Source Project: A Case of White Box Tools
The guest on the show is John Lindsay, the creator of Whitebox Tools and a professor of Geomatics at the University of Guelph. John introduced us to Whitebox Tools in a previous episode and described it as a collection of open source geospatial analysis tools that can be embedded in other applications. In this episode, John is sharing with us how they are building ways to generate revenue from Whitebox Tools, while maintaining its status as an open source project – yes, this is possible!
When is a Business the Right Solution for an Open Source Project?
Being a developer for an open source project could be an experience of two extremes. On one hand, while it may be immensely rewarding to encounter day to day users of the software you have developed, but the experience could be quite stressful as well, especially as the user community expands.
Usually, open source developers have their day job, and only spare their personal time to work on the open source project. When the user community grows, the demands of this larger community may take a toll on the time of the developer. It may be a daunting and potentially draining task to have to respond to too many requests from users. This could lead to developer burnout, which could lead to a project dying out.
A growing user community is a good thing, but for the developer this growing demand can be taxing. At some point, it may be difficult for the developer to provide a satisfactory level of support to the user community as it scales. This means that the project would need more hands to support its userbase.
Generating revenue for an open source project builds more stability for the project, and means that it might be there in the future, with the right support and resources.
If you are having doubts about the idea of building a business from an open source project, then think of the 1000s of users of open source software who not only find them useful for education and research, but also in generating revenue for companies. If there are companies that can use open source tools to generate revenue, then it makes sense that the developer of the project should be able to leverage it in generating revenue as well.
The Process of Building a Business from an Open Source Project
Building a business from an open source project is not very different from how enterprises build their businesses. The only may be the challenge of preserving the integrity of the project as strictly open source. Outside of this, the business world presents a lot of the same challenges.
Finding a Co-Founder
Doing business alone could be really lonely, especially for a developer who is already overwhelmed by the demands of the project and community. It may be useful to find a co-founder who can help with the business side of things. At this point, it is important to know what your limitations are, and use them as a guide for the things you should be looking for in a co-founder. The right partnership is one in which the strengths of the partners fill in on the weaknesses of the other and contributes to achieving the goals of the company.
Laying Out the Business Foundation
In exploring the ways to generate revenue for the project, there are several things that should are imperative for the project’s success: maintaining its integrity and defining its success
Keeping the Integrity of Your Goals
A growing user community may be a good indication that the original goals of the project are serving the users well. When developing a business model for the project, it is critical to prioritize maintaining the integrity of those goals as much as possible, especially in the regards of it being an open source project. If the user community feels short changed, the project users may shrink and the possibility of the business being a success will diminish. It is very important to uphold the goals that keep the project intact, even when setting new goals.
Defining Your Own Success
For businesses built from open source projects, success may not mean the same thing as those built in commercial enterprise. Founders can have their own definition of what success is for the business. Sometimes this could mean the ability to sustain a workforce that supports the user community, and keeps the project alive.
Whitebox Tools are exploring ways to generate revenue that will be useful in keeping the project alive in the long term with adequate user support, learning materials, and improving and developing new tools. To them, success is being able to maintain and develop the Whitebox toolsets, and support the community that has gathered around it. This has helped Whitebox keep its focus on the user community, and maintain much of its original framework of the project.
Ways to Earn Revenue from an Open Source Project
One way to generate revenue from an open source project is by creating new paid tools. These paid tools could be those that extend the functionality of the free tools as in the case of Whitebox Tools Extension. In this way, the status of the free tools would still be maintained as open source as revenue is generated from the paid extension. In order for this to be successful, the paid tools should be compelling.
Creating Compelling Products
A compelling product is one that users are interested in. It may be a challenging task to know what tools the people want, or whether they will be willing to pay for them. There are some things that can help guide the creation of paid tools. One is looking at various thematic areas that your tools are geared towards and figuring out some tools that would have a great interest in those application areas. This will give an idea of where to focus development efforts. If you can create a toolset that fixes all the problems a certain type of user has, you become essential to that user.
Engaging with existing users of your product can also be a great resource for knowing where to focus development efforts. There is much that can be extracted from the conversations where users describe how they use a product, and how they would like to use it.
Gaps in a particular field can also provide an opportunity for developing a paid tool. A good place to look is in areas of recent advancements. Spotting a gap will enable you to create a solution that will be used by people working in a particular application area, and its more likely you’ll beat someone else to it.
The “Pay as Much as You Can” Pricing Model
“Pay as much as you can” is a pricing model that lets people donate to free tools. The Whitebox Tools website has this pricing model in the form of buttons displaying amounts between $0 and $100 on their tools download page. This presents an opportunity for users to support the project, even if they may not be able to afford the paid tools. It may also help to put in a note explaining how the donations will be used in support of the project.
Steering the Business towards Success
Thinking of the right tools to create, and having the right pricing model is not all that there is to succeed in this business.
Increasing Product Visibility
In marketing, the ideas that spread are the ones that win. It’s hard to achieve success if the project you are working on is invisible. It is unexpected for people to care about things they do not know exist or that they cannot find. This is an especially big challenge for products that are predominantly backend.
Usually, it is the frontends that get more attention than the backends that power them. Opting to create your own frontend may be a way of making your project more visible, but if your solution is designed to power other applications, this could be the wrong use of time. Alternatively, entering strategic partnerships with essential popular frontends may be useful in growing your appeal.
Cultivating various types of non-financial support may also help increase user awareness. For instance, reaching out to long term users and asking them if they could support you by mentioning your business on their website, blog, or social medias. You could also simply ask for permission to showcased them as users of your tools on your business website.
Communicating effectively is a key part of the success of any business. Although you may create a really wonderful tool that provides an innovative solution to a problem you know people have, if it is not communicated properly, it still may not be successful. Effective communication means using the right words and images, or packaging them in a other way that helps people to understand what the tools can do for them. Try different communication styles gracefully, while acknowledging that many businesses find it more difficult to communicate a tool to users than creating a tool itself.
Commitment and Confidence
Commitment is super important. If you put something out in the world and it fails, have the confidence to try again. Repackage it, find other creative ways to communicate it and try once more. If you are using avenues like Twitter, LinkedIn, or even a blog or newsletters, it will help to think that you’re speaking to different, if not overlapping groups of people in each of these avenues. It is important to reach out as inclusively as possible.
A website can be quite central in telling the story about a business. It is the first place where people from other avenues and social media will learn about you. A lot of effort should be put into the website to make sure it effectively communicates what the business offers. Imagine that people know absolutely nothing about your business and be as specific as possible about all the capabilities offered.
How a User Community Kill, or Keep an Open Source Project Alive?
Without doubt, a developer has a certain responsibility that comes with creating a software and making it available for people to use. After all, a project lives and dies by its user community. Its users, whether in an educational, government, or commercial setting, have a certain responsibility to ensure that the project thrives. If the developer is responsible for everything, it can result in burnout and risk the continuity of the project in the long term. Thriving open source projects are the ones which gain the support user community.
Building a Business Is an Iterative Process
One thing to always have in mind when building a business is that success does not usually happen the first time. If it does not turn out well the first time, try it again with a different approach and an open mind. Iterate and improve upon your process and eventually it gets better. There may be many struggles along the way but part of the journey is learning from mistakes.