There has been a lot of talk about companies and individuals adopting licenses that aren’t OSI opensource to protect themselves from mega-corp leechers. Developers have also been condemned who put donation notices in the command-line or during package installation. Projects with opensource cores and paid extensions have also been targets of vitriol.
So, let’s say we wanted to make it possible for the majority of developers to work on software that strictly follows the definition of opensource, which models would be acceptable to make enough money to work on those projects full-time?
Universal basic income
The best solution for a lot of problems. Imagine how awesome OSS could be if any dev could work on it at least part-time while still being able to eat and pay rent/mortgage.
Imagine how awesome any creative field could be
I’m for it but what do we do in the meantime?
Personally I like the following two approaches:
-
Free and open source for selfhosting, paid when hosted by the company (e.g Nextcloud, gitea, cal.com)
-
Free and open source with basic features, paid for proprietary business addons (e.g Portmaster, Xpipe)
I think those approaches are fully compatible with the open source definition, but please correct me if I am wrong. (The examples I mentioned are just some of which I personally know and use, but of course they are many others)
I would add:
- Paid 24/7 support
- Pay for custom features
- Accept donations
Also cost for commercial use, free for personal use.
I like this because it allows me a chance to test the full version at my job and then we purchase the full version when we’re sure we want it.
Cost for commercial, free for personal may not always be open source. Redis for example.
How would this look like? Are you suggesting a different license? Or is it more something like paid binaries but the code stays open?
One recent example I can give you is XnView. It’s a program that is free for personal use as an alternative to some specific Photoshop suite as well as some other paid photo viewers like ACDSee. But if you’re going to use this for any sort of commercial use, you need to pay for licenses for all computers you use this on. Such was the case for us since we needed it where I work.
Admittedly it’s integrity based for most of these programs. They are hoping that you are going to be honest about your usage and pay when you use it for commercial use. There doesn’t appear to be telemetry that reports back your usage as this is usually just some guy releasing his personal project. In the case of XnView, I feel it was a guy who was fed up with more recent updates to ACDSee and made his own that mirrors the older versions and just works.
We bought the licenses but I never really felt they were necessary to activate. But we had the proof if we were ever audited that we paid for commercial usage.
I pirate some stuff in my personal life, but these little guys who do this are seriously awesome and I try my hardest to follow their rules since it’s so convenient and helpful in my search and their approach is not ever privacy intrusive.
Another example would be WinRAR, if I remember correctly. They expect businesses to pay to use it but the general public of users just using it at home get the free, infinite “trial”.
Both of those aren’t opensource (at least I can’t find their repos on their webpages), but I see the model your proposing. Maybe just providing an option to pay at all, and not make it a donation, could work. The only problem I see is a competitor swooping in with a bigger team (or a team in the first place), and building upon the existing project to kill it in order to end up selling its own product. With non-restrictive opensource licenses like MIT and Apache, I assume it would be trivial. GPLv3 would make that a little harder.
Also paid integrations into your existing environment.
Proxmox does this.
Syncthing has vendor support - they use ST in integrations.
Both seem like effective models
Free and open source for selfhosting, paid when hosted by the company (e.g Nextcloud, gitea, cal.com)
Do you believe anything should be done if a large competitor takes over the business of hosting for other companies and hosting is the major revenue stream of the opensource project?
Free and open source with basic features, paid for proprietary business addons (e.g Portmaster, Xpipe)
That sounds like Open Core and I am for this, but there seems to be a dissatisfaction within the loud part of the opensource community regarding it. They don’t consider it “open-source”. Do you still count it as opensource?
Your proposals concern services or applications. Do you have any thoughts on opensource that isn’t that e.g libraries, frameworks, protocols, and so on?
-
My partner is on SSDI for disability. If she works, she will lose her SSDI income, but she’s allowed to generate income that isn’t work/labor.
She is exploring FOSS as a career path because she could accept donations and that wouldn’t impact her SSDI. She understands donations would be minimal, but she’s hoping it’s a way for her to break into the FOSS scene.
WARNING. Everything other than the last paragraph is kind of rude and opinionated, so skip to the bottom if you only want practical advice and not a philosophical rant.
First of all Free Software don’t need paid developers. We scruffy hackers create software because it’s fun. I have a strong suspicion that the commercialization of Free Software via the businessfriendly clothing “Open Source” is actually creating a lot of shitty software or at least a lot of good software that’ll be obsoleted to keep business going. Capitalization of Free Software doesn’t have an incentive to create good finished software, quite the opposite. The best open source software from commercial entities is in my opinion those that were open sourced when a product was no longer profitable as a proprietary business. As examples I love the ID software game engines and Blender. Others seem happy that Sun dumped the source code of Star Office, which then became OpenOffice and LibreOffice, but then again companies like Collabora are trying to turn it into a shitty webification instead of implementing real collaborative features into the software like what AbiWord has.
…and back in the real world where you need to buy food. Open Source consultancy, implementation of custom out-of-tree features, support, courses and training, EOL maintainance or products that leaverage Open Source software is my best answer. See Free Software as a commons we all contribute to, so that we can do things with it and built things from it. You should not expect people to pay for Free Software, but you can sell things that take advantage of Free Software as a resource.
Three examples of open source software where at least one developer could give up their regular job and work full-time on the open source project. I’m sure there’s more (The Linux kernel maybe ?) :
- Mastodon
- Lichess
- SerenityOS
In both cases possible because of people donating. The last example is quite remarkable given the personal history of the developer and the fact that it was “just” a fun project with the developer sharing videos about programming for the fun project.
KDE also has multiple full time employees afaik
Serenity does have donors, but most of the donations are for Ladybird, their libre browser stack separate from Mozilla/Safari/Chromium. Most of the money came specifically from donors looking for improved support for their own websites on Ladybird.
Okay. Got a source for that ? I had the impression from the SerenityOS developer that the donations came because of the videos that Andreas is making but I could be wrong.
https://awesomekling.substack.com/p/welcoming-shopify-as-a-ladybird-sponsor not sure about the other anonymous donation he received.
Why do they need to make a full time living from working on these projects?
I don’t understand why this is suddenly an issue - I use a 40 year old free program daily (Emacs), which has always been developed for free by volunteers (including me).
Think about the software you use - IME software created to make someone richer is usually worse than software written out of passion.
As mentioned in books published TWENTY YEARS AGO, many companies working in Open-Source make their money in value-added services and support.
My side gig has been doing that for the last 22 years.
And, that’s the number-one answer from chatGPT.
It’s also totally okay to not blithely jam the words together but to pretend hyphens are a thing.
As mentioned in books published TWENTY YEARS AGO, many companies working in Open-Source make their money in value-added services and support.
And the world hasn’t changed in 20 years?
It’s also totally okay to not blithely jam the words together but to pretend hyphens are a thing.
What?
I think the route of giving it all away for free and either offering hosting if the project needs it or (business) support is the most successful way of doing this.
I have no problems whatsoever with donation buttons / banners (like Krita does) but I’m afraid random donations is not really a sustainable model for most projects. I try to remember to donate to projects I use a lot (especially if it’s for work) but it is another thing on my todo list and not one with high priority, so I don’t do it as often as I’d like … 😓
That’s possibly fine for services, but what happens when a large, well-known competitor decides to offer the service at a lower price (possibly on their own infrastructure), takes away the customers, but doesn’t contribute back?
Also, how should libraries (aka stuff that can’t be hosted or doesn’t have an interface) be handled?
Yeah, very good points. A while ago there was talk about some kind of foundation where maintainers could bill their hours and people and big tech companies could donate. Not sure if / how that would work …
During the xz incident I also talked about this on Mastodon and someone suggested that big tech could just employ maintainers without them having to do anything for the company directly, just work on the project / library the company uses. Again not everybody would want to do that …
I’m afraid there’s no easy one-fits-all solution here.
Do you believe breaking away from the strict OSI opensource definition would be acceptable? It could allow things like:
- royalties for commercial instances
- service fees for commercial instances
- no commercial use
not all at one of course
-
Premium support channels - This is basically how RedHat and Canonical make their money, while offering FOSS for individuals.
-
Donations - KDE and GNOME are largely donor-backed, both by individuals and corporate entities.
-
Commissions on features - Collabora for example is commissioned by Valve to improve KDE and SteamOS.
-
Software licenses - Certain FOSS licenses may permit paid access to software as long as the source is open i think? There are also source-available eg. Asperite that are open source, but only offer binaries for customers.
-
Add on services - Your FOSS web app can offer paid hosting and management for clients. Your distro can offer ISOs with extra pre-downloaded software for a fee (Zorin). You can partner with hardware to distribute your software (Manjaro, KDE).
-
Hired by a company to work on your project and integrate with their own stack. This is what Linus Torvalds did with Linux when he was first hired by Transmeta - part of his time was spent working on Linux to work better with the technology Transmeta used.
-
I think most of the other answers are good. For enterprise software I think, non community contributed, security updates behind a paywall are reasonable too. I know all updates can be behind a paywall and still be FOSS but it really hurts the public good / community aspects that make FOSS great to me.
From a policy stand point I think stakeholders should sue when a major security breach tanks gets identities stolen, the stock or worse and CTO failed to buy down any risk with SLAs on key software.
I know all updates can be behind a paywall and still be FOSS but it really hurts the public good / community aspects that make FOSS great to me.
If companies abuse public good, how should the public protect itself and still stay great?
From a policy stand point I think stakeholders should sue when a major security breach tanks gets identities stolen, the stock or worse and CTO failed to buy down any risk with SLAs on key software.
🤔 Could you clarify the relation to opensource?
The later is true for all software, but a lot of the "open source is unsustained"talks comes from the trillions of dollars and critical infrastructure built on it, but with little to no funding going back to actually paying for development or any contract in place saying that bugs will be fixed at all.
I think the “abuse” part is less of an issue outside if this. Like I don’t mind that business benifit more than they put into public infrastructure, in fact I hope they do, but its a problem in which people that benifit the most aren’t paying their proportional amount of the bill or worse no one is and we poise ourselves to lose it.
its a problem in which people that benifit the most aren’t paying their proportional amount of the bill or worse no one is and we poise ourselves to lose it
Exactly. A lot of this public infra is written in OSI respecting opensource, yet it is being taken advantage of with little to no kickback. Most people writing opensource cannot live on it and are never compensated for their work. Yet, when the proposition is made to introduce the equivalent of a tax within/for opensource projects, there’s an outcry about it not respecting the OSI definition of opensource.
So, my question is, what’s the realistic alternative? Because right now OSIsts are defending the equivalent of roads being built by people in their offtime and are vehemently against it being written that they should get compensated if the road is used for commercial purposes.
I mean we build projects that benifit ourselves and don’t do the boring stuff we don’t want to for free. If we are affected by organizations responsible to us (we are paying customers, investors part owners, voters, etc) that didn’t do due dillegece to maintain their IT systems by getting meaningful SLAs or hiring proven capable devs to support upstream, they we sue them, demand refunds, vote out execs, etc, etc.
I don’t think the free loading concept is very helpful way to frame though. If a bunch of people can make things or run services for next to no cost, that’s great too. Not everything is critical, not every public project needs funding, just because we put in work to something does it mean we need to be paid for it. Somethings only became critical because a bunch of people, just for fun, ran stuff on it and choose it just because it was free.