HUIJZER.XYZ

How open source software projects stay competitive

2023-03-16

In the realm of open source software development, many programmers aspire to transform their passion for coding and their drive to make the world a better place into a sustainable livelihood. In an ideal world, the desire to contribute positively to society would be enough. However, the reality of life is that money is needed too. Some developers have managed to generate income from open source projects through various channels such as the goodwill of supporters, sponsorware, and sponsored screencasts. For example, Caleb Porzio earns one hundred thousand dollars per year. So, the idea is to just write some software, cast your screen, and you will earn money? Probably not. Let's reason through the situation.

The key to making money lies in providing value, which can appear in two forms:

Usually, the idea that software has to create value is clear. However, what is usually not clear is that open source developers, who aim to receive money from people, inevitably find themselves competing with businesses. Now, there is good news and there is bad news, and more bad news. The good news is that software is not limited by geography, so software can create value anywhere. The bad news is that software is not limited by geography, so open source software competes against any global corporation including Google and Microsoft. The more bad news is that capitalism is ruthless. Competitors will steal ideas and run with them. Sometimes competitors will even bundle a competing browser inside their own operating system. This is what happened to Netscape when Microsoft decided to bundle their browser with Windows. Even though Netscape may have been better, they didn't have a chance against a bundled browser.

Durable competitive advantage

Fortunately, there exist countermeasures that developers can use. Developers can establish a durable competitive advantage or moat. Hamilton Helmer's book, "7 Powers," offers a comprehensive list of moats, or what he calls powers, that can be adapted to open source software:

Scale Economies. Helmer defines Scale Economies as "a business in which per unit cost declines as production volume increases." Generally, we can say that the cost of adding new features decreases with the number of clients.

Network Economies. In network economies, the value of the product increases if the amount of clients increases. Social media are well known examples of this. So, for making the next social platform this is a useful power as demonstrated by Signal and Mastodon. However, this can also be beneficial for other projects. The network effect also holds for having more people adapt and contribute to the software. In turn, this can increase value through improved functionality, richer documentation, and a more extensive library of plugins or extensions. This leads to a self-reinforcing cycle that attracts even more clients and developers.

Counter-Positioning. Helmer's favourite power is counter-positioning. This requires products to be build in such a way that competitors can only compete by damaging their own business. Take, for example, those old Nokia phones that everybody loved due to their reliability. Around 2009, Nokia did not want to admit that Apple's smartphone was a better technology because that would hurt their Nokia sales. There are countless ways for open source developers to take advantage of this. For example,

In both cases, Matlab and Photoshop would lose income if they would make their products open source.

Switching Costs. This is the power that most developers are well aware of. Software by corporations is full of vendor lock-in meaning that switching to another product would be very costly. For example, production software written for AWS Lambda will probably remain on AWS Lambda or you risk going offline during a complex migration. For open source software, switching costs usually arise automatically via the interfaces, extensive documentation, and integrations with existing systems.

Branding. Branding involves creating a unique and positive identity for a product or service that differentiates it from competitors. Open source software can build strong brands by developing recognizable project names, logos, and design principles. However, brands typically have effect only once the product is well-known already, so this power will not be so useful for starting projects.

Cornered Resource. A cornered resource is an asset that you can access more easily than competitors. For example, a mine is a cornered resource. For software, if you are an extremely talented developer or have talented friends who only want to collaborate with you, then those are also examples of cornered resources.

Process Power. An company organization and activities which are markedly more effective than those of the competition. In the book, Hamilton Helmer gives the example of the The Toyota Way which gave Toyota an nearly unbeatable advantage in the car production. According to Hamilton Helmer, this was most likely due to having process improvements trickle from the workfloor up into the whole organization. A nice example of this could be the creation of Git which trickled into the whole Linux organization (and the world). This takes time and is therefore most likely not a good power to depend on for new open source projects.

In a nutshell, we can say that the competitive advantage of open source software increases when

The Linux kernel

As an example, let's apply the 7 powers to the Linux kernel:

Just like above, the competitive advantage of the Linux kernel increases when

But this is not a typical project. Does it also apply to smaller projects with only one developer?

curl

cURL is the well-known command line tool for transferring data and is created and maintained by Daniel Stenberg. According to Open Collective his annual revenue from curl is $78,000. The following powers apply to it:

The same summary applies; the moat increases when:

Conclusion

In conclusion, making money from open source developement is tough since it's a ruthless competition against other people and corporations. Luckily, strategies from Hamilton Helmer's "7 Powers" can be used to establish a durable competitive advantage. Especially hopeful is the fact that many proprietary software projects will damage their own business if they would compete with open source software. Furthermore, it is also hopeful that many powers such as process power and the network effect will likely happen automatically as the project grows. The advise to open source developers is then easy, as long as the number of clients and the amount of work by skilled (a) developer(s) increases, the competitive advantage will increase too.

Parts of this post were written by ChatGPT.