DEV Community

Discussion on: There are plenty of good reasons to do open source for free

Collapse
 
sebvercammen profile image
Sébastien Vercammen • Edited

I was a maintainer and the lead contributor of an open source GitHub project that became large, and got crowdfunded via Patreon to write open source code for about two years.

A. Comparison to spec: Your argument falls flat when you start asking more questions to open sourcers.

E.g. "If you would have been paid to do this same thing, with the same freedom, would you have been happier / in a better position / able to reach more people / ..." = Yes.

B. Free is not accessible.

This is a reality charities have had to deal with for years: If you do free work, it's less sustainable, growth is held back, and you will have the hardest time reaching all the people that are in most urgent need.

An economically sustainable model scales better, helps more people, and can still be free for the end user.

C. Free is not payment.

You can do work that is simultaneously social, fulfilling, and paid.

The creators that originally had fun making it, can eventually find themselves in a position where hundreds of thousands of people are using their software, but the creators' lives are in the deepest pit they'll ever be in, with their "fun" project not contributing to the immediate improvement of their lives (e.g. bills that need to get paid).

D. The best part of open source is:

It is what it is, and there's nothing quite like it.

It's free, it's open, it can bring people together or strongly divide them, it can teach/inspire or smash people's hopes. It can be fulfilling when your contributions are intentional, well thought out, and come without sacrifice in your own life.

But open source should not be your default choice unless you want to be an activist.

Collapse
 
jerodsanto profile image
Jerod Santo

I'm sorry you had such a bad experience. Please allow me to address a few of your points, but I'll preface it by saying whether or not to work on open source is a personal choice and it's definitely not for everyone.

If you do free work, it's less sustainable, growth is held back, and you will have the hardest time reaching all the people that are in most urgent need.

Software that doesn't exist won't reach as many people as software that is developed for free. Sustainability only becomes a problem after software has proven its value. This is a choice one has to make, because the number of people who can convince others to pay them to produce things that haven't proven their value is very small.

An economically sustainable model scales better, helps more people, and can still be free for the end user.

There are huge swaths of software projects that will never find an economically sustainable model. Would the world be better off if these didn't exist?

You can do work that is simultaneously social, fulfilling, and paid.

Of course you can, but that wasn't my point when I said free is payment. My point was that as a developer I've benefited from free software, so I feel socially obliged to also produce free software as a form of payment back to the community.

but the creators' lives are in the deepest pit they'll ever be in, with their "fun" project not contributing to the immediate improvement of their lives (e.g. bills that need to get paid).

This sadly happens all the time, which is why we talk about sustainability all the time on our shows! But if I'm being honest, a lot of the problem here is improper expectation setting and an improper outlook by the open source maintainers themselves. Mike McQuaid embodies the healthiest worldview on this topic. His post Open Source Maintainers Owe You Nothing is a must-read for all maintainers.

Collapse
 
sebvercammen profile image
Sébastien Vercammen

I never said I had a bad experience. I had a pretty great experience, and it was an awesome project. But I worked hard to come up with a way to make it sustainable.

Software that doesn't exist won't reach as many people as software that is developed for free. Sustainability only becomes a problem after software has proven its value.

And you're assuming software you get paid for doesn't get made?

That's exactly one of the problems with this mindset.

Don't get people to do open source by convincing them of stuff that just isn't true.

  1. Whether it's paid or free software, if you can deliver it when you make it for free, you can deliver just the same if you get paid.
  2. Making software is already value. From the moment you have an idea that you can test in the market, and that you can deliver, you can get paid. You don't have to start coding, do open source, or have users.
  3. If you launch open source just to get validation, you're misunderstanding what validation means.
  4. The only real validation of your sustainability is the moment people pay you.

In short, sustainability is your responsibility from before you start. Open source is a decision with consequences you need to think through beforehand, and with its own serious cons.

You can get paid for exactly the same work you'd otherwise do open source, including if you're still a new coder gaining experience. They're called paid traineeships, with experienced teams that will pay you to learn from them.

Open source should only be promoted for what open source is. If you misunderstand open source, people will sacrifice the money they could've earned by being convinced that open source is always a smart choice.

People who get paid well also have more room to work a few less paid hours to contribute to open source or charity. "Help yourself before you help others" is great advice, and more open sourcers should listen to it.

More open source projects are also moving to dual licensing: open core code, but some features come at a premium. And I think that's a healthy example of sustainability, while giving back to open source without sacrificing yourself for it.

But if I'm being honest, a lot of the problem here is improper expectation setting.

I mean, if you're writing articles titled "good reasons to do open source for free" without including the obvious cons and a statistical overview of dying versus growing projects (sustainability), what expectations do you think you're setting?

Thread Thread
 
jerodsanto profile image
Jerod Santo

I feel like we’re talking past each other, so I won’t continue here. I’d love to have you on The Changelog to dive deeper into this conversation in a more profitable format. PM/email me if you’re interested.