Hacker News new | ask | show | jobs
by domador 1000 days ago
I have the same problem with GPL, specifically in that as far as I can tell it doesn't give one the freedom of making a living out of making software as a product. I'd love to be proven wrong and find out that there are practical, viable ways to develop new GPL software and be paid strictly for doing this. However, what I tend to hear is that people don’t get paid for this, but rather for customizing that software (once it’s made) for individual clients, or setting up that software on a server and charging for access to that service. The few that do get paid directly for writing new GPL software seem to be funded by a patron who doesn't care about the software's direct commercial viability, either out of principle (e.g. the FSF and GNU) or because the software is a loss leader that bolsters the patron's primary business (e.g. Google and the Android codebase.)

To put it another way, as a software developer I would personally like to make a living analogously to how a successful book’s author makes a living. Such an author can make a living primarily or even exclusively from writing each book, not from giving away the book for free and making custom versions of that book for individual readers, or by offering and charging for live, public readings of the book, or by asking for voluntary donations from those that download the book, or by selling merchandise related to the book.

I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.

3 comments

> I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.

It's exactly the opposite!

If you want to make a living making software, you make it GPL. Any corporation that wants it will need to pay you for a commercially licensed version they can use (it's your code, you can license it in as many ways as you want). The hobbyists can use the free GPL version and the companies can pay you for your work. Win-win.

If you make your software BSD/MIT licenses you can't make any money, every corporation that wants it just takes it for free so you can't make a living out of it. You could try selling support but if your library is great and easy to use, not much money in that.

Unfortunately for you (and me) even if you make a really awesome library and license it as described above, you still can't make a living because there are other similar libraries with MIT/BSD license and the corporations will use those (even if they are inferior to yours) to avoid paying you. Thus, the market for selling software like this has been eliminated and we're stuck selling subscription services.

Dual licensing becomes very difficult once there is more than one person writing code, and that includes submitting bug fixes. Once this happens you need to track down every contributor and have them sign licensing terms. It's long, difficult, expensive, and you might prefer to rewrite the whole thing again. https://en.wikipedia.org/wiki/Contributor_License_Agreement
You might be surprised. Unless you are dealing with clients that have been burned by software licensing, or have attorneys knowledgeable in software patent/licensing law, you could charge clients for building software and release it as GPL. You then also provide the setup of that software, which you can include in the total cost. There is lots of GPL software out there, but not many people that understand how to setup or support that software. It is very possible to make a good living off the setup and support of GPL and other open source software.

If you don't feel right for open sourcing software you wrote for someone else, you could always offer your client a discount to let you open source the software. There are quite a few companies that now make their money supporting open source software, even when they aren't writing it themselves. I've done this myself, and I think it's a lucrative business model that still gives everyone involved freedom.

> I personally want to make a living making software products, not services. GPL doesn’t seem to offer me a way to do this.

These two things are pretty unrelated.

For Android apps, a common model to have a paid version in the play store and still publish the source code on github with GPL. Here the GPL actively protects you against somebody coming, doing some minor modifications and then pushing their own paid-for version to the app store while not publishing the source code (which they could easily do with other licenses).