A little side project might grow and become a chore / untenable, especially with some from the community expecting handouts without respect.
Case in point, reticulum. Also Nolan Lawson has a very good block post on it.
I don't think your position is reasonable even if I believe you just want to say that writing open source shouldn't be a main source of the income). I think it's perfectly okay to be rewarded for time, skill, effort, and a software itself.
Of course it’s OK to be paid for your work; I don’t think anyone reasonable is saying otherwise. RMS even has no problem with it [0] (though he does take issue with the term open source, so there’s that).
Here’s my take on “the open source philosophy,” having benefited from it since the 90s. Note, I am not nearly as much of a zealot as RMS, and have no strong opinion on GPL vs BSD style licensing; use whichever meets your needs and future plans.
If I had needed to pay for a Linux distribution as a kid, it’s unlikely I would have been able to explore it.
If I was unable to figure out software behavior by studying its source code, I would have many unanswered questions today, and Debian’s vixie-cron would likely still have an obscure bug [1].
I, like practically all people in the tech industry, owe a great deal to people who have given their time to various projects. Some of those people make a living out of it (Daniel Stenberg, for example), but also still offer their software gratis. Therefore, I feel a moral obligation to do so in return.
it's not about the money. for large open source projects you need to allocate time to deal with the community. for someone that just wants to put code out there that is very draining and unpleasant.
> for someone that just wants to put code out there that is very draining and unpleasant.
I never understood this. Then why publish the code in the first place? If the goal is to help others, then the decent thing would be to add documentation and support the people who care enough to use your project. This doesn't mean bending to all their wishes and doing work you don't enjoy, but a certain level of communication and collaboration is core to the idea of open source. Throwing some code over the fence and forgetting about it is only marginally better than releasing proprietary software. I can only interpret this behavior as self-serving for some reason (self-promotion, branding, etc.).
Most open source projects start small. The author writes code that solves some issue they have. Likely, someone else has the same problem and they would find the code useful. So it's published. For a while it's quiet, but one day a second user shows up and they like it. Maybe something isn't clear or they have a suggestion. That's reasonable and supporting one person doesn't take much.
Then the third user shows up. They have an odd edge case and the code isn't working. Fixing it will take some back and forth but it still can be done in a respectable amount of time. All is good. A few more users might show up, but most open source projects will maintain a small audience. Everyone is happy.
Sometimes, projects keep gaining popularity. Slowly at first, but the growth in interest is there. More bug reports, more discussions, more pull requests. The author didn't expect it. What was doable before takes more effort now. Even if the author adds contributors, they are now a project and a community manager. It requires different skills and a certain mindset. Not everyone is cut out for this. They might even handle a small community pretty well, but at a certain size it gets difficult.
The level of communication and collaboration required can only grow. Not everyone can deal with this and that's ok.
All of that sounds reasonable. But it also doesn't need to be a reason to find maintaining OSS very draining or unpleasant, as GP put it.
First of all, when a project grows, its core team of maintainers can also grow, so that the maintenance burden can be shared. This is up to the original author(s) to address if they think their workload is a problem.
Secondly, and coming back to the post that started this thread, the comment was "working for free is not fun", implying that if people paid for their work, then it would be "fun". They didn't complain about the amount of work, but about the fact that they weren't financially compensated for it. These are just skewed incentives to have when working on an open source project. It means that they would prioritize support of paying customers over non-paying users, which indirectly also guides the direction of the project, and eventually leads to enshittification and rugpulls, as in MinIO's case.
The approach that actually makes open source projects thrive is to see it as an opportunity to build a community of people who are passionate about a common topic, and deal with the good and the bad aspects as they come. This does mean that you will have annoying and entitled users, which is the case for any project regardless of its license, but it also means that your project will be improved by the community itself, and that the maintenance burden doesn't have to be entirely on your shoulders. Any successful OSS project in history has been managed this way, while those that aren't remain a footnote in some person's GitHub profile, or are forked by people who actually understand open source.
Honestly, I don't see how you're adding anything here other than inflated expectations and a strange anti-individual pro-mega-corporation ideology.
Fundamentally your post boils down to this: All contributions should be self funded by the person making them.
This might seem acceptable at first glance, but it has some really perverse implications that are far worse than making a product customers are willing to pay for.
To be granted the right to work on an open source project, you must have a day job that isn't affiliated with the project. You must first work eight hours a day to ensure your existence, only after those eight hours are up, are you allowed to work on the open source project.
Every other form of labor is allowed to charge for money, even the street cleaner or the elderly janitor stocking up on his pension, everyone except the open source developer and that everyone includes people who work on behalf of a company that directly earns money off the open source project, including software developers hired by said company even if those software developers work full time on the open source project. This means that you can run into absurd scenarios like SF salaries being paid for contributors, while the maintainer, who might be happy with an average polish developer salary doesn't even get the little amount they would need to live a hermit life doing nothing but working on the project. No, that maintainer is expected, I mean obligated, to keep working his day job to then be granted the privilege of working for free.
Somehow the maintainer is the selfish one for wanting his desire to exist be equally as important as other people's desire for the project to exist. The idea that people value the project but not the process that brings about the project sounds deeply suspect.
Your complaint that prioritizing paid feature is bad is disturbing, because of the above paragraph. The maintainer is expected to donate his resources for the greater good, but in instances where the maintainer could acquire resources to donate to the public at large through the project itself, he must not do so, because he must acquire the donation resources through his day job. To be allowed to prioritize the project, he must deprioritize the project.
The strangest part by far though is that if you are a company that produces and sells proprietary software, you're the good guy. As I said in the beginning. This feels like a very anti OSS stance since open source software is only allowed to exist in the shadow of proprietary software that makes money. The argument is always that certain types of software should not exist and that the things that are supposedly being withheld are more important than the things being created.
I personally think this type of subtractive thinking is very insidious. You can have the best intentions in the world and still be branded the devil. Meanwhile the devil can do whatever he wants. There is always this implicit demand that you ought to be an actual devil for the good of everyone.
> I never understood this. Then why publish the code in the first place? If the goal is to help others, then the decent thing would be to add documentation and support the people who care enough to use your project.
Because these things take entirely different skill sets and the latter might be a huge burden for someone who is good at the former.
The person "throwing" the software has 0 obligation to any potential or actual users of said software. Just the act of making it available, even without any kind of license, is already benevolent. Anything further just continues to add to that benevolence, and nothing can take away from it, not even if they decide to push a malware-ridden update.
There is obligation to a given user only if it's explicitly specified in a license or some other communication to which the user is privy.
Isn't most (presumably the overwhelming majority) of opensource development is funded by for profit companies? That has been the case for quite a while too...
You're shifting your argument, first you said it's not a business. Any business can be good/bad depends on climate and over time. It was a business and many busienss in the current era of AI will face such challenges. All business just need to constatly adapt over time aka innovate.
You're misunderstanding what I'm saying, I was not talking about Tailwind Labs not being a business, I am saying that in general, products are not businesses by default. In that case, my argument is the same as it has been, agreeing with your last 3 sentences.
Exactly the business model wasn't strong enough, just upselling templates for hundreds of dollars which AI can churn in few tokens was easy to disrupt.
The business model is strong. AI is stealing traffic/money from creators. That's not a problem with the business model, it's a problem with AI. AI hyperscalers shamelessly monetize other people's work without compensation. Truly an awful dystopia.
The output of AIs that is "churned out" wouldn't exist without templates like this being used as an input to the training. But that isn't "Copyright Infringement", according to the AI companies.
You and I would not get away with this no matter how much lawyering we buy.
This has nothing to do with the actual facts or arguments of the case. Our "Justice" system has openly and capriciously emphasized corporate rights over individual rights for at least 50 years now.
I disagree. The bare minimum they could have done in all these years was build a proper high quality, tightly coupled component library instead of riding this "copy paste your way to a result" trend.
Not stuff like shadcn and Tailwind Catalyst, but a proper versioned, tightly coupled UI library with rich theming capabilities made for the 99% of users who aren't skilled enough at design to be cobbling together their own design systems or editing a Button component directly.
Instead they rode the wave (despite being best positioned to redirect the wave) and they're paying the price.
If it wasn't AI it'd be the first version of MUI that moves on from Material Design 2 as a default. Or Hero UI v3. Or literally anyone who brings sanity back to the space of component libraries and leaves "copy and paste code snippets" behind
There are more knobs to turn when you have an actual library, and you become a lot less fungible than a random collection of TW classes.
HeroUI faces the same problem, and now their React Native library includes an optional (paid) conpiler solution that makes it faster.
MUI has the same problem but besides templates they have their MUI X data components which aren't limited in complexity to what can be ergonomically copy and pasted to a clipboard.
If a business model can't withstand being disrupted, it is no longer viable. It's like Uber putting cabs out of business with something better. Selling templates is now no longer viable, and blaming AI will not do anything. As Darwin would say, adapt or die.
Just like piracy isn't theft, so too isn't AI scraping. Personally I think copyright should be abolished and I think it's wild to see people on HN turn from hackers to copyright hawks literally supporting massive corporations which are the primary beneficiaries of long copyright laws, like Disney and their Mickey Mouse laws.
Now is not the time to take a principal stance on copyright. The harsh reality is that trillion dollar companies are taking the word of individual creators like Tailwind for free and monetizing it without any form of compensation. That feels incredibly unjust and needs to be fixed. I don't care what the fix is called.
I'm not a fan of copyright either but big corporations have abused them for so long, either enforce them to punish these companies or abolish them so these companies die, either one is fine with me. But don't just selectively enforce them to the benefit of these corpos but ignore them when they punish them, that's the worst of both worlds.
I think the era of buying templates is over, when you can get a tool that listens to you patiently, iterates again and again till you're satisfied for pennies, why would you pay hundred's for a template that is there for anyone else to buy as well.
The selling feature is that it's more polished (and has good accessibility etc), they're still intended to be customised, which you could use AI for. Why use Tailwind itself when you could generate one with AI? Because it's solidly tested and polished, similarly.
But the broader, more important point: an open source project previously could be funded by using attention to sell other services or add-ons. But that model might be gone if users no longer visit or know the creators.
reply