I'm giving up on open source
nutjs.dev
nutjs.dev
What I don't understand is the expectation that the money would just flow upon publishing the software with a permissive license. It sounds like a lesson learned the hard way that most people won't pay for software if they don't have to, or if they don't have a vested interest in the project succeeding. Products launched with OSS cores or with some value-added services model for revenue generally bake in some kind of monetization plan. Relying on "If I build it they'll pay me" seems a bit misguided, even if it can work under some circumstances.
The conclusion that OSS is just about people not wanting to pay any money is also problematic. The world runs on OSS, and that's arguably a good thing for a myriad of philosophical and practical reasons. The bad behavior that also happens to be an unfortunate reality doesn't negate this. The sustainability worries are real and need better solutions, but the answer isn't to abandon OSS. Even if it's the right choice for OP, his situation doesn't warrant broad conclusions, and seem less an indictment of OSS and more a misunderstanding of the playing field.
They basically say it in their article: They grew up on the koolaid (no offense, so did I) of how awesome Linux and BSD are, and the GNU principles that closed source software is unethical, to be avoided, and so on.
It seems the harsh reality of "Not everyone can be sustained by a nonprofit foundation" has arrived.
“They were unrealistic and should have known they’d be personally attacked, it’s their own fault for being weak”.
Really? How about no one should be treated like shit for proving free software to you?
No, I'm not blaming the person for quitting because of the jerks. There are two narratives in the article: one is the dilemma of how to put food on the table as a developer, and one is about the abuse and criticism from people who pay nothing and expect everything.
So no, I don't "blame" the OP at all. No one should treat others rudely online, and OP had to deal with some awful stuff.
My comment was about the dream of an all-FOSS world and how that clashes with buying groceries for a lot of people.
Not as a second job, not as a side project, and certainly not as a charity case that just flat out will not sustain you.
There are precious few things that have the adoption and support linux has, and a lot of that is very much a "right place, right time" thing. The fact that I've seen plenty straight up vilify a coder for daring to want to, you know, make enough to support a library full time has always struck me as self destructive. I'm sure many great coders have given up and moved on to paid projects doing boiler plate because inventing new stuff gets you chewed up and spit out by the community if you monetize.
I think a lot of people lash out at the entrepreneurial spirit because a business venture inherently necessitates risk. Your audience is not going to reward high-risk plays, and if your business proposition threatens their use-case enough then they'll probably protest. That train of logic isn't "diehard linux/FOSS" in my mind but more just holding someone to their own standards. Making a living out of coding is one thing, but turning your passion project into a business is another. If simple abrasive comments are what made them quit Open Source, I can't imagine how long they'd last trying to sell people a Javascript library.
What "investors"?!? As a single developer, you need a computer and an Internet connection. Where do the six-(or seven-, or eight-)figure amounts of Venture Capital investment come in?
> But then you reach a pit of disillusionment where you realize that you relied on free software more than your own work, and probably ran up quite the karmic deficit selling whatever product you made.
That's what the LGPL is for: Even if you release your actual product only under a commercial license, you can help improve the tools you use, to pay back your karma to the community that enables you to do the whole thing in the first place.
(Disclaimer: This is the only way I can see being able to both make a living as a one-man software development company and participate in / contribute to FOSS... But I haven't taken the leap of faith, put my living where my mouth is. (Yet.) So this could all be hot air.)
you grew up thinking you were drinking koolaid, but you weren't, it was indeed fine wine.
> of how awesome Linux and BSD are
it's hard to think of two things more awesome than those two things. There's no koolaid, they are monumental achievements and are amazing.
>the GNU principles that closed source software is unethical
Stallman is/was a socialist, so yes, he had a Marxist take, "from those who have the ability, to those who have the need" and "there should be a limit to concentration of wealth regardless of the value of what you provide": much like so many people here. So yes, that's koolaid, but given that a majority of young people/people here believe it, you can't really pin that koolaid on GNU or open source, that's koolaid that was brought from home.
But the rest of Stallman's idea and motivation, that if you find an annoying bug while using your printer, you and everybody else benefits if you have the source to the printer driver to fix it: that's not koolaid, that's the same type of can-do idea that drove "American ingenuity" on the frontier. It's nice to be able to fix a printer just like the blacksmith could fix your plough, and once in awhile we get together for a barn-raisin'.
I just think you're oversimplifying and mixing separate concepts.
Printer driver is a nice motivating story but in practice its a lotta work for no benefit
Printer driver is what the Free Software movement, and therefore its bastard son the Open Source movement, comes from. But, sure, you want to call that "no benefit", you do you, man...
It’s only a reality because that kind of behavior is widely tolerated enough, or at least not met with harsh enough pushback, that it continues to drive away good contributors and cause burnout.
Boundaries are necessary in all facets of life. If they're not well-defined, then they're easily crossed and you're left trying to establish them after expectations have already been laid, making it difficult to push back. I know it's not easy, but sometimes it's necessary to say no and cut off abusive behaviors/people. This was one of the hardest lessons I learned years ago. Yes, you'll make some enemies. Yes, you'll upset people. It's necessary.
One other problem (at least that I've had) is attachment. It's difficult to detach from something you've put a great deal of time and effort into, and one of the threats that occasionally pop up are "do X or fork/hand the project over/give up" (or any other especially mean epithet). If they're serious about forking it, hey, let them. It probably won't happen—and if it does, what are the benefits for the community? Is it risking fragmentation? If you're detached, threats seem a whole lot less threatening. And we've seen what pressure campaigns can do with some success (xz) with burned out devs.
I may just be jaded and cynical.
You’re just realistic, don’t sabotage yourself.
Isn't there something called "the tolerance (or intolerance?) paradox"? Basically, something about "If you want tolerance to prevail, the one thing you can't tolerate is intolerance"? Think I've seen it mentioned here; others may be able to source my dim recollection.
Boils down to, I guess, if you don't want to get abused, abuse the crap out of abusers at the first offense.
"An eye for an eye makes the whole world blind" is an old saying but very true and often forgotten. As a maintainer or moderator, swift action which shuts down antisocial behaviour is more important than engaging. Perhaps you didn't really mean to say "abuse the crap out of abusers", but the correct response isn't abuse, it's a simple denial of engagement.
The other side of this is arrogant maintainers who have no interest in engaging with their audience and who don't accept criticism/comment. If you put it out there then you are asking for comment, if you just want to maintain your own code of your own purposes, then either don't make it open source or at least turn off issue tracking.
Well, by "abuse the crap out of abusers" I certainly didn't mean you should "fire the first volley". You can't know that someone is an abuser before they have fired the first volley. Then you fire the second one, to shut them down.
So, I'd rather not frame it as "abuse the abusers," because I think that risks escalating the situation.
Five years ago I may have agreed with you, but a lot has changed in my life to recognize that it's just not worth the time trying to engage someone who enjoys being mean.
Oh well, they already equate git itself with gitHub, so why not Open Source too.
[1]: Not to mention the Free Software movement -- no use mentioning it, since they've never heard of it.
Wouldn't you expect companies that rely on a given project to have a vested interest in the project succeeding? I wouldn't choose to spend who-knows-how-many man hours on migrating to a new technology instead of paying a modest (for a business) fee for licensing something I rely on.
Yes, but that is abstracted away easily as "someone else's problem". Mature organizations with SCA and policy around it will often do a library review that catches using less mature projects.
This means that you get a bunch of small companies that can't/won't maintain or contribute back to the projects themselves, and few big companies using it who'd have the overhead to contribute back.
In some cases, for popular and newer stuff, that means that when a vulnerability is found, you have hundreds of companies and projects downstream from the bad code. Meanwhile, the larger and more mature orgs flag it and deprecate or mitigate it (through various, expensive means like WAF/RASPs)
And by then, it might even be completely unsupported, or worse, made breaking changes that strand many. Like a whalefall, it will feed hackers for a year.
Your viewpoint is personal "I would do this" and for you it's easy, it's your money so you just write a check.
Companies don't work like that. Firstly because individuals get budgets, and there's no point wasting limited resources on free stuff. Secondly because individuals are accountable. There are procurement processes, multiple-level sign-offs, justifications, invoices etc.
In truth most OSS projects make it really hard to get "financial support". If you give away your product for free you make it almost impossible for a company to pay you.
My advice: if you plan to write OSS for a living -start- by understanding how company purchasing and invoicing work. Get that part right -before- you even decide what to build.
That all being said, I have no intention of writing OSS for a living. I contribute to FOSS for fun only, and I set my own schedule outside my day job.
Even assuming I can "just spend" that, I need an invoice. It needs to be captured by accounts. I can be quized on it.
Also I would rather pay one company $1000/month than 5 companies $100/month for the same service. To be crass about it, it isn't my money, but it is my time.
I have yet to hear of a McDonald's sending a truck to the nearest soup kitchen and loading all food into it, to sell at the restaurant, because companies "take maximum advantage of any free resource". Well they don't do it, because it's seen as unacceptable. Why do we see it as acceptable in OSS?
Fundamentally the reason MD doesn't do that is because they don't have what MD want.
Companies are more than willing to exploit free resources whenever it suits them to do so. Dumping pollutants in air and water springs to mind. Leveraging public infrastructure and so on.
If my factory has a lot of trucks coming and going I don't "donate" extra money for road repair.
I set up a company, had a no-cost+open source version for download, and a money+open source version ("commercial") for purchase, both with an MIT license. The commercial version was faster, with more features, and included support, and it was in the marketing literature from the start.
The goal was to give users a way to justify the expenditure to their budget people.
It didn't help. I was even at an open source conference where one of the industry presenters complained about how hard it was to pay open source developers.
Thing is, the presenter earlier gave a talk about their extensive use of my software - first time I knew they used it.
I pointed out that I could get them an invoice within 10 minutes, for an improved version of the tool they were using, plus support.
They did not take me up on the offer.
I now generally interpret "it's so hard to pay for open source" as cover for "we've heard it's hard so it's our excuse for why we don't even try."
I've tried other approaches too, like a consortium model for new feature development and support/maintenance. It wasn't enough to be economically viable. Yet companies include that software in products they sell. A few years ago I asked one of them for money for support, and was told it wasn't in the budget. What they do now is ask the current maintainers for free support.
My advice: if you plan to write OSS for a living, work for a company where that project demonstrably saves them money and/or lowers their risk on external vendors. Do not try to be an independent open source software vendor.
And it's pretty obvious why -- a purchase is a transaction with a clear expectation of what you're getting in return. If you donate, it's unclear what you're paying for and what the maintainer's obligations are.
The notion that you'd make some useful open-source project used by multi-billion-dollar companies and they'll throw a few pennies your way to make sure you keep the project alive is hippie bullshit.
Unless it's truly a well-established and well-governed project with a diligent maintainer at the helm (e.g. Vue.js), the only way companies financially support open-source is by contributing work or hiring the maintainer.
I think he's saying that his "professional journey building OSS" is over. ie his day job needs to generate income.
The abuse part exists in all software, free and commercial. But it's especially galling when you did the work for free. OSS also tends to attract, um, shall we say, those who are likely to be uncomplimentary. (Spending money on things means you're more likely to like it.)
The root point though is well made, and another annedotal data point - relying on random "companies supporting you with voluntary payments" is not a business model, and fundamentally misunderstands how businesses work.
Hint - If you don't -invoice- then youre not getting paid.
I agree that he’s saying this. But FTA:
> Open source is great, but it's not sustainable. We self-sabotaged ourselves over decades, and now we're at a point where it's hard to turn back. Publishing source code for the greater good is a noble cause, but to be honest, I think that over the years, using "open source" has become an excuse to avoid paying for software.
I interpreted this as something beyond just his personal position, and seemed like a broader indictment of the OSS model.
There's also OSS at the "one man band has a small project" level, where, IMO, the sustainable model has yet to be figured out.
Is it, really? At "the large-scale level" of the project, perhaps -- but what do we know about how "sustained" individual contributors even to those projects feel they are being?
I disagree. I maintain a reasonably popular project (25K stars on GitHub) and a large majority of people reporting bugs / asking for features are polite and not entitled. Of course, those exceptions sting overproportionally.
I maintain several small open source projects. The bug reports are generally helpful and the users very polite. People regularly thank me for my work and I cannot recall a single negative interaction. The trick is: my target audience are computer musicians :)
Sorry, couldn't resist. But your observation -- basically, that if you want non-rude users / customers, don't direct your product at programmers / hackers / geeks -- is so common as to be almost a truism. Why is this? Are we all assholes, or WTF?!? Do we have to be?
Sigh...
On the contrary! My users are programmers/hackers/geeks. The difference is that they use my software to create (experimental) art. Many have a non-technical background, though. I guess that creates (or requires?) a whole different mindset. These people are genuinely happy that the software exists because it helps them to be creative and express themselves.
> So you, as opposed to your customers, are just as grumpy and rude as the rest of us...? ;-)
My background is in music, so I am not really a typical tech guy (although I've been programming since I was a kid). I might be a bit grumpy at times, but that's because I am from Austria :p
Ja ja, alles Böse kommt aus Österreich: Hitler, Schwarzenegger, Fritzl... No, wait, turns out the Governator is a good guy[1]!
OK, sorry, never mind.
One of the things that makes OSS so great is that it's not done with a profit incentive, so it doesn't exploit or rent seek from the user.
Many labor under the delusion that they can, or should, make money writing OSS though.
But I know for every AH like that, there's thousands or millions of people who do benefit of using my software, so I try to keep it up. I do work fulltime so now I have little time to do new projects, but still keep up with the PRs and occasional small improvements in existing ones (e.g. adding types definitions, or moving to ESM).
* IMHO the move that happened where newbies stopped trying to learn how to properly ask questions in SO since that community didn't allow homework questions or low quality and started going to the repos of the projects they used to ask those very same questions
Yet, users or submitters of open-source must be coddled? One of the chief complaints about Linus Torvolds is his blunt communication style in response to poor quality code.
So OSS developers must be able to accept very harsh critism or even insults but always be kind to users who offer nothing in return?
Now, he is still to the point and harsh when needed, but in a respectful way. That works and it's still as effective, if not better (because, it turns out, you are more eager to take something in account if it's not insulting you).
> So OSS developers must be able to accept very harsh critism or even insults but always be kind to users who offer nothing in return?
For one's own sake, yes, it's better to be able to take the messages one receives. And no, this doesn't grant you the permission to be sloppy and not careful when communicating with other human beings.
Now of course if someone insulted you, you'd be forgiven to not be overly nice with this person. Though avoiding to lower yourself to this person's level is the better option if you can help it.
I personally find that someone who insulted someone else who responded with class looks particularly bad.
Well good for him!
I absolutely didn't say that, please don't twist my words. Not only did I not answer about the OSS dev response, but I also didn't make a moral judgement of what must be done, both of which you are attributing to me.
They can answer with insults for all I care, but that's a lose-lose situation. The way the OSS is set up today is that you WILL get shit, so you should be able to weather it without it affecting you.
I thought this dev's attitude was fairly healthy. Try something, see it didn't work, start charging.
They resent you when you succeed - "They got lucky - I could have done that!"
You just need to do your own thing. You must find validation within yourself.
I don't think people should get any more cynical. That's why we have this problem. The solution isn't to become more like them.
But it is absolutely vital to understand that there are those types of cynical individuals out there. That's fine. Block them out as appropriate; You don't owe them anything, and they wouldn't reciprocate anyway. Keep an eye on them and take steps to protect yourself when they start to get too opportunistic/actively sabotaging/slanderous etc.
My experience of people like this uncle is also that they have generally never done something like running kids sporting events, and in some cases outwardly signal that such work would be beneath them. (Not saying this is true for your uncle, but it is in some of my experiences.)
I think calling that naïvety brings inaccurately benign connotations. It is possible to be naïve while thinking the best of people, and understanding in good faith that everybody is probably trying. Naivety alone doesn't make somebody's default cynical and bitter.
> This uncle was just a very naive person, it's like he thought these people's entire existence was to run kids sporting events.
If you literally cannot even conceive of other people existing in any way that doesn't directly serve your own desires, I think that's less naivety, and more arrogance and entitlement.
If you interact with a thousand people, you are going to interact with multiple genuine criminals.
Probably not a majority, though. And not that it detracts from your actual point; just a s(n?)ide observation.
Imagine if OSS went away tomorrow, not even all OSS, just the supplemental developer code specific tools. Suddenly 90+% of JavaScript developers would no longer be able to do their jobs. They wouldn’t even be able to pretend to write deliverable code. Careers instantly killed.
Nobody thinks about that. These free helpers are just assumed to be required and always available, completely taken for granted. These things are just presumed to be absolute necessary and unavoidable. God forbid those OSS devs don’t do your jobs for you too, or at least just provide a bit more custom help.
Xkcd, Nebraska, 2003...?
Do you think Windows 11 devs don't get cursed at? Sure they do but because Microsoft shields them from the users they don't know about it. I can't log an angry issue against the windows repo because they've added yet another stupid ad somewhere. And the same goes with most commercial software.
Most commercial outfits have support and development split out into different functions. It's pretty unique to FOSS that end users can log issues directly with the devs.
And for a support person it's easier to deal with this because it's not their own work that's being criticised so they don't take it personally. I was in support myself and I was pretty emphatic with customers, because in many cases they were right, our software really did suck because there was way too much attention spent on marketing and not enough on UX.
For those who dare to create and release things to the wild as an individual - hope you have thick skin! People are mean, lazy, heartless, cruel, brainless, but also occasionally helpful, thoughtful, and sometimes even smart - and can correct and improve you.
So it's overall worth it!
A lot of people have mastered this better than me, but you can see yourself in a sort of 3rd person sense instead of a 1st person sense (I think it's called "being objective") and when you do it fully and purely, you can't be offended, it's impossible, because if done correctly you no longer identify with yourself but as the bird's eye point-of-view - but because you are still in control of yourself, from this vantage point you can direct your intentionality from a much wiser position. And if somebody unjustly judges you out of spite, jealousy, resentment, etc. you can see it as clearly as if you viewed someone doing that to someone else. A powerful mindset to hold for public-facing creators. You get the benefits of being shielded, and "it's not my ego" and also ego when you want it - at night, under the stars, having a beer, when it's safe to feel proud.
The parallels between open source and bolshevism are interesting. I'm not a history expert, but this is just how it appears to me.
- Contempt for property
- Pitches itself as a movement by "the people", ends up being a tool of the powerful (e.g. Microsoft's use of open source)
- Punishes the producers by destroying the economics of production, rewards the stooges
- Creates a high-low alliance between powerful and unskilled, drains the middle classYour lists of points seem also applicable to capitalism.
- ignore property rights if the fines are cheaper than the profits
- capitalism both enables people and greatly enriches the most powerful
- ask the Luddites about how to destroy the economics of production
- "Socialism never took root in America because the poor see
themselves not as an exploited proletariat but as temporarily
embarrassed millionaire." (famous quote derived from Steinbeck)Software in the public domain kind of by definition can't be open source. Not for more than a fleeting instant: You can take it and use it, and so can anyone -- and immediately make it closed source.
Yet most open source projects use a license based on copyright, and copyright is generally considered part of "intellectual property" as it draws from property ownership as its model.
Without strong copyright, there is no effective GPL.
I therefore do not see any connection between open source and contempt for property. Certainly less contempt than I see from capitalist corporations which use open source components in proprietary products and in violation of the license terms.
As for your "kind of by definition can't be open source", I'll kindly direct you to a counter-example at https://www.sqlite.org/copyright.html which includes both "SQLite Is Public Domain" and "SQLite is open-source, meaning that you can make as many copies of it as you want and do whatever you want with those copies, without limitation."
You'll find very few people who argue or believe that SQLite is not open source.
i agree with most of what the author says, except this.
we sabotaged ourselves? by not predicting that people are greedy and have the nerve to complain about free stuff?
by giving code away and not expecting anything in return?
by building an entire operating system that now dominates the world?
i see no sabotage. nor do i see an excuse to avoid paying for software.
sure, there are freeloaders. and yes, there are idiots that feel entitled to get free support. and yes, companies are exploiting this.
but despite all that, thanks to an entirely free and open to modify operating system, the world is a better place for many.
what we failed to do is to make FOSS self sustainable in the sense that people can live off it.
but we have to ask, is that an error, or should we accept that as by design?
if it is the latter then we also have to accept that not everyone will be able to contribute. especially most will not be able to make a living from contributing to FOSS. but i believe this is fine.
contributing to FOSS should not expect a monetary reward. if you expect monetary reward, consider that the available FOSS software is comparable to other software that i'd have to pay hundreds, if not thousands of dollars for.
that is my monetary reward. but i am not making a living off it, nor do i expect to.
Is this simply an endemic issue in the software space? I can imagine a great deal of people thinking it's not worth it to financially support a project or plugin they rely on because "I could make that myself in a weekend if I wanted to" and using that rationalization to justify being rude to the project's maintainer. Or perhaps the true believers in open source think that people should feed themselves on ideology rather than bread. Is there something else going on?
And all of those things are different for software. Between freemium garbage that hauls you in only to present a subscription charge to access basic functions of the program, to software utterly saturated with shitty ads, to, frankly, open source projects prepared to publish themselves accessible for free use by all, we have utterly cratered the perceived value of software. And while the last group in that list is certainly head shoulders and cock above the others with regard to ethics, it doesn't change the fact that open source software is loved precisely because it's free. People LOVE it for that, because they get access to software they don't need to pay for, the lions share of those aforementioned people having utterly no clue what goes into making it. Or, worse still, know exactly what it takes and are happy to shove that workload onto someone they don't know, with a side order of verbal abuse when bad things happen.
I don't know how to fix this. If all the open source software went closed source tomorrow, it would be unmitigated chaos. But at the same time, how many of the Fortune 500 right now are utterly dependent on it? How many people's fortunes are maintained on the back of free software they could never themselves make, built by unpaid and abused volunteers? I love the principles of open source software, but I have never in my life written one sodding line of code without a paycheck coming and I intend to keep it that way, not because I don't think the world wouldn't be better if I did, but because none of the people I'd want to benefit would. I think our industry would be better if more people kept to that philosophy.
But with time, it's now obvious he was right about a lot of things. Very few things in the history of humanity made as much impact as OSS and all the things it has inspired and enabled: Linux, gcc, Postges, and so on. Think about how many things are derived from Linux alone, e.g. Android. Zuck hacked on early Facebook in php and MySQL, it's his choice not mine, but still, the impact is obvious. Before people start piling up on me and downvoting, think about the things that Facebook open sourced like React, PyTorch, LLaMA, and so on. How can this be bad?
bad or good, we're forced to live in two worlds. a digital realm, where things can be copied infinitely for free, and a physical realm, where there's rent and food to pay for. so it's bad, because we haven't established a basic level of existence for everybody so people need to get whatever they can get out of it to pay their bills.
I've gone through the same evolution. Stallman was fundamentally right about the notion of rights for users--to look at, to understand, to change, and to redistribute software. As more of the world is driven by software I think those rights are merging with other fundamental human rights like the right to free speech. They make the world a better place.
People pay for streaming services and buy stuff from app stores, because it's convenient. But if the service is not convenient enough, the catalog is too narrow, or the price is too high, piracy and free alternatives start looking more attractive.
No. It’s everywhere. I don’t know if it’s a societal thing, I suspect more innate. Though individual cultures may modulate it to different degrees.
The lower the price, the less valuable it is and the more people are willing to make jackass demands. You want respect? You have to charge enough.
It’s sad. It’s amazing open source exists as successfully as it does in spite of that, though I suspect in many cases it’s a byproduct of selfish corporate self-interest in hiring developers.
Software may just be (or seem) worse due to the anonymity. People are way more willing to be jerks in a text box or to an email address than on the phone or in person.
It's also why I quit listing things for free on Craigslist or FB. The absolute dregs of society come out to play. They'll demand you bring it to them, or that you hold it til they're ready, etc. And if someone else got it first, expect to receive a slew of hate messages. Not worth any of the hassle anymore.
Personally speaking, if that user had posted something with the same attitude on one of my projects repos they'd have been banned from the repos of the entire org.
Pretty sure I've only ever had to do that twice before, across a lot of years.
I suspect a LOT more bans would really help with the average tone and amount of contributor stress/burnout.
But the whole "destructive arsehole" approach is over that line, and needs dealing with accordingly.
All of this is fucking stupid.
I use open source because I like having the ability to learn how it works. If I can't know how a program works, I can't have control over it. It is not my tool, I am its user.
I also just like learning how technology works in general, and non-free software is generally difficult to share the source code looking from the perspective of a company. Also in my experience, open source software is generally a more fun experience when using it. It gives me a sense of freedom in an increasingly restrictive world.
He's saying the reason corporations use open source IS that they don't want to pay for software, as OP said.
i also don't blame anyone for taking their own, mostly individually maintained and developed, project from open to closed for whatever reason. if the commons finds the project valuable enough someone else can always come along to fill the gap later, though it is sad to think about all the work that went into the original project.
> I am continually innundated with support requests from users who fail to read even the most perfunctory of documentation. I do not have time to support and maintain the project at this time.
Fairly ironic.
I still see that today. From the volunteers who coordinate 4th of July celebrations to the 4-H mentors to that guy who hauls his own equipment over every month to mow the vacant lot next to the town park, just because somebody needs to do it or it won't get done. Most of these people have day jobs. The folks who rescued people from freeway car crashes back in the day and the ones who still do it today have day jobs. Some are professional paramedics on the clock in the big city who do it for free out in the little village where they live on their days off.
I know the world of open source software is bigger than that. But I still see the world through the lens I acquired in childhood.
Rude and inconsiderate people need feel the pain of being actively blocked everywhere and not able to get anywhere forward with any of their requests. This can at least help OSS maintainers and developers get a little bit of mental sanity back
I feel bad for the state of open source [0] - even when Microsoft literally a couple of weeks ago pulled the "FIX THIS NOW" card on ffmpeg https://trac.ffmpeg.org/ticket/10341#comment:4
All the free software I had put out there is kind of like that. I don't care about the fame, glory or user count. I release something I built to scratch an itch just because someone else might find it useful. If you didn't like my code, tough luck, go write yours.
Edit: call it the FOOSS license, ha!
Though I don't think that's what most projects want. You still want feedback usually. You just want to skip the entitled users.
So, choose a regular license, and comport yourself as a maintainer in a manner that tells people to fuck off.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY
> Hi, This is a high priority ticket and the FFmpeg version is currently used in a highly visible product in Microsoft. We have customers experience issues with Caption during Teams Live Event. Please help,
OSS is often sponsored by major corporations, for example React JS is essentially a Facebook product.
Creating something like Nut.js for free isn't sustainable, the author needs to eat after all.
Desktop automation is very very hard to do, people aren't usually automating this for fun. It's folks working at companies.
If it's free then you just have a free tool to use, and maybe you'll donate out of the good of your heart. But your not going to ask your boss to donate.
When it's a paid product you have to just tell your boss we need to buy a license.
Thankfully, my own open source projects aren't popular, so I don't have to deal with this level of self-entitled behavior. In other projects, when I report issues, I try to include a patch or PR that fixes the issue. If the maintainers are willing to work with me, I'll evolve this patch into something that they can merge into their project. If they are not, well, I can always maintain my own patches. Demanding that they fix an issue or launching insults -- even when certain toxic maintainers start this behavior -- isn't helpful to anyone.
I'm sorry the author was burned by bad experiences, but I completely sympathize with this decision.
This is a big culture problem driving a ton of good people away to avoid annoying jerks who deserve to go.
It's a "big culture problem" in the same way profit maximization is the destroyer of modern businesses. Everyone uses Open Source software; annoying teenagers, political dissidents you disagree with, state actors, and businesses that will ignore your license (cough Tesla cough). If you don't rise above it, the the world isn't going to change according to your whims.
Also I never said anything about an “unstable core contributor”.
I fully disagree that nothing can be done about this. I never said people shouldn’t have to deal with disagreements or unlicensed use. Yeah that’s going to happen.
All I’m saying is projects should take a much much harder line on abusive/rude treatment. The people who act that way will never change if they don’t face consequences. When project A puts up with it, they learn they can do it to B and C too.
But if A and B stood up, maybe C and D wouldn’t even see it.
It will never be zero. But it can be a lot less than it is now.
When you do it the other way (start open source, transition to closed source) it seems like everyone thinks they are entitled to get your work for free and they send you hate mail.
1) The unpleasant interactions, while rare, tend to be VERY unpleasant.
2) Unless you are solely devoted to working on that thing as your only hobby, people start wondering about the delay between code/releases.
3) A certain amount of the work is just keeping the lights on: making sure your dependencies are secure, making sure that new change in Github actions doesn't break your build, etc. If you only have a limited time to work on a project, a lot of it gets spent here sometimes.
4) The more popular something is, the more eyes on it, and the more bugs are found (and the bigger chance your bug fix introduces new bugs, especially if you have limited time to spend fixing it). This then takes up a larger percentage of your time.
For a certain level of open source popularity I feel like I only get a few options. I can turn it into my job somehow, I can make it my only hobby, or I can walk away. In a few instances I've chosen to walk away. Sometimes there is someone to take over, sometimes there isn't. No matter what it feels like an impossible choice.
I've started to think that there shouldn't be such a thing as a "main" codebase, but rather a network of clones that each introduce whatever fixes or features are important to them, and if they want changes from others they're free to integrate those themselves. Yes it's convenient for users to have a curated blessed distribution of a project, but at what cost?
Imagine I'm rude and ready to insult this open-source maintainer. Am I looking for a CODE_OF_CONDUCT.md to be like, "Oh, crap, I _can't_ be rude and offensive? Darn, my plan is foiled!"
If I want something that doesn't exist bad enough, I make it. I release it to the world for free. When I need an improvement, I make the improvement. If you need an improvement, make a PR. If it's a feature request, unless I think it would be interesting to implement, make the tool more well rounded or I will find utility in the proposal, I don't do it.
I don't maintain beyond that. Sorry not sorry. If it's popular enough that a community forms around it the community can maintain it. If someone or some company comes to rely on it, they can maintain it. I made a thing, I gave it to the world for free just because, that's it. I don't owe the world anything and I'm not a charity.
- I didn't like MS getting their hands on Github, knowing my code would be used to feed whatever MS had cooking.
- I began self hosting my code, only to become bitter with self-hosting solutions and peoples' general attitude towards it (why are you not on Github)?
- I refused to create a "Github" mirror to stay relevant.
- I also gave up writing (blogging) in general after realizing no one gave a damn what I thought.
- I then gave up sharing code in general as it felt like a burden. Why put my blood and sweat into something people won't use if it's not on Github, and then people feel entitled to whatever I make?
because of repeated abuse, I no longer offer free discussion of this software. so unless you have paid up front, do not:
post an issue, post a pull request, message me on Discord, email me
But, I can't look past the AI art used to generate the YouTube thumbnail on the main page. I'm sure some artist wishes they could work on an art full time, and still be able to pay their bills just as you say you wish about your software.
No one wants to pay for anything, including you.
You have failed to understand that the value of the service is fundamentally different, providing open source software costs a human effort.
Providing art no longer requires the same amount of human effort, if AI is acceptable, so it's not at all comparable.
I always saw it as a technological consequence of allowing people to view their work; training a model is no different to an individual looking at it.
This letter reads hollow and I've seen a number of them before. If everyone operated this way OSS would be an apocalyptic nightmare.
I'm also not really sure what the author expected here. Having popular stuff garners unfair criticism. It's part of the gig. You can't control it. It feels like a rant - I understand, completely - but when you send people to a specific comment and tell them "see what this asshole said about me!" you're sending emotionally charged people behind the defense of their computer screen to gang up on that person. It's no longer an example, it's an abuse of power. And it feels like the author knows this, given they felt the need to write an announcement article.
This feels incredibly poor taste.
They don't have any obligation to put up with improper conduct and pointing out improper conduct is a totally fair thing for them to do. I don't think they mean for internet users to go hunt that person down, but I also don't see why it's their obligation to try to protect them. If the user didn't want to be criticized back, or cannot handle the light and fair criticism that people posted in that issue, then they maybe should have not thrown the stone in the first place?
My the point is it feels out of place to blame the maintainer for this, in my opinion. If they want to say "hey this is unacceptable, and here is specifically what is unacceptable" that is totally fair game.
I feel like this type of calling out unacceptable actions is not done enough and we really should start to do it more to signal that it's not ok to be so rude to someone providing you free stuff.
On one hand he talks about charging for his plugins, and on the other he says that open source is not sustainable unless somebody pays for it.
Yes. Somebody does pay for it. Either the programmer himself, or the company that employs the programmer. But somewhere along the line somebody, somewhere is paying for open source programming.
Yes there's a bit of quid pro quo. I'll use the gcc that somebody sweated blood, tears and money over for free. But the gcc that I use today allows me to put my software out there 'on the cloud' for the next person to use for free. Have I sweated blood, tears and money to produce my software? Yes, of course I have. Do I want cold, hard cash for that software? No.
There is a old principle here: 'Pass it around' or maybe 'Pay it forward' is how you first saw it. But I received gcc for free from upstream, I pass my own software downstream for free too.
"And so it goes."
Open source software, culturally and mechanically, doesn't have much room for unqualified positivity.
>The GitHub repo will remain public, so if you want to continue using nut.js on your own, you'll have to take care of building, testing and hosting packages yourself.
Open source doesn't require distributing pre-built packages. So still is open source. This model was used by QtiPlot until the sources were eventually stopped being available, because surprise, surprise there're people that were building it from sources and then distributing.
I totally understand the abuses described by the author and feel sorry about that. But I wonder how other successful open-source projects survived and eventually became rentable like Vue.js
They didn't find your closed source plugins, they were funnelled in from the open source project. The split license plugin model works because both sides of it are useful to different groups of people.
You get to upsell your free users additional features or support.
But more than any of that, all users complain, even paying ones. Especially paying ones. Don't kid yourself into thinking going fully closed will stop that, the difference is you'll just be dealing with fewer people. That's not as good as it sounds.
The money is another channel. If you haven't figured out that channel, then it's in the form of W-2 employment which you landed due to your very impressive project.
1. Ignore the EU, meaning a couple different things depending on what your commercial activity is but likely including not advertising there or applying for a CE mark; if it’s open enough license-wise and someone wants to deal with the EU conditions they can go start their own EU company supporting/updating it.
2. Maybe, along with (1), refusing to sell to anyone in a country covered by the CRA.
3. Just altering your license to prohibit anyone located where you’d be subject to the CRA from using your software.
It’s not the intent of the CRA to cause this but-and they were warned and maybe made some adjustments but not enough-it’s what they’re going to cause, and leads at the end to the same result as this whole discussion (I quit) for different reasons.
It also supports Rust, Elixir, Erlang, Ruby, and .NET.
His KoFi page even has the following blurb:
> I'm a software developer trying to make people's lives easier and more pleasant.
So, mission failed successfully I guess.
But ignoring comments like that becomes way harder when they're attacking things you care deeply about -- like the last 6 years of your work -- even to an absurd extent. Even when you know you don't owe random internet strangers anything. (If anyone has any tips on how to do this mindset better, I'm all ears.)
Last-straw moments really suck, and all the best to the author with whatever comes next, even and especially if it's "more of the same but without the BS".
>Not only did you sell out, you also removed all the old versions that were released under an open source license so that others couldn't continue to use out-of-support versions. DISGUSTING.
>tl;dr get off GitHub and npm entirely if you want to do the closed-source thing, kthx.
---
This is a comment on an issue from the OP's project. A comment that was factually inaccurate from the start.
This smarmy piece of... well, this person has the nerve to use their full real name, full real profile picture and associated email addresses and blogs, to make such a self-righteous, entitled comment.
He looks to be a young guy, maybe anti-social and doesn't realize that "telling it like it is" is sometimes "being an asshole". I hope he matures.
---
edit to respond to gertop: (I got throttled by the system)
I mentored a guy one time who had absolutely no polish. Absolutely no sense of social self-awareness. When I met with him at one of bi-weekly meetings, he mentioned casually how he told his boss his internship "kind of sucks" and is boring.
I patiently tried explaining to him that there may be better ways to express one's interest in other areas of the department without slighting the boss's own team and mission. If he were capable of looking someone in the eyes, I'm sure he would have stared at me blankly.
There are people for whom interacting politely with others is wholly an unfamiliar concept.
This has come up a few time recently on HN, where someone thinks there is an easy button for income. But there isn’t.
> Open source is great, but it's not sustainable
It can be (I work for an open source company, our friends at Nextcloud are also fine, there plenty of examples of thriving projects), but it's a hard thing to tackle for sure and might not apply to every kinds of projects. As any kind of business, a business around open source requires a solid business strategy.
I also think dev libraries / components are probably among the hardest things to fund. I think the tools themselves should be open source and the dev subsidized by something else (a product for which the tool is developed, or consulting, or support, or hosting).
You can also sell entreprisy features to companies, even as free software actually (open core is not necessary, and the bulk of the feature can also be in a gratis module and you only sell the convenient UIs). Make it easy to employees of a company using your work to justify an expense. People will be happy to support your work if they like it by making their employer pay, and the employer will most likely be happy to pay because this can be reassuring, especially if support comes with the payment. It's way easier than relying on donations.
In any case, your open source business strategy of course needs to take in account that people will use your open source code for free, and will also report bugs, feedback, feature requests, ask questions, and this is costly. Sometimes you can manage to setup a community where people help each other, addressing the issue partially.
You'll need to have good communication on what is paid for, what are the expectations, etc; and well prepared answers to requests in tickets that both makes it clear you need to keep the lights on and don't piss people off. With good phrasing most people will understand and be grateful you are providing many things for free.
Of course there will be the mean comments. Some are not actually meant to be mean, but just come from people being pissed off or from misunderstandings. Effective communication can help with this. And some just come from jerks, unfortunately. I can only wish you good luck with this. Hang in there. Don't let them hurt you and take bad decisions. Hopefully (fortunately?) they are very few. Keep in mind most people are well meaning, grateful and most are quiet, especially when things work well for them.
> I also always believed that if you ever started a project that is valuable for companies, they would support you in return
But this just seems incredibly unrealistic. It's not remotely the norm for small open source libraries.
Omar Cornut, developer of Dear ImGui which is used by pretty much every AAA game studio, said he recently lost his biggest source of income. If he's having trouble getting stable sponsorship, I mean, good luck.
Making money directly of an open source project is indeed difficult. But that also isn't the promise of open source. The promise is that many groups come together to work on an open source project for mutual benefit.
I had the privilege to work on several open source projects for my employer. Some of these were pretty important to what we are doing, but they were not the direct products we would sell. That worked remarkably well!
I still work on open source, for work, and some in my spare time.
I do also think though that some of the author's problems also probably stem from the fact that they used an open source license instead of a proper free software license like the lgpl or mpl, which means that they weren't able to force individuals and companies to contribute back to the software commons they were all benefiting from, and therefore ended up with a free rider problem. A copy left license would have at least made people contribute some of their time to the library, if nothing else. But it isn't a perfect solution either.
In any case, I think this author's solution to the conundrum here is actually pretty reasonable. I've been pretty sympathetic to the idea of providing all of your source code — enough to compile and build a complete and functioning version of your project — as free and open source software, but asking for money if someone wants the convenience of pre-built binaries or packages, or access to a package repository or continuous integration system or something. It seems extremely fair to me to say to the user, essentially, "yes, you can get all of the source code you need to build a version of my project, so I'm not taking a way any of your basic software freedoms, but I'm not going to do anything more than the absolute bare minimum for you if you don't want to do anything more than the absolute minimum for me". Because while I believe in the idea that information should be free, and that open source is the best development model, and that libre software is important for user rights, I don't think that people are entitled to project authors going out of their way to provide conveniences like pre-built binaries or packages or package repositories.
On the same subject, I think this sort of entitled mentality in FOSS actually compromises the quality and diversity of the open source ecosystem as well: instead of each open source project being free to pursue, on its own terms, its own unique vision for what it wants to do and how it wants to achieve that, and everybody getting to choose which projects to use based on whether their vision happens to align with the vision of the project, instead users seem to just pick a project at random, based on whatever was provided to them by default or whatever they came across first, and then petulantly demand repeatedly that the project conform to whatever they want, making every project an exercise in regression to the mean through the eternal process of satisfying some giant collection of random people, until any unique coherent vision or direction for the project is lost under the weight of democratic cacophony. See GNOME vs KDE, essentially.
Companies do not use libraries, devs do. Dev ability to pay for the libs is essentially zero, and even if you try to escalate it to management and purchase the license, this can easily take a year of few to approve.
I couldn't find a LICENSE file or other notice on the repo this author was referencing.
> Working on an open source project is still work, and if you're doing a good job, you should be rewarded for it. I also always believed that if you ever started a project that is valuable for companies, they would support you in return
My friend, then you started in the wrong place. At the risk of getting into a mire over free vs open source software, I think you have fundamentally misunderstood the principles of FOSS, or are picking and choosing parts of it, and ultimately spent a significant amount of time and effort on an inevitable collision course. FOSS tries to be a rising tide that lifts all boats, where by participating in it we all communally benefit from stability, security, lower costs, accessibility, transparency, and so on. Your reward for participating in it is in its continuation and proliferation, where others are doing the same in FOSS software that benefits you by providing non-proprietary solutions. This is real reward[0], apparent to anyone who’s lived through the hell of proprietary software especially before and leading up to FOSS’s golden age. Neither side of a license is entitled to anything beyond what it grants, and expecting more is frankly naive.
Yes, it’s beyond enraging that there are rude, entitled, and lazy end users out there. Welcome to the Internet, just ignore the Issues section like every other repo /s. Yes, it fucking sucks that companies are making trillions off the largely unpaid work by a relatively small group of routinely abused people.
To be absolutely clear, I fully believe you should stop investing time and resources on a project when it’s no longer worth it. I do not believe you owe anyone anything just because you published a project, and you have the contract to prove it. However, I take issue with the “leaving and taking my toys with me”, self immolating previously published software, gating previously open code (I hope you don’t have any contributors you are taking labor from), and throwing your voice behind a dangerous backslide into proprietary hell. If you find yourself fragile enough you’re unable to simply block noisy assholes and move on, then just archive the repo and work on something else.
It’s your project and you can ultimately do what you want, but I’m not gonna applaud you for devolution.
0 - https://hbswk.hbs.edu/item/open-source-software-the-nine-tri...
You said it yourself. They owe no-one anything - the toys are theirs to take home. That anyone might think continued access to his toys is a right just smacks of entitlement.
It's usually not very productive to blame reality, but each person has the right for almost anything.
edit: My point is, why be so harsh on someone learning a lesson about FOSS? It's like an old dad picking on their son for getting hurt when a girl dumps him. "Well son, that's life, silly".
Look, we (aka OSS maintainers) are all struggling to find ways to get paid to make it sustainable—unless we're lucky enough to work at a company that literally just hired us to work on OSS. I totally get some legit gripes about how it's hard to get enough sponsors, or client projects which let you use the projects and then improve them, or whatever.
But just throwing up your hands and saying it's all over seems pretty short-sighted. How many OSS projects has this person used without supporting them? I've probably gotten umpteen amounts of value out of many projects I've never supported…not because I'm a bad person but because that's just how this works.
A more fitting question would be "how many incredibly-entitled support requests has this person directed to projects without supporting them?", and I'd be willing to bet it's zero.
I'd be willing to bet it isn't.