Tl;dr: If you want to make sure you can turn your open source idea into a business and that it’s not stolen or commercialized by others, first validate people are interested in using and paying for it. Then find a few contributors who are interested in developing it with you and open a space for the communities’ contributions. Once you have this deliver a great product and service.
Uarm had its open source desktop robotic arm copied by others. They were the first to develop this kind of robotic arm, the first to share it in Open Source and the first to work on it for 2 years. Until one day Dobot copied their project, created a community of contributors and developed a more robust and precise robotic arm.
Uarm had 2 years of advance, but Dobot has become the more developed and precise robot.
Just because they were the first to provide a space for the community to help them build a better version of it.
From that moment the gap has never closed. Uarm is a cheaper product, but Dobot is the most advanced, precise and trusted robotic arm thanks to its bigger community of contributors.
And because Dobot have been the first to get so advanced, now Uarm seems to have chosen to secure its cheaper positioning instead of copying Dobot back.
If you are in business, Open Source can be dangerous for your project. If an invention is shared in open source too soon, others might take it without giving back and take over the market from you.
And if you are a bit conspiranoïc, you could even say that sharing a disruptive invention in Open Source could lead it to be sabotaged and ridiculed by the incumbent competition to protect its interests.
Apparently it happened to the electric cars in the 1990’s because it was going to get the whole oil industry in danger. So if your open source projects is too disruptive, the competition you want to transform could always fund a lobbying campaign to go after you.
Conspiranoic claims wouldn’t be a big problem for open source software, since it’s easy and cheap to copy, study and spread the code. If the claims against a given software are true, communities can easily dig in and find about out it. If they are not true, the community has actually discovered a new piece of useful software.
But for hardware projects this can be a bigger risk, since it is harder to study and test it if you don’t have the required machinery to reproduce it.
Creating a new innovation and spreading it to the world takes time. Besides developing a project, you need to promote it, fund it and document your project in Open Source so others can contribute to it.
And it takes time. A lot of time.
You might be a hardcore open source and creative commons advocate. You think everything should be made free for anyone to study, reuse and resell. But even If you are in it just to contribute to the commons, you might want to take some steps to make sure your projects has a chance to survive for a long time.
So it’s better to know in which order to tackle these things.
From my research, here are some common steps thriving open source companies use to protect their inventions’ business even if it’s Open Source:
1/ Find an idea people want and need
2/ Validate that people are ready to use it and pay for it by finding your first customers
3/ Develop and deliver your solution
4/ Find more customers
5/ Once you’ve found enough customers to sustain your work, invest your time and money in documenting your solution in Open Source so others can study it, modify it and even distribute it
6/ Provide a space for your community to build on top of what you’ve made
7/ Improve your product with the communities feedback and give back to the community through your documentation and by providing a great product and service.
That’s it. 7 steps.
Seems easy on the surface, right? Well, the problem is that each step is freaking hard to do, and requires huge amounts of skills.
On the bright side, from the moment people start using your solution and making new things out of it, it will reflect back positively on your project.
So open sourcing is, for me, much easier than the path to create a patented alternative. Patenting is way more expensive, and it probably takes more time:
1/ Develop a solution people want and need
2/ Pay a patent (From $5,000 to $100,000 depending on how many country patents you want)
3/ Validate that people are ready to pay for it
4/ Find your first customers or a partner that will commercialize your idea and pay royalties
5/ Keep hiring engineers and employees to improve your product
The downside with this path is that if someone copies you, you have to sue them to make them stop. This is becoming increasingly hard to do, specially if you don’t have the funds to pay to sue anyone. Besides, it is energy and money you are not using to create useful solutions for others.
So let’s see how this process would unfold if you decided to go open source in a way that is both beneficial to you and to your community.
1/ Find an idea that people want and need
In this post we saw six ways to find profitable ideas adapted to your skills.
Whatever idea you have come up with, ask yourself these three questions:
- Who are the people who need your solution?
- What problem do they face that needs solving?
- What is your solution and what benefits does it offer?
The predecessor of WordPress, the blogging platform B2, started for bloggers [people who needed a solution] who couldn’t find a publishing platform with a comment system [Problem]. The benefits of B2 was that it was easy to run and to adapt by anyone [Benefits]. They later started selling hosting, support for wordpress sites and advertising.
Arduino started as an easy-to-use microcontroller board to teach students [people who needed a solution] how to program electronics without having to learn all the complexities of electronics [Problem]. They soon found that their students were having amazing results with them [Benefits]. So they started selling it and documenting the blueprints in open source so the community could build on top of it.
Once you realize who you are helping, what are their problems and what benefits your idea delivers, it’s much easier to find your community of users and to promote your project.
2/ Validate the interest of your audience and find your first customers or donors:
Why is it so important to find customers or donors?
If you are a business this is obvious. Money from customers will keep you running and pay for your salary and all the costs involved in creating your solution.
But if you are a non-profit you will also need to find ways to fund your work and the contributions of other collaborators. If you are not making a living for yourself, you won’t be able to maintain your project, even if it’s open source, and your project will not live very long.
The only case where you don’t have to find customers or donors, is if you are already paid to create open source solutions for your employer. Then you can skip this step since your work is already funded.
In our current capitalistic society there are no open source or collaborative projects that have survived a money-less founder.
- Richard Stallman has gotten over $1 million from the Macarthur Award and the Takeda Prize to fund his not-for-profit work leading the Free Software Foundation.
- Wikipedia runs an annual donation campaign that raises over $20 million dollars every year to pay for the costs of their servers and their employees. Every page view costs them around a penny per reader per month, but when you have 500 million readers per month, you have to find the funds to maintain it so they can keep coming.
- Arduino has found sustainability through the sales of their microcontrollers
- B2, the project that was the initial seed of WordPress almost died when its inventor couldn’t sustain himself and maintain B2. Thankfully for all of us Matt Mullenweg and Mike Little revived it and found a business model for WordPress.
- Facebook, Google or Uber’s Open source projects are funded by the salaries of their employees. They develop these projects in Open Source for their companies because it’s cheaper to maintain it this way.
- Most Open Source solutions are subsidized by companies who pay their employed developers to create tools to help them do their jobs. They make it open source because they don’t need a monopoly on the solution and they can share the burden to maintain it with the rest of the community.
You can remain frugal and you don’t need millions to make a positive impact. But you need to be able to cover your own expenses and pay for your beans as long as everything in our society is not free (as in beer).
Imagine you took 2 months to build something, you made it open source and got 100 users and no clients to sustain your work. Now imagine you took 10 months to go through every previous step and get 10,000 users and $200,000. Don’t you think the impact of your project would be greater in the long run?
To find your first customers or donors you can do this in three ways:
1/ You can use the validation techniques we outlined in this previous post.
2/ You can be the magic elf to someone you want to work with by using the Santa Claus technique from Bryan Harris. It takes some time, but it is highly effective.
3/ Or if you are starting a coaching program you can ask people in your network to redirect you to people who’d be interested in your work. (Find how in this article also by Bryan Harris)
Finding people ready to pay for your work is probably the most challenging part. But once you’ve found the first people interested in paying for your idea you are on good track.
3/ Develop and deliver your solution
Now that you have sold or pre-sold to your first customers or donors, it’s time to fulfill your orders, deliver on your promise and make sure you over-delight them.
- What was the obstacle that would have prevented you from buying this product?
- What did you find as a result of buying this product?
- What specific feature did you like most about this product?
- What are three other benefits of this product?
- Would you recommend this product? If so, why?
- Is there anything you’d like to add?
Ask their permission to record their answer and reuse these testimonials as a reference for your next customers and on your website.
4/ Find More customers
If you’ve had success finding your first clients and delivering your solution, it’s time to spread your solution to more people who need it. Keep doing what worked in the previous step.
When this stops working, you can help people for free or offer them to beta test your solution.
When you are done and you have someone happy you helped them, ask them if they’d be interested in working longer with you, or to refer you to other people who could be interested in your solutions.
You can also go look for customers or donors on online marketplaces, meetups, or online groups like Forums, Facebook or Linkedin Groups. Find what problem people have and help them solve it. Once you’ve found what they need, and if it’s relevant to them, offer your solution.
5/ Make your solution Open Source
First, document your project in Open Source once you got time, money and resources to do it, but not before. Otherwise you risk to burn out by trying to do too many things without having a proper foundation to work with.
Documenting your project and creating a space where people can share their contributions will enable a bunch of benefits:
- You’ll be able to innovate faster
- It will allow your community to develop and thrive by also getting free access to the rest of the community’s innovations, further reinforcing your ecosystem
- and it will spread and develop your idea faster by allowing anyone to study, modify and distribute it, while keeping your project in the middle of the network of contributors you have started
But how can you document your project?
If you are in software you can use Github to document your code and to get people’s commits and comments about it.
Or you could do like Arduino, set up a dedicated section to teach how others can use your solution with a “Getting Started” page, “Tutorials” and a project hub with projects from the community that anyone can reuse.
Once you’ve documented it, choose an open source license aligned with your projects goals.
To make the most of it, you’ll have to provide a space where your community can interact with your company or non-profit.
Arduino or Fairphone use their forums to allow their community to interact and solve each other’s problems more scalably. Even if your members will do a lot, you’ll still have to participate and block some of your teams’ time to participate and nurture the relationship with the community.
Once you’ve got that, you’ll be able to interact with your community, document and discuss your latest contributions, and welcome the contributions from others, but you’ll still need to implement at least one more step.
6/ Keep improving your product and giving back to your community to make it successful
Whenever the community develops new features or polish your processes, include these innovations in your product or service if they really solve a challenge your users have.
On the other side, whenever you develop a new innovation, document it and give it back to your community.
Some will copy it for their own use without buying from you, but this is actually good. These people are those that will bring new features and uses to your solution.
Those who don’t want to bother spending time or money in machinery to copy your solution — which is 99% of any given community — will buy it directly from you.
Open Source solutions traditionally remain more robust and more competitive than their closed counterparts or copycats because of their community’s contributors.
So don’t forget to include their innovations in your solution. It will benefit you, and it will also benefit the community in two ways: they’ll get access to new features and they will be able to use these new innovations in their own projects as well.
And another common problem is that most open source hardware projects Bill of Materials or kit sales aren’t supported and it is always a struggle for the community.
If it’s right for your project, sell pre-assembled projects. It can be a fantastic opportunity for B2B sales.
7/ From knowledge pooling to Money and Market pooling
Once you have a solid relationship with your community and start to have enough revenue to sustain yourself and your collaborators, you should consider:
- Putting money aside for community projects. Wikimedia does this by keeping 10% of its spending for community grants
- Giving back to other open source projects that have helped you get to where you are. The more you reinforce the ecosystem that has sustained you, the stronger you’ll be in the end
- Creating a producer cooperative with your contributors. Your members can remain independent producers and working as a cooperative helps you access markets to sell products and services at a fair price thanks to your larger scale. That’s what Enspiral does with its community of freelancers
Cooperativism is still not a widespread practice among thriving Open Source projects, but from my perspective, wide-spread access to knowledge should also come with widespread access to ownership and governance of businesses.
And Cooperative platforms and companies are a perfect way to economically engage further those contributing to an open source company.
Your time to make a thriving open source project
Now you know what steps you can take to fully leverage the benefits of being open source and stop worrying of others copying you or lobbying against you.
This post is not meant as a cookie cutter solution you should follow blindly. There are millions of other ways to create anything open source, but I think these steps are pretty solid if you want to make a sustainable open source project that will endure the test of time.
What have you learned from this? Have you followed different steps to get your open source project up and running?
Latest posts by Jaime Arredondo (see all)
- How Font Awesome became the most funded software project on Kickstarter - September 28, 2018
- How Ted Talks went from one to over 2600 events per year in 9 years - July 11, 2018
- How Open Source will be everywhere - June 28, 2018