I have a few open-source libraries, and I figure that... since I give them away explicitly for free... there is no expectation of being paid. If one expects to be paid, one should sell their product.
I have a few open-source libraries, and I figure that... since I give them away explicitly for free... there is no expectation of being paid. If one expects to be paid, one should sell their product.
I can't say I blame him either but the attitude seems to raise a flag.
edit: lol, dude's got history:
https://hn.algolia.com/?q=max+howell
as a mac user I certainly appreciate Homebrew, but I can see why he's not the current maintainer (https://news.ycombinator.com/item?id=26038010).
Statements like this always really irk me. It just feels so pretentious.
When I was much younger, I used to be in awe of how OSS devs can do all this amazing stuff, put it with no expectation of compensation, get a wall of critiscm and demands back, and continue working on it stoically without burnout. As I got older, I learned that the burnout is very real and only getting worse. I'm still extremely impressed by any OSS developers ability to keep going [so you should know that at least someone appreciates you ;) ], but it doesn't seem right to me now.
So... while I don't get 100s of e-mails a day, I do get a good amount per year demanding I implement a feature. I point out that my personal contact details are there (as well as my corporate entity) and that we can be contacted for custom commercial work.
The way I see it... OSS is my past-time. The moment there are deadlines you need to pony up
"My consulting rate to implement this feature is $500/hour. I estimate this feature will take N hours, and I require 50% of that to be pre-paid before I start work. If you agree to these terms, I will send you a contract to sign and we can get started."
Hopefully that will get them to go away, but if by some miracle they agree to that, at least I'll get a nice chunk of change for doing the work.
And then we have something like the recent Log4j vulnerability, and all the companies come rushing to the developers, filled with entitlement, demanding immediate fixes, throwing shade on the developers for "causing" this problem in the first place, and all that. Open source developers certainly deserve some amount of compensation for having to deal with that garbage, even if we agree that there's no expectation of being paid for the software itself.
A year down the line, 20 companies are using your code. Two years down the line, 100 companies are using your code.
Now you have a choice: Do you continue donating your time, servers, emotions and experience to making someone else money?
If you choose yes, know that typically at least one of those companies will be hounding you for bugfixes or out-of-scope demands. We have seen how much the internet can vilify people who refuse to do this kind of free work. If your turnaround for a fix on your globally used code is anything more than minutes, you will be hated. At least, until it's fixed, then you'll go back to being ignored.
If you choose no, well you have two choices: Change the license and yank the rug out from under people, or pass it on to someone else - who might pass it on to someone else - who might pass it on to a scammer who breaks the whole internet. Either way, the internet will vilify you for twice as long for your choice.
Many people, especially with programmer brain chemistry, end up going down the high-momentum-low-friction route of burning themselves out for the sake of conflict (and bad reputation) avoidance. Because it's very easy for you to say "sell your product", especially if that's something you're good at (or if you've never done it before and so presume it's something you're good at).
So once you see that, and you know that, and you see fellow developers stuck in the same hole and you see that you are well placed to do something - anything - to help change that, wouldn't you?
> there is no expectation of being paid. If one expects to be paid, one should sell their product.
Like most blasé statements, this statement doesn't help anyone. Not least because that's exactly what Tea seems to be trying to help people to do. Whether they succeed or not, no idea - but I wouldn't be bashing the concept this early on.
Every single number you mentioned is completely irrelevant because your underlying premise is faulty. If you released some very good code to the world for free under an open source license, it doesn't matter whether 0 people or 1 million people use it. You are under literally zero obligation to fix or update anything, just like it says in the text of the license you picked.
Any social obligation that people imagine you have (or in your case perhaps more importantly that you imagine you have), is just that: imaginary. If you can't stand the idea of some stranger on the planet not liking you because you refuse to spend your time fixing their pet bugs, that would be a good topic to bring up with your therapist.
And of course, just because something you did crosses some arbitrary line of popularity doesn't mean the universe suddenly decides you are entitled to compensation for it. If that's how you hoped things would go, then you should have started a business to sell it in the first place.
That's great for you, and the other commenter who said the same. I'm pleased you feel comfortable enough with that.
> Any social obligation that people imagine you have (or in your case perhaps more importantly that you imagine you have), is just that: imaginary. If you can't stand the idea of some stranger on the planet not liking you because you refuse to spend your time fixing their pet bugs, that would be a good topic to bring up with your therapist.
I mean, I'll ignore the elitism in this statement, and presume you meant this sarcastically. But the idea that you associate this kind of unassertiveness with mental dysfunction is probably not a million miles wrong.
However, it is not an unusual mental dysfunction, and one that many more software developers suffer from than the general populace. Assuming that your bravado is matched in your offline life, that would put you in a very small percentage of programmers.
And declaring that as a source of shame rather than an opportunity for support only serves to further entrench the stigma and impostor syndrome. Which then leads to further unassertiveness and self-worth issues. Which then leads to more people feeling they are not worth being paid for their time. Which leads to more people on the internet making them feel shame.
Which means I can agree with you wholeheartedly when you say:
> You are under literally zero obligation to fix or update anything
... and at the same time be pleased to see people attempting to improve the situation for those thousands of developers who, in their own heads, do not feel that zero obligation as a daily reality. I may not agree it's the right approach. I may not even agree that it will work. But I'm not going to dismiss the premise, just because it's not how I personally feel.
> And of course, just because something you did crosses some arbitrary line of popularity doesn't mean the universe suddenly decides you are entitled to compensation for it. If that's how you hoped things would go, then you should have started a business to sell it in the first place.
This on the other hand is just plain naivety. The idea that every small side project would even support the costs of a business is not just assertiveness, it's delusional. Would you buy a shell like fish? A json query language like jq? A context summerizer for your shell like starship? An ad blocker? A file manager? And would you pay more than a payment processor or business bank account would take in fees?
Something can be used by millions and make hundreds of dollarbucks in aggregate, and yet be practically worthless individually.
Which is, again, one of the stated goals of Tea. I'm pretty sure it won't be a through-the-roof success, but again, happy to see people trying new ways to tackle the problem. You know. Beyond telling people to go get therapy.
I think you're getting a little unnecessarily combative here. Discussing something with a therapist, regardless of level of severity, is a great way to improve your mental health and with dealing with various types of social situations. The parent suggesting that someone discuss their lack of assertiveness in a particular aspect of their life with their therapist is probably good advice! There's no reason to bring up things like "mental dysfunction" here, and there's no shame in realizing that you might not handle certain situations too well and that it could be helpful to discuss that with a professional.
For me, it was a long process of disentangling my feelings of self-worth from my work product. Unfortunately, part of the aftermath was that I don't really maintain much OSS these days, and that which I do is fairly niche and therefore unpopular (which tends to cut down drastically on the entitled freeloaders who demand uncompensated work from me).
I wish more OSS developers would take steps to make their relationship with their work healthier. There's no shame in falling back on these unhealthy reactions to entitled demands, but it's certainly not a good thing.
To be clear, I'm not commenting at all on whether or not OSS developers deserve to be compensated, whether that is even practical for most projects, or whether or not Tea can or will end up being a good or useful solution. I'm merely addressing the fact that (as you have pointed out) many OSS developers have an unhealthy relationship with their code, and it's really unfortunate that most of them will -- instead of changing their approach -- end up burned out as a result.
The statement "Mental dysfunction" in my mind has absolutely no negative connotations. As far as I'm concerned, most people on the planet have some form of mental dysfunction. And in this case, I am genuinely and totally agreeing that this outlook on life is not necessarily the product of a fully healthy mind - and that's ok.
What I did take exception to was the idea that every Open Source Software developer has access (via money, time, social skills... whatever) to a therapist, and that it is acceptable for the rest of the community to offload the blame onto those developers. In other words, I do not accept the false dichotomy of "Be exploited" vs "Get a grip".
> I wish more OSS developers would take steps to make their relationship with their work healthier. There's no shame in falling back on these unhealthy reactions to entitled demands, but it's certainly not a good thing.
Couldn't put it better myself!
No. I'm very clear with demands on my time that either companies have to provide resources to implement features (and I'll charge a consulting fee to train devs) or pay me directly to implement them (and I'll name the cost). Actually, several companies have paid me, and my project is significantly smaller than homebrew (niche Haskell library).
> We have seen how much the internet can vilify people who refuse to do this kind of free work
I don't really care about being vilified online. Have had my fair share. I'm old enough to not give a second thought to online trolls.
> Change the license and yank the rug out from under people, or pass it on to someone else
Or... don't change the license. Stop giving updates, and put up a notice that says you are not actively working on project X but for a fee you will be happy to make updates.
> Like most blasé statements, this statement doesn't help anyone. Not least because that's exactly what Tea seems to be trying to help people to do. Whether they succeed or not, no idea - but I wouldn't be bashing the concept this early on.
I wish them every success, and I may end up using it myself. However, I don't like the accusations of unfairness being levied against open source users (among which I would also include myself) for using freely available code for free.
That's great for you, and the other commenter who said the same. I'm pleased you feel comfortable enough with that.
Would I be right in thinking that you have spent a significant amount of time being a full-time contractor?
Either way, I'll wager that makes you the 1%, not the typical. The typical developer works a full-time job and does a little project on the side. Their boss may or may not know about it, and if they do, they are happy so long as work on the project does not impact their full-time job responsibilities.
But this presumption of "I feel comfortable with X and therefore nobody else needs help with this" is terribly damaging, and the fact that these over-confident voices shout about how weak and inexperienced and dumb everyone else is for falling into that trap, only serves to cement the impostor syndrome and erode self worth.
People usually cannot be shamed into becoming more confident and assertive. People need to be supported into becoming more confident and assertive. And a project that helps people feel supported cannot be a bad thing imo.
>> tech giants accrued fortunes on the backs of people they’ve never thanked, paid or even met.
> I don't like the accusations of unfairness being levied against open source users (among which I would also include myself)
There's the problem. Unless you happen to be a tech giant, you are not the entity this project is trying to shame.
I don't think anyone is claiming that the common case is the developer who stands up for themselves, has healthy boundaries, and doesn't let internet-hate scare them. Most developers fall into this trap, including a past version of myself.
But I think it's a pretty objective fact that this isn't a good way to be. I'd be hard-pressed to find someone that would say that it's awesome to be a doormat who allows others to walk all over them. But with work (possibly with the help of someone like a therapist or professional coach), people can change their attitude in order to have a healthier relationship with their OSS projects, and can develop the assertiveness necessary to enforce their boundaries. If you (not you "you", just the general "you") don't want to put in that work, that's ok I guess, but then maybe you should just accept that you're always going to have a toxic relationship with your OSS projects and with some of your users.
Just to be clear, from your statement:
> But this presumption of "I feel comfortable with X and therefore nobody else needs help with this"
I'm having trouble finding where anyone said this (and if that's what you're reading, maybe you should step back and think about why that is). I see people saying that they're able to set healthy boundaries, presumably as inspiration to others. "If I can do it, don't despair: this is something you can learn too, and it will improve your life." We need not accept that the status quo is the only option, especially when it's a fairly bad option.
I don't know if Tea will be good or useful or will solve any problems, but I do note that it (at least in part) seems like a technological solution to a social problem, and those tend to not work out so well. Or they do work, but serve as a crutch to allow people to avoid confronting uncomfortable truths about themselves.
> I'm having trouble finding where anyone said this
I'm indicating the general tone. I'll be more careful not to misuse quote marks in this comment and use [] to denote paraphrases!
When I itemise the traps people can fall into, and then get the response of "No. I'm very clear with demands on my time" it ignores the vast swathes of people that don't have this luxury. Now maybe this commenter just felt I was talking about them directly; I did, after all, phrase the though process in the third person. (Now YOU have a choice, do YOU continue donating... etc)
But given this is a comment in the public domain, this seems unlikely. More likely is that the commenter is dismissing the problem, because it doesn't apply to them.
In general, I think we're mostly on the same page here:
> I don't think anyone is claiming that the common case is the developer who stands up for themselves, has healthy boundaries, and doesn't let internet-hate scare them. Most developers fall into this trap, including a past version of myself.
Exactly. Me too. The problem is, having addressed it to some extent, some people choose to believe that it's no longer a problem. Often it manifests as kind of a "I fixed myself, so why haven't you?" mentality.
> people can change their attitude in order to have a healthier relationship with their OSS projects, and can develop the assertiveness necessary to enforce their boundaries
Putting the idea of access to therapy aside, you and I can agree that it is absolutely beneficial for people to work on this aspect of themselves, as a general rule.
However, while it is right to say [This is not a healthy stance to take] but we should be careful not to imply [It's your fault you are being weak] or that the recipient is the problem, not the toxic individuals.
And while that isn't overtly being said in these comments, that's still the implication I take from them, even trying to re-read it charitably.
1) You create an anonymous online identity, and release your software under that identity, and be very careful to avoid linking it to your real-life identity. Then you don't have to care at all if you're hated, because they don't know you. If you want even more separation, you can create a separate identity for each type of thing you release. You can even take this to extremes: if you feel like an identity has been "burned" by hate, you can create a new one, start contributing to the project under the new identity, and eventually your old identity can "step down" and hand the reins of the project to the new identity. There are certainly downsides to this, but the trade off may be worth it for some people.
2) Or, you can develop a thicker skin and just not care if entitled freeloading losers "hate" you (because, seriously, why do the opinions of people like that matter?). Have a form-letter response to such demands that quotes a somewhat-outrageous hourly contracting rate, with a time estimate and a requirement that half be paid up-front. Include a reminder that otherwise the work is done in your spare time on a volunteer basis, and those paying $0 for the software get $0 worth of support. (And optionally point to the warranty disclaimer that is a part of pretty much all open source licenses.)
I think if more people would do #2 it would get normalized, and then no one would be "hated" for this, because it would be the common case. But too many OSS developers tie their identity and self-worth to their code, so any criticisms or deficiencies feel like personal failures that need to be fixed.
I don't maintain anything popular anymore, but I used to be a core maintainer of Xfce during the 00s. I got a lot of entitled demands from various people who hadn't contributed a line of code or a sentence of documentation. My only regret is that I wasted time and energy getting into arguments with some of these people, when the best thing for me to do would have been to cut them off immediately, or just ignore them entirely. (The overall project maintainer, Olivier Fourdan, was very good at dealing with this. He would calmly reply with his reasons for not wanting to do whatever it was that someone was demanding, and then completely disengage and not reply further.)
To be clear, I absolutely agree with you that many many developers handle this sort of thing poorly and contrary to their own best interests. But it doesn't have to be that way, and each individual can choose to take a healthier approach to their open source work. We have no one to blame but ourselves if we choose to engage in self-destructive behaviors in response to the entitled leeches.