11
votes
Why open source projects don't charge (while keeping the code open)?
I'd gladly pay a reasonable price for professional packages/support for programs like Emacs/Melpa, Debian, and Xfce. As a user, I empathize with the complaints by developers that are constantly overworked. Even if this doesn't generate enough money to pay for everything, it might be enough to hire someone to handle the issues and communities, something that clearly drains their efforts, especially because programmers tend to prefer technical challenges rather than dealing with people.
I understand that many projects accept donations, but I think providing an actual reward (even if its something minimal, like an updated package instead of having to build it from source) might be a good way to get resources and avoid developer burndown.
Yes, of course... but remember, the code would be still open. You wouldn't be paying for package 1.5, you would be paying for the guarantee to get 1.6, 1.7, 1.8 etc from a reputable source on day one. Of course, some people would "pirate", even though they could just build from source. You're paying for the practicality AND, possibly most important, some kind of support.
It would still be packaged for free by distributions, but by paying you might get a newer version, for example.
Some of us are hippies after the style of Richard Stallman and don't think people should have to pay for software. Especially as I gain more experience in the software industry, I'm seeing that, IMO, business and money (and the things they bring with them, like deadlines and SLAs) take all of the fun out of software development. If I have someone giving me money for my work, there's a certain expectation of quality, professionalism, and punctuality that doesn't exist (or at least not in the same way) for a free (and Free) project. Alan Perlis has an otherwise unsourced quote in SICP describing how important it is to keep the fun in computing, and how that's directly opposed to the expectations of paying customers. For people like me, open source is a way of keeping our interest--and our hobby--fun, without the interference of Peter principle promotions who weren't even very good at programming and customers who don't care about you or your work so long as it makes their work easier so their customers can repeat the cycle. If you want a rantier version, this post covers it fairly well. I didn't write it, but after five years I still remember it, it still speaks to me.
(... immensely bitter about capitalism? You don't say...)
Yes, you're right. I tend to conflate the two in my mind because they tend to go together. But you're right, it's wrong to do so. Mea culpa.
elementaryOS has been doing something along these lines, although it's more "pay what you want, but you're encouraged to support development." They have their own software store with a lot of apps people make specifically for eOS.
Ubuntu has been doing the "pay what you want" thing for a while, too. When you go to download their ISOs, they ask for a donation.
edit: Whoa, when did elementaryOS get that many apps written for it? That's impressive. May have to give it a try sometime.
They've got really a lot of high quality apps. I'm always tempted to go back just for them lol
As far as I can see, the elementaryOS apps are all open source. Presumably (!) you could build them on not-elementaryOS, though the experience may not be the same. I know a few of them existed before being adopted by elementary, like their mail, calendar, and photos apps (RIP Yorba Foundation).
I think that's a good idea.
Because its incredibly difficult to sell a product and give it away for free at the same time. Most of the benefits of FOSS are mostly incompatible with selling software. I know someone will point out you are still allowed to sell foss software but the fact is you can not stop people from getting it for free.
Pretty much all profitable FOSS work comes from software that can be sold to companies who want extra features that are kept proprietary or it is developed by a company who sells something else and this is just a backend part that helps them sell stuff.
Its a bit sad really. I am working on a foss project and if it was able to pay me to work on it full time it would be something really quite amazing but currently I am just spending a few hours a weekend on it so it takes me a month to do what would be a few days work on a proprietary product.
That's why you don't try to sell the software itself, you sell support contracts. I would venture the vast majority of RedHat's customer base isn't paying for proprietary customizations, they are paying for support. Ditto for Gitlab (support is probably much more important than the features gated by paying)
This is true of almost any other open source product....tons of companies don't care about having the source, but will gladly pay for a support contract. So you can give away the code (to people who probably wouldn't pay for it anyway, but builds your userbase), and reap financial benefits from the companies that want support.
There are several other models I've seen as well: Open source code, but no documentation or support for how to build from source (especially on Windows), and sell the pre-compiled binaries. Make the easiest way to obtain your product by hosting it for your customers. Offer paid prioritization for bug fixing or adding features.
While a new FOSS project might not be able to pay developers immediately, if a large enough user base starts using a project, odds are that there will be some way to monetize enough to be sustainable.
The software I am building is useless to companies and requires no support.
a) who would you pay
b) who would control the dispersal
c) would the developers support fee gatelocking of any kind (they wouldn't)
d) what motivation changes would you see once money got into it (a common theme here on ~s)?
There are professional support services for things like Linux OSs from RedHat (free version is Fedora) and Canonical for Ubuntu. Plenty of individual developers have patreons.
The thing to remember is, developers of open source software (real open source, not the 'private company that releases their code' open source) are volunteers. They can't be overworked, they can only be overcommitted. Adding money to this mix is likely to make this worse, not better, either by removing the will to volunteer, or seeing people think they have to do more - I think they give enough, they don't need to make extra things for the people who pay.
I would also call into question
What you think is reasonable is almost certainly not reasonable when you look at the prices software actually commands. Debian could ask for $1k per machine per LTS and still provide net value.
I would!
I don't think that's an issue. See my other comment.
I don't think that's necessary.
d) what motivation changes would you see once money got into it (a common theme here on ~s)?
This is certainly something to consider, probably on a project-by-project basis.
I think distributions like Debian could still be freely distributed like it is now, but charge a fee if you required some kind of dedicated support. My suggestion about other types of programs is in my other comment.
a) I said who would you pay, not who would pay. Who is the owner?
b) Dispersal here refers to the funds. Who gets paid what %? Suddenly you've just ADDED significant administration and drama (hoo boy the drama)
c) You've described gate locking all over the place. Only getting day 1 release if you pay? Only getting a pre-compiled binary? The open source community would laugh at the thought, and crucify anyone who tried it.
You would need to more than consider it, because the vast majority of code and contributor licences would disallow it entirely.
Sorry, I clearly misunderstood several terms you used.
I don't know. How are donation, Patreons etc handled now? Couldn't they use a similar approach?
Same as the previous answer.
Why would they laugh/crucify people, if nothing would change for them? Most people get packages from distributions, this would change. Some other people get the source, that wouldn't change either. Some people make their own packages, they would still be able to do so. BUT, if someone wants to support the project and get the binary on day one with added support, this option would be available. This is not something that most hardcore technical user base would even need. But a portion of the not so advanced, or the ones with restricted time, users might find it interesting option. It might even be just a nudge to help someone who wouldn't otherwise donate justify a contribution.
I did not know that. But maybe at least some projects have licenses that allow that?
Davx5 on Android does this. It costs money on Google play store, but you can download it for free from fdroid.
There are a couple music programs (Radium and Ardour that require you to pay to access fully usable binaries, but you can easily compile them yourself. Radium is somewhat complicated to build to work just as it is distributed, but it is possible (the dev does it in Fedora, but it won't work in Ubuntu or Arch for various reasons, but does fine in Debian). Ardour is available in most distros' repositories, so you don't even need to pay for it to use it unless you use Windows. Radium goes a bit further and support is tiered based on your subscription level (subscribe to a higher tier, your features and issues get looked at first). I think it's an alright method, because you pay to get the developer's ear, and to fund ongoing development, without being able to dominate the project. I'm subscribed to Radium's development, and frankly don't even expect the one-man show to operate like, say, Renoise, which is a small team and company dedicated to a product.
I don't think FOSS devs deserve our money, but if I see an opportunity to incentivize development (Qutebrowser did a ~$3000 indiegogo to back a month of solid development, I think it hit some stretch goals), I'll back it. I donate to projects as I can (less than I would like), because I don't have much in the way of technical expertise (I'm not very experimental, and try to avoid breakage as much as possible, so I don't see much in the way of bugs). I would never fault a dev for asking for money to dedicate time to develop a project, at least provided they actually do so after getting the money.
(Opencollective)[https://opencollective.com/] seems to generally fit with your post. I have never used it, mainly because I am poor in time and money, but that is not a rejection of it.
For smaller projects, most likely the FOSS developers are only working on the project part time. It's likely that they make good money at a full time job and only put time into FOSS development as a hobby. They don't want to spend any more time on it than they already do, so donations won't help it move along (but would be nice as a thanks).