Daniel's Stuff

RSS

Why open source sucks

Jan 31 2023


We’ve all seen the effects of the open source revolution
- operating systems, programming languages, cryptocurrency, social media. If you’re reading this, I’m sure you don’t need an introduction to what open source is, but after contributing to open source for over 6 years, I’m here to tell you it’s flawed.

I believe that in order to improve open source, we must realize its flaws. I know, at the very least, that it’s not perfect. It's not ideological perfection. No model is perfect. I do know what it is though: a great idea. As great of an idea it is, it doesn’t work perfectly for everything.

Open source doesn’t fill every gap

The open source community struggles to fill in the gaps that closed source software does. The biggest example of this is video games. After my years in the FOSS world, I can name about 10 open source games. In terms of closed source games, I can list about 100. On steam, there’s 50,000 titles as of 2022. Why is this?

For free open source games, contributors have very little reason to set a high bar of quality, or work hard on making sure the game is entertaining and user friendly. There are absolutely cases where contributors have made something comparable to a typical commercial game, but it’s rare, and definitely not as common.

There’s also a little bit of culture involved. For games, people are always willing to pay up, and the customers set very high expectations. Even for free games, players set a high bar of quality, and this is why open source games are criticized harshly.

Making games and software that are entertaining and user friendly is an extremely difficult and tedious task, and sadly, most people do it for money.

Open source software == freebie software

There are some cases where open source software is sold successfully (Pixel Dungeon, Simple Mobile Tools), but the vast majority fail because people would rather grab a free binary somebody else uploaded, or compile the code themselves.

(Of course, this is ignoring the “open core” model, which is undoubtedly successful)

Most successful open source funding models are based on voluntary user and corporate donations. This causes a bias in sponsorships, since open source is a concept that only appeals mostly to nerds.

For example, most open source programming languages, javascript libraries, and developer tools receive enough in donations to pay a few programmers full time. In contrast, open source software like video editors and niche apps struggle to raise enough money to pay for server hosting costs.

The responsibilities

Most open source projects start out as products of recreational programming
- something we do for enjoyment and fun. Then, when we least expect it, it blows up.

In most scenarios, it wouldn’t be possible to monetize it since it’s open source, so it eventually gets abandoned due to burnout. Can somebody pick it back up and resurrect it? Yes. But that person will likely experience the same pain I felt, and abandon it.

I’ve personally seen too many open source projects that had to be abandoned solely because of overwhelming growth, with the maintainer receiving nothing but demands and stress from internet strangers in return.

People look at open source projects expecting the same luxuries they find in commercial software. Customer support, and the overall assumption that the developer is motivated to actually make the software useful for consumers.

Conclusion

I’ve always tried to convince myself the open source hobby projects I write are innovative and useful (and anybody who says otherwise is a jerk), but I’ve since realized that I was wrong. 95% of my open source projects are completely useless, and serve no purpose other than to amuse me.

In order to fix open source, we need to realize project and business models aren’t a “one size fits all”. Just because the open source model works great for Linux doesn’t mean it will work just as good for games. Instead of religiously sticking to one model, we should be open to different models and ways of organizing our projects. When closed source sucks, make it open source. When open source sucks, make it closed source.

This is not an attack on open source. I've contributed to open source for years, and will continue to do so. It's simply just not the revolutionary idea I've been told it was. Yeah, it's great and useful, it's a good model, but I've been dissapointed too often.
Back

Contact me: