There is nothing wrong with developing software and selling it. It used to be the norm and it is still quite common.
These days "open source" is virtue signaling and expected "to be cool". That people then grump about not being paid shows that they are not particularly interested in the concept of open source.
However, the term open source has been used for so many different things that is has lost most shared coherent meaning. I guess that is why "Libre Software" is now being used by some.
What is plain hypocrisy to me are the people who developed "for profit" open source projects, and are angry when they dont get paid enough, when the projects they have created rely on GNU tools, the Linux kernel (Perhaps Debian), a libre software database on so on.
Their product is built on the shoulders and sacrifice of other open-source folks that often is not getting paid or not paid enough.
For profit open source should have clause of donating X% of profits downstream to the open-source projects they rely on. (Since they would have no product without them)
There are some core and vital open-source projects that have enormous importance for millions. I think supporting them should be a priority.
A lot of modern software is "open source" until it become inconvenient and they introduce "Pro", or "see source", or shift license entirely.
A lot of companies should just be "for profit". There is nothing wrong with it and nothing wrong with making money, or making money off of open source. I do nitpick on people who see open source as a way to get paid and they are angry if they dont get it.
Now, maybe it's not as profitable, but not every wants to be as big as Apple or Microsoft.
Also helping sourcehut is that it's actual deployment process is uh... Interesting? It's expecting to run on Alpine (and not dockerized Alpine) and you need to be able to supply an email server. The latter especially means that the usual problem of "FOSS hosting with a price label" doesn't really pop up; nobody is going to bother cloning sourcehuts deployment setup without the fees attached because very few people want to selfhost email for a personal instance of FOSS software. (Since self-hosting email is rather annoying for maintenance since your server IP can end up in random blacklists and you won't know until the setup stops working, and sourcehut relies a lot on email.)
[0]: https://man.sr.ht/billing-faq.md - seems to mostly be on a "were not gonna be jerks about it" - "if you're so poor you can't pay for sourcehut on the price given, send me an email and we'll work something out" basis - the goal doesn't seem to be to extract profit from every user and "fuck poor people", which is quite respectable if you ask me.
This is a big part of why I find it so crazy that people argue that "Open Source" work isn't open when a commercial license is attached (besides the fact that "available" and "open" are synonyms and it is a clearly reasonable interpretation of the words). It strikes a balance between that "coolness" you mention while not letting big companies take your work and make massive profits while stepping on your shoulders.
I think it is completely reasonable for Open Source (aka Software Available) projects to say "Here's my work. If there's pie to be had, just be cool and share a little. If there isn't, don't fret, we're in this together." It is astounding to me that people attack those asking for a little pie when they so clearly are lifting up the pie eaters. It would be one thing if they were asking for the whole pie, but (like this article) that doesn't seem to be the vast majority of them. And if we're being honest, attacking the scaffolding seems just like it ends up in less pies overall.
Most of the time when I see people grumping about getting paid for open source, it isn't the actual developer. It's someone who thinks the developer should get paid more. Usually it's a blog post to a, "Did you know critical package x is maintained by some 70 year old dude in Dubuque, Iowa... and he's on VACATION RIGHT NOW?"
That said, the article is a pretty good summary.
- They want to be "open source" because they or their VC think it's important for the marketing benefits and it seems to be of interest to customers
- But, they're not really planning to invest to make the open source development model work
- And, they sure don't want to disadvantage themselves from a business perspective (have trouble holding features back/give potential competitors a leg up)
Sure, but the FSF (and others) may have an opinion on the license given to the paying customers, in order to not restrict them.
Otherwise, spot on; Open source is not a business model: <https://news.ycombinator.com/item?id=32287432>
Say what you want about copyright, just revealing the source impedes your ability to commercialize it.
That means the client code can't be your secret sauce. The client code is effectively this table-stakes item that you have to release for free. The hosted server component is where you have to put your differentiators.
Obviously doesn't work with all types of software, but even something like a C++ backend library (like OpenCV) you could open source the C++, but sell access to the python bindings.
I'm going out on a limb here, but what have you done to support them? Apologies if you have, but a lot of people seem to want someone else to support their favorite free thing.
I’m not taking any sides here, but GitHub’s sponsor feature makes this _very_ easy to do, and that’s valuable to me.
Edit to add: Agility in contributing money to FOSS projects is not where it could be, and that’s absolutely a place we could do better in to drive more direct funds into the FOSS ecosystem.
Also, it's not helpful to go out of your way this much to disqualify someone from having an opinion. It's essentially an accusation of hypocrisy, made absolutely blindly and randomly at a person you don't know anything about who expressed an opinion you didn't like.
> There is nothing wrong with developing software and selling it. It used to be the norm and it is still quite common.
Yes, agreed.
> These days "open source" is virtue signaling and expected "to be cool".
Yes, agreed.
> That people then grump about not being paid shows that they are not particularly interested in the concept of open source.
Well, yes, they got pulled in by the hype and then realized that they needed some kinds of cashflows to make it sustainable.
> I do nitpick on people who see open source as a way to get paid and they are angry if they dont get it.
Why? Because they made one mistake up front and picked the wrong model and didn't realize until they were several years into their project that open source was wrong for them? So you decide to crucify them for that, even though if they'd made that decision right from the start you would have 100% fully supported them?
I didn't realize that open sourcing something was a perpetual indefinite infinite-year long contract that requires endless toil and slavery to the cause. Perhaps we should be a bit more clear about that up front.
I do think moving the goalposts or being dishonest about your intentions are wrong.
What I’d like to see when this happens is honesty about relicensing with a view toward profit (or whatever you’re after), and not attempting to scrub your more liberally licensed code from the face of the planet.
I’m not asserting that everyone does this, but it’s certainly been done many times.
If you think you might one day make money on it, just say that up front and don’t be greedy when you finally do.
Why do you exclusively point out "for profit" open source projects here? What about basically any commercial software that leeches on open source software without donating anything?
We're all standing on the shoulders of giants. I don't see the hypocrisy here.
I propose something like this: When I release code, it's rights-reserved for 5 years, then open-source (and this particular clause would be irrevocable). Anyone may use the software for non-commercial purposes. Anyone may contribute, those who contribute will be granted permission for commercial use if I deem their contributions significant enough. Anyone may distribute the software under these terms.
If such a model became popular, I have a hard time imagining it could make things any worse. It might even accelerate open-source development by shifting societies resources to those who are actually producing this valuable software.
You might say, "but it's not open-source", fair enough, but we can view it as open-source contribution with a delay. For example, if this model became widely popular this year, and we saw great progress with this model, then come 2028 we would be flooded with new open-source software and ultimately might be better off than we would have been without this model.
Ultimately people choose to make their software open-source for moral reasons, and because they hope that by giving they might receive in turn--I contribute, you contribute, and we share freely (and we're both poor). This model I've talked about still achieves similar goals. People might still be willing to contribute, even for free, because I have given them an irrevocable legal promise that their contributions will be made available to all at a specific time.
(This whole thing makes me rethink copyright and patents and how much they really contribute to society. Perhaps their terms should be shortened?)
[1]: https://github.com/dragonflydb/dragonfly/blob/main/LICENSE.m...
You don't need to propose it. If its your code you can just do it.
I would recommend that you clearly document (for yourself, if not publically) what your goals are. Is it money? Fame? Github stars? Users? Contributers? Something else? In order to determine if the license is a success you need to set goals, and then measure the results.
Frankly, while this topic comes up frequently on HN, it's getting somewhat boring. I'm starting to come around to the viewpoint that you can either give your work away for free, or make a living, [1], but fundamentally those two goals are against each other.
Sure you can make a living tangential to the work (docs, support et al), but of course that's taking time away from the code (so kinda just like a day job.)
[1] as with lots of fields, like authors and music, there is a tiny sliver of people who manage it, and are held up as examples that it can be done.
But I do applaud your creativity here, and i encourage you to experiment. My first thought is why bother to go Open at all? Presumably to meet some goal and it will be interesting to see if it meets that goal.
I suspect you are looking for contributers (but I'm putting words in your mouth here) and I would suggest that the vast majority of projects get no contributers, regardless of license.
=> https://mariadb.com/bsl-faq-adopting/ MariaDB - Adopting and Developing BSL Software
I've also noticed Sentry using it. I think it address one of the the main criticisms of proprietary licenses, while still allowing a company to form a considerable moat around their software. (I think we can agree, death of author + 70 years is way too long for code source, but 5 years of copyright seems perfectly reasonable.)
Too long copyright durations and too stringent distribution restrictions are undone by open source projects. This does not result in an equilibrium because there is a vast space of projects that need to be proprietary in some dimension and open source in another. The equilibrium solution has to be a hybrid of the two approaches.
Side none: An equilibrium is like a limit of a converging series. You don't have to reach it, just get close enough until you are happy aka |x_i - x|< epsilon
I’m not making any comment about the merits of this model. I strictly make and sell closed-source software (SaaS). But it’s funny to me that this is essentially the same business model, but you use the threat of legal action rather than API keys to enforce your rights. “Open Source” is in the name only.
https://www.fsf.org/blogs/rms/selling-exceptions
He's got mixed feelings, but says "I consider selling exceptions an acceptable thing for a company to do, and I will suggest it where appropriate as a way to get programs freed."
If of all people rms considers something acceptable, then whatever that thing is, it certainly can't be described as "virtually closed source".
If you release something as open source software, then it is open source software. The end. That's what the term means. Also licensing it under a proprietary license doesn't change that. Free software licensing is not "try before you buy", and it is not "free usage for non-profits". Open source and "not for profit" are not synonyms de facto or de jure. You can use GPL'd software in commercial products and in fact many people do, frequently. You probably have a dozen copies of Linux in your house in various appliances that you don't even know are there. There are many other examples.
If you publish a piece of software under two licenses, one open source and one commercial, why would anybody pick the commercial one?
You cannot say "corporations have to pick the commercial one". The only way to do that would be to include a term in the open source license so it cannot be used by corporations. But then it would no longer meet the open source definition. "Free for private use but payed for commercial use" is not open source!
But if the open source license is copyleft (e.g. GPL), any software that uses it would also have to be open source. So dual licensing allows corporations to pay to keep their own code a secret.
This implies that dual licensing is pointless for non-copyleft licenses like MIT, and also for developer tooling that is not directly used in the final product.
That is not what is proposed in the article:
----
Isotope is open source, but there are different licenses depending on how you intend to use it:
Open source license.
This license allows Isotope to be used in personal or open source projects for free. Commercial license.
This license permits you to use Isotope in almost any commercial app. Realistically speaking, any company wishing to use it, most likely will need to buy a commercial license.----
That is not open source. It's proprietary software offered as freeware for non-commercial use.
__Stop gatekeeping__
Source available software with commercial licensing still helps the main intended target: hackers, builders, inventors, creators, learners, researchers, pen testers, and so on. Opened source code makes programs safer and encourages creativity. The article is right that you can't just live on donations and pure good will, as much as we'd love to see this you gotta pay the bills. Accountability is low in large societies and social pressure means little. SAS still helps the people, but it also puts restrictions on those that would profit off of your work and leave you high and dry. Comments like these only encourage closed source hardware as well as the lack of free software.
The fucking name OSS confuses people and this has been an utter disaster. Your name should clearly indicate what is being advocated and should not conflict with a reasonable but distinctly different definition (there's a lot of this for some fucking reason). Especially when the reasonable interpretation makes more sense! Even you say that it is in the name only and we see these fights almost weekly here. Words mean what people use them as. I don't care what OSI says, OSS and SAS are the same thing. Corporations lose trademarks as words/phrases enter the lexicon, I don't know why we should defend OSI's inane definition. They have not won the culture war on what the term means.
It doesn't matter one whit whether people can "pay the bills". It's totally irrelevant to the discussion. If you can't make money making open source software, then go get a job. This is like people complaining they did a degree in underwater basket weaving and can't get a job, or people complaining that they can't get a job as an artist or a guitarist. Guess what, most people can't make money from their hobbies. Some programmers get pretty lucky and turn their hobbies into jobs. If you want to give it a go, good on you. Most people don't even want to. Of those that do want to, most do not succeed. You have no entitlement to be successful in your attempts to do so.
And there's no rule that says that you have to release things you make as open source software. If you want to make money, you might find that the best way to do that is not to release your software as open source. That's your prerogative. But you can't make that choice and then also choose to ride on the reputation of the "open source" label. That label means something, and has meant the same thing for decades. You can choose: release your software as open source and call it that, or release it as "source available" and be honest about it.
And you're completely wrong when you say "They have not won the culture war on what the term means". They absolutely have. The only place I've ever seen anyone pretend that "open source" can legitimately mean something other than the OSI's definition is on this forum.
I completely agree. I’ve avoided using the term “open source” where possible for my SAS, instead opting for word-play like “open, source-available”, but it was frustrating that I felt I even needed to do that to avoid backlash from the zealots. And I’ve loosened my reigns there a bit as well as time has gone by. I think it’s silly. I want to use “open source” because that’s what it is.
As an example, there’s no reason Elastic should have had to cave to OSI and start using “free & open” everywhere in place of “open source.” The reality is SAS licenses like ELv2 may not be “Open Source (tm)” but they sure as hell are “open source” to most people in our industry.
FOSS !== OSS.
It is open source, yes. But "stop gatekeeping" is a bad phrase. "Gatekeeping" is now a negative spin on "telling the difference between things", and thus worse than useless.
Every law system in the world distinguishes natural personhood from legal personhood. If you've heard somewhere that Citizens Unite ruling said that corporations and people are the same, you've been lied to and disinformed.
You really do not understand what rights Open Source licenses give you. The GPL in particular really only affects you if you distribute it (a js library vs nginx). There is no 'non-profit' exception in the GPL.
> but you use the threat of legal action rather than API keys to enforce your rights. “Open Source” is in the name only.
Every software company has a license that governs it's use. I am pretty certain your company will use legal threats if it's source code got out or it's frontend code was being abused. There are likely legal clauses in your employment contract over the source code that you have signed.
of course not.
But nobody has successfully been able to charge for it, without additional things such as services/support etc.
Hard to imagine this can be upvoted to this high.
"Open Source" just means that the source code is open, not closed.
Some people just like the source code to be open (e.g. for security reasons to examine the source code.).
It is just as simple as that.
Some licenses favor the freedom of the user, and some the freedom of the developer, in different degrees. It is not a "name only" thing, unless we insist on misinterpreting it.
I definitely agree that 1) we need to convert companies more, but 2) it won’t happen with the traditional sponsorship/donations model. They need to be able to quantify the value of their investments.
With the first version of Polar, we aim to provide that while giving maintainers better insight on needs & funding to develop efforts that align with their vision.
Our tax law (in Canada) is so opaque, and I feel like finding ways for these monetary contributions to be deductible as business expenses would make it so much easier for businesses to justify the expense.
If donations can't be written off, OS projects would then do well to add a paid tier with some useless exclusive functionality, just so donors can make it a software expense.
It is deductible in India.
Disclaimer: I'm not a lawyer, chartered accountant. Nothing I ever say should be construed as legal advice etc.
> Our tax law (in Canada) is so opaque
I was going to dismiss it as something people in every country complain about but then I tried to look it up myself:
Depending on where you're advertising, you might be entitled to either a 100% deduction, a 50% deduction or no deduction at all. And you need to take into account if the publication has atleast 80% original content to figure out the deduction. Seriously, WTAF is that?!
You can deduct expenses for advertising, including advertising in Canadian newspapers and on Canadian television and radio stations. You can also claim any amount you paid as a finder's fee.
Certain restrictions apply to the amount of the expense you can deduct for advertising in a periodical. You can deduct all the expense if your advertising is directed at a Canadian market and the original editorial content in the issue is 80% or more of the issue's total non-advertising content.
You can deduct 50% of the expense if your advertising in a periodical is directed at a Canadian market and the original editorial content in the issue is less than 80% of the issue's total non-advertising content.
You cannot deduct expenses for advertising directed mainly at a Canadian market when you advertise with a foreign broadcaster.
That section about the periodical having >=80% "editorial content" (whatever that means) is going to age well with LLM material sneaking in.To be deductible as advertising, I would think the payment would need to be be explicitly for advertising services, not a dontation with the side-effect that you are recognized and thanked on a list of donors. That's just a courtesy, not an advertisement.
I can't imagine this is too different from paying a youtube or social media influencer to promote your product, or paying for an ad spot on a podcast.
Completely open source software, but you can pay a reasonable amount for managed hosting and support. Plus obviously it supports the devs and new development.
A simple line to separate DIYers from anyone who wants the convenience, peace of mind, or to support the project itself. Would love to see more of this.
In other words, I don't think it's a sustainable way to support open source projects
Then there's companies that write open-source software and are not only successful in charging for it, but also have funding. I run Fossfox [0] that indexes companies that have either open-sourced their main products (eg ClickHouse) or that heavily contribute to open-source (eg OpenAI). The ones that open-source their main products: some of them do use copyleft licenses, but most surprisingly go with Apache 2.0 (and of course use some dual licenses; with "ee/" directories). The one thing a lot of them have in common is providing hosted versions of their software. A lot of customers don't want the hassle of running it themselves, and do pay for hosting and support.
https://github.com/fossjobs/fossjobs/wiki/resources https://www.fossjobs.net/
But it hasn't been updated in years: https://github.com/metafizzy/isotope
Does the commercial license use a different repo?
> Purchasing takes a minute. Our purchasing form accepts credit cards or PayPal. Once purchased, you’ll receive a commercial license PDF and you will be all set to use Isotope in your commercial applications.
https://isotope.metafizzy.co/license.html#purchasing-a-comme...
https://github.com/whyboris/Video-Hub-App
I also sell it for $5 and have sold just over 5,000 copies last month (5 years old app). Importantly, $3.50 of every purchase goes to a cost-effective charity, GiveWell recommended Against Malaria Foundation (see website for details).
I call this charityware and I wrote about it years ago: https://medium.com/@whyboris/charityware-doing-good-with-pro...
For instance: Here is one such company (https://opsverse.io) that specialises on both #1 and #2.
Community and OSS are 2 things that are at the center of everything that OpsVerse does. OpsVerse provides "few clicks and you are up and running" sort of suite of devops tools entirely powered by OSS tools, and without the trouble of managing/scaling the tools.
I see these donation numbers where they’re netting $200/mo for some wildly successful tool. Closed sourcing it + marketing and you’ll be at $2-$3k/mo in 6 months with moderate effort.
Open source is cool for a communal app with a lot of different vectors. Openpilot for example is smart for me. For everything else though? It’s an easy way for software to become unmaintained. Good luck finding someone to work for free in perpetuity.
https://codecodeship.com/ (JS, Ruby, .NET, Rust, Elixir)
https://anystack.sh/ (PHP, Ruby, JS, Python)
Full disclosure: I built Code Code Ship
People don't understand that in these constellations the project is commercially released first and then the open source license allows things that have not been covered by the commercial license. This is the opposite of restriction.
In fact all of the big name software companies have people on staff that represent them in various mission critical open source projects. There are also a lot of smaller companies that are very successful that are built on top of open source projects that they either pioneered or contribute to heavily. Commercial contributions to open source are the back bone to the open source communities.
Any such business is a great place to start if you are looking to make money from open source. They might employ you if you are good enough and having a track record as a top contributor is a great way into such companies. Getting involved with such projects is a great way to bootstrap your professional career in open source development.
Where a lot of amateur run projects fail to make money is mis-perception of their value, unprofessional behavior by developers, or just plain poor business and communication skills. That happens a lot. Computer scientists are not great at this stuff. Also they tend to be a bit spoiled because they are constantly being pampered by companies that need their technical skills. So, not necessarily the best entrepreneurs.
Built it and they will come is not how things work. It's not a business model. Making money is hard work and you have to be smart about it. Just because you think that your source code is worth a lot doesn't mean it actually is. E.g. a lot of javascript packages are a combination of tiny and a bit of a commodity. What's a commodity: something with a lot of alternate implementations. If you are cost conscious consumer of such things, you are going to be optimizing for cost and convenience and pick the cheapest (i.e. free) good enough thing. Commodities are by definition not worth a lot. And in OSS that typically means 0$.
Mistake #1 with OSS companies: most of them provide commodity functionality that just isn't worth a lot to many people. Set your expectations accordingly. There can still be valid reasons to work on them.
I maintain some small open source projects and I've set my expectations accordingly. I don't expect or ask for donations. Below a certain threshold the admin work on my side would cost me more than the amount I'd receive. It makes no economical sense to me to bother with low $ amount tips unless I magically can get a lot of them. For the same reason, I don't donate to OSS projects either. I reserve donations for more worthy causes.
I make money indirectly via consultancy. The libraries are just there to make my life easier and they are a nice talking point that helps my clients understand that I might know what I'm talking about. Most of my clients don't actually use my OSS even. Mainly they just make my life easier. And I enjoy working on them. Nothing wrong with that.