I understand what the author means, but I think that in any human-2-human interaction, we are all entitled to at least basic courtesy. For example, if you show courtesy by contributing to an open source project and following all the guidelines they have, I think it's fair to assume that courtesy will be shown in return. I know that may be difficult to achieve (e.g., a high volume of noise preventing project authors from giving courtesy to those who deserve it), but that doesn'tt mean we are entitled to nothing. And this has nothing to do with open source or software; it's just common sense when dealing with people.
But yeah, if you contribute something of very poor quality (you didn't give it the attention it needed, it's full of bugs, or shows no attention to detail; or these days, it's packed with AI-generated content that makes it 10x harder to digest, even if the intention is good), then perhaps you are not entitled to anything
This only holds up for the "small" number of human interactions the average person gets. If my neighbor comes and rings my doorbell to say hello, I'm fine answering and shooting the shit, maybe invite them in for a quick coffee.
If every 5 minutes a strange comes in and rings my doorbell, I'm not getting up and answering it. And some people visiting will get angry and start pounding on the door and coming to my window and pounding on it glaring at me inside. And say, hey, I drove all the way from hours away to come visit you, the least you could do is open the door and say hello.
For them, it's their first human-2-human interaction that day, with someone they slightly admire even, and they're expecting basic human courtesy. To me, they're just the 42nd doorbell ringer today.
Trust is built through iterative exchange. This is Bayesian priors - default is average, and only moves on the introduction of new information.
Lots of examples of this. In 1950's westerns, if a stranger comes to a small town, the default treatment is a guarded form of hospitality with a health measure of suspicion. If you are dating someone new, you are by default understood as the average first date partner, and the average first date partner is not a great match.
As you say, trust is a two way street, and first time contributors are being expected to trust that it's not personal when they are met with brusquerie.
I know it's hard when it's the 99th person and you've had to deal with 98 less than nice individuals, but defaulting to an abrupt or blunt manner does nobody any favours.
Correct. The article does not disagree with you.
Reasonable people won’t start a project in an already oversubscribed niche. So yes, it does matter if you’re doing more than the minimum. It’s a social contract because you’re using up the oxygen.
I liken it to throwing a party. Yes it’s your party, but I can’t go to your party if it’s Timothy’s birthday. But if you’re popular enough then people will say “fuck Timothy” and that’s not cool. And you don’thave to be a great host and you can absolutely lock your bedroom door, but there better be snacks and maybe music, or people will talk about you behind your back. Or if you bring lutefisk and nobody there is Scandinavian. Read the room dude.
There are way too many software people who think, “well you didn’t have to come to my party/eat what I brought” is a valid response to criticism.
That’s not how social things work, and open source is one.
If they tell me I don't know how to run parties and all parties need to have music and snacks or else its not a party I'm gonna tell them to fuck off because that's what you should do to assholes.
Why? If you are hostile towards me, mock me, or attack me or are in some other way a douche towards me, I reserve the right to handle you in any way that I want to. My opinion of you has to be earned, just like respect. There is no entitlement for my basic courtesy
I'm not owed your money any more than Rich is owed your contributions. But most people asking that question are really asking 'can someone else do the hard part for free,' which is exactly the entitlement he's describing, just pointed at a different target.
They seemed genuinely confused when I told them I was not going to fill compliance form and make patching commitments for free. Really makes you wonder how many maintainers are letting themselves be taken advantage of.
Expecting quick responses to security issues is one thing, and perfectly acceptable IMO, but new features/enhancements or major changes (that might break other workflows, most importantly mine!) is quite another.
---------
[0] My response years ago when I had f/oss code out there was sometimes “why don't you do it for the community, and submit a patch?” which usually got an indignant response. Though these days if I ever publish code again it'll be on more of an “open source not open contribution” basis, so I'd not be accepting patches like that and my response would be more along the lines of “feel free to fork and DIY”.
[1] So, if I do the thing I don't want to do right now, you'll stay and probably keep making demands, and if I don't do the thing that I don't want to do right now, you'll go away and bother someone else? Let me think about that…
During the 00’s I worked for a place that had to pivot because they had a good tool but it wasn’t a daily driver and so the customers didn’t want to pay. They kept imagining some free alternative must exist that didn’t.
They eventually got an exit. Didn’t make anyone rich but they did. But the thing is I showed up to work on that tool, not knowing they’d already pivoted. I did eventually get to work on it a bit, as we found a way to improve one of our other products by fixing bugs in it. I’m kinda glad in retrospect I didn’t work on it first because the code was a mess.
You need to pay the hosting. You need to install it, configure it, and patch it. And when stuff breaks, you have no one to call upon but yourself.
But, as you say, if you can do all of that, open source is amazing value.
The linked gist seems to mostly be describing a misalignment between the expectations of the project owners and its users. I don't know the context, but it seems to have been written in frustration. It does articulate a set of expectations, but it is written in a defensive and exasperated tone.
If I found myself in a situation like that today, I would write a CONTRIBUTING.md file in the project root that describes my expectations (eg. PRs are / are not welcome, decisions about the project are made in X fashion, etc.) in a dispassionate way. If users expressed expectations that were misaligned with my intentions, I would simply point them to CONTRIBUTING.md and close off the discussion. I would try to take this step long before I had the level of frustration that is expressed in the gist.
I don't say this to criticize the linked post; I've only recently come to this understanding. But it seems like a healthier approach than to let frustration and resentment grow over time.
I am currently seeing this in real time at $work. A flagship product has been placed onto the platform we're building, and the entire sales/marketing/project culture is not adjusting at all. People are pushy, abusive, communicate badly and escalate everything to the C-Level. As a result, we in Platform Engineering are now channeling our inner old school sysadmins, put up support processes, tickets, rules, expectations and everything else can go die in a ditch.
Everyone suffers now, but we need to do this to manage our own sanity.
And to me at least, it feels like this is happening with a lot of OSS infrastructure projects. People are getting really pushy and pissy about something they need from these projects. I'd rather talk to my boss to setup a PR for something we need (and I'm decently successful with those), but other people are just very angry that OSS projects don't fullfil their very niche need.
And then you get into this area of anger, frustration, putting down boundaries that are harmful but necessary to the maintainers.
Even just "sending them to the CONTRIBUTING.md". Just with a few people at work, we are sending out dozens of reminders about the documentation and how to work with us effectively per week to just a few people. This is not something I would do on my free time for just a singular day and the pain-curbing salary is also looking slim so far.
But as far as dinging Hickey for the fact that he eventually needed to write bluntly? I'm not feeling that at all. Some folks feel that open-source teams owe them free work. No amount of explanation will change many of those folks' minds. They understand the arguments. They just don't agree.
Is there a history of that here? Were there earlier clear statements of expectations (like CONTRIBUTING.md) that expressed the same expectations, but in a straightforward way, that people just willfully disregarded?
I don't mean to "ding" anybody, I mostly just felt bad that things had gotten to the point where the author was so frustrated. I completely agree that project owners have the right to set whatever terms they want, and should not suffer grief for standing by those terms.
Clojure core was sent a set of patches that were supposed to improve performance of immutable data structures but were provided without much consideration of the bigger picture or over optimized for a specific use case.
There's a Reddit thread which provides a bit more detail so excuse me if I got some of it wrong: https://www.reddit.com/r/Clojure/comments/a01hu2/the_current...
*Edit* - actually this a better summary: https://old.reddit.com/r/Clojure/comments/a0pjq9/rich_hickey...
What you have written is obviously a criticism of the linked post.
Hey, you, FOSS maintainer, whoever you are:
- If you make your project public, it means you want and expect people to use it. You could at least write some documentation, so I don't waste my time and then find out, days later, it isn't capable of what I need or I simply don't know how to use it.
- If you set up a bug tracker, then at least have the decency to answer bug reports. Bugs make it unusable. Someone took the time to write those bug reports. I'm not asking to fix them (I lost that hope decades ago), but at least you could give a one line answer or 2-line guidance for some another person that might want to try a fix - "I don't have time to fix it, sorry, but it's probably because of <that thing> in <that file>." I mean, you wrote the stuff! One minute of thinking on your part is the same as 6 hours of digging for someone who never saw the code before.
- If you open it up to pull requests, it means you want people to contribute. Have the decency to review them. Someone took time away from their jobs, families or entertainment to write those PRs. Ignoring them because you don't need that feature, not affected by the bug, or simply because of code aesthetics is an insult to the one who wrote it.
PS:
- And no, don't expect someone else to write the documentation for your code. Same as the bugs: 1 minute of your time is 6 hours of work for someone else.
If you can't do at least these things, just say it's abandoned on the front page and be done with it.
This isn't true. For many people (myself included), making a project open source means "if you find it useful feel free to make use of it, if not I don't really mind". I don't care, at all, if one soul finds my code useful. It's a gift to the commons, not some kind of social obligation I'm agreeing to.
> As a user of something open source you are not thereby entitled to anything at all. You are not entitled to contribute. You are not entitled to features. You are not entitled to the attention of others. You are not entitled to having value attached to your complaints. You are not entitled to this explanation.
Sure, I'm not entitled to anything. At the same time, this text essentially says "you don't matter", which I personally don't like.
The bigger problem here is that the OP author is pretending to be a speaker for all open source, I guess there's no other way to justify the uncompromising attitude he somehow developed.
AI will undoubtedly change how OSS works, bot-submited PRs can be overwhelming, authors should not despair though, where there's a will, there's a way.
It's natural to file a bug report for this type of problem. I told them the missing dependency and assumed they'd make a minor adjustment and push out a fix for the buggy package. Instead, they closed the bug with a rude message about how it was a waste of everyone's time to file a bug report without an exact error message, and the buggy package just sat there.
They probably went on to become a SO mod, closing questions because they were duplicates of unrelated questions, but that's speculation.
"If you make your project public, it means you want and expect people to use it. You could at least write some documentation, so I don't waste my time and then find out, days later, it isn't capable of what I need or I simply don't know how to use it."
WTF? If I make it public it's because I think other people might like to see it. That runs the gamut from "this is a production-ready project that solves a major problem" to "this is useless but shows some interesting techniques you might like to learn from."
If you spent days fiddling with an undocumented project that turned out not to do what you need, I'm not the one who wasted your time. That would be you.
If you want to limit yourself to only looking at high-quality projects with documentations and active bug trackers and PR reviewers, go for it. That's probably a good move! But putting some source files on a web server does not imply any further obligation, in those areas or any other.
no, it doesn't, maybe I have a github project, I want to easily share it with ten of my friends for something, I don't particularly care if other people see it, so I make it public. That in no way implies I want random people to come along with bugs and PRs.
> You could at least write some documentation, so I don't waste my time and then find out, days later, i
if it doesnt have any documentation then that is a clear sign you should not expect anything from the author of that software. if reading some code and figuring out if it's useful to you or not is too much of a risk of your time, then assume it's not useful and move onto something else.
> If you set up a bug tracker, then at least have the decency to answer bug reports.
maybe the author had time and energy to answer bug reports a few years ago and maybe right now they don't. When bugs go unanswered (like, all the bugs, not just one in particular), that means the project is possibly in an unmaintained or semi-unmaintained status, might be time to move on. Or if it's just your bug, it usually means your bug is something the maintainers don't care about or dont have the cycles to spend effort on (again, could be time to move on).
certainly, if I'm an OSS author and I want people to use my project and stay with it, then yes, I'm certainly going to answer all bug reports. But I have no such obligation (indeed I have lots of projects and are in both categories and many in between).
> If you open it up to pull requests, it means you want people to contribute. Have the decency to review them. Someone took time away from their jobs, families or entertainment to write those PRs. Ignoring them because you don't need that feature, not affected by the bug, or simply because of code aesthetics is an insult to the one who wrote it.
counterpoint, people who barge in on your project with huge PRs for features or changes that were not discussed at all much less signed off on by the maintainers are incredibly rude and entitled, because they are using exactly your logic above "I starved my family to bring this to you!" to guilt you into taking your project into directions you may not have wanted, and beyond that, PRs are just as much work for maintainers as for the person contributing them. An unannounced PR to me is pretty much a bug report with a guilt trip attached, no thanks. I really wish Github would provide more options in this area.
- a maintainer
Then make it private.
> I don't particularly care if other people see it, so I make it public.
Yeah, I see someone else made the same argument. It's a reckless disregard of other people's time and nerves. Build labyrinths and scatter them around the internet. Leave manholes uncovered. Markov chains to trap humans. You could at least say it's not maintained - no, not in the disclaimer.
> maybe the author had time and energy to answer bug reports a few years ago and maybe right now they don't.
Then close bug tracker and post "Abandoned" on the front page.
> counterpoint, people who barge in on your project with huge PRs for features or changes that were not discussed at all
Then say so and then reject them. That's what PR review means. I don't have a problem with rejected PRs. I have a problem with ignored PRs.
As a user of Hackernews you're not thereby entitled to anything at all.
As a member of the thing(forums, discord channels, facebook groups, any online community and real life community) you're not necessarily thereby entitled to anything at all.
Even as a user of some proprietary software, you're still not entitled to anything except perhaps critical bugfixes and security updates. Software is sold on shrinkwrap basis. You got what you bought.
It doesn't mean expressing your opinions about Hackernews, the thing or some proprietary software, even negative ones, is inherently wrong.
I agree. I’ve often wondered why open source maintainers get worked up over this. You can just ignore them. Odds are the maintainer spent zero seconds thinking about the person before the negativity over the course of their entire lives to that point. Why let them have free rent in your head now? Chuckle and go on not thinking about them for the remainder of your life.
> All social impositions associated with it, including the idea of 'community-driven-development' are part of a recently-invented mythology with little basis in how things actually work,
Open source is effectively a gift economy. And we actually talked about it being so in the late 90’s early 00’s. Gift economies are older than human civilization. This is not a recently invented thing, nor is it a mythology. They have rules about how much either party can impose upon the other.
Yes people on the receiving end of those gifts can be entitled brats. That doesn’t negate all social contract on the other side, until it escalates far beyond propriety.
Edit to add:
Rich’s sense of authority to say things like this comes not from his prowess in writing code, which is noteworthy, but from his substantial participation in that gift economy that he is negating here. That entitlement he feels to say something is how gift economies work. Those who gave more have the authority to comment on what happens next.
I don't know where the mistaken conflating of "open source" and "developed by the community" comes from, but it is mistaken, and Rich was quite right to push back on it.
Open source for infrastructure products work just fine. It simplifies distribution by eliminating the need for procurement, builds some kind of attachment since people love using their own tinkered products and hedges risk for the customer since if the devs stop working on the product someone else will pick up.
But having to fill out forms, doing compliance work are great money making levers for which you just charge through the nose. Ultimately, open soircing is a distribution strategy and whether you should adopt it or not is dependent on the context. Most infra products do and it works out fine. Case in point: Clickhouse, Kafka, Grafana, Sentry, RedHat, Gitlab.
I was reminded of this gist when reading the discussion about MinIO (https://news.ycombinator.com/item?id=47000041).
Hard to say without commentary. Maybe the poster here was influenced by multiple threads (I guess that seems likely, if it was just one thread they influenced them, they could have linked it in that thread).
Both share a theme: the trials and tribulations of running an open source project, I suppose. Some contributions, one way or another, demand more of them than the maintainer might like. How do you deal with this? How do you set the boundaries? And so on.
But indeed yes, I can see that connection.
A thesis on "don't abuse people in open source" and a bot "abusing people in open source"?
Humans who want to use the software, and humans who author (or control dependencies of) the software.
Commenting as if this was a comment on yesterday's clawdbot-thread; I know it isn't, and it has previously been submitted here and is a good text.
It's about entitlement and using free OSS vs paying for a software product, I know.
But I think the gist of this gist can be generalized from "why you should not feel entitled to anything as a FOSS user" to "why software is about humans".
Especially because the commercial aspect is not as direct as in paid closed-source software for FOSS, but pressure (including commercial and/or social pressure) still exists.
Edit: "still" is not even a fitting word here, because the reliance of commercial software on FOSS is the societal change that causes this change in issue reporting, I'd say.
Crowd dynamics / psychological aspects cannot be ignored anywhere.
- You are entitled to human decency. Maintainers don't get to be rude just because they run a project. This is a common thing in a lot of projects; maintainers have power, and this allows them to be rude without concern. Not ok.
- As a maintainer, if you publish your work as open source, you already acknowledge you are engaging with an entire community, culture, and ethos. We all know how it works: you put a license on your work that (often, but not always) says people need to share their changes. So those people may share their changes back to you, assuming you might want to integrate them. So you know this is going to happen... so you need to be prepared for that. That is a skill to learn.
- Since maintainers do owe basic human politeness, and they know people will be interacting with them, maintainers do owe this culture some form of communication of their intentions. If they don't want to take any changes, put that in CONTRIBUTING and turn off GH PRs. If they want to take changes, but no AI changes, put that in CONTRIBUTING. If they don't want to do support, turn off GH Issues. If they require a specific 10-point series of steps before they look at a PR or Issue, put that in CONTRIBUTING. It's on the user to read this document and follow it - but it's on you to create it, so they know how to interface with you.
Be polite, and tell people what you will and won't accept in CONTRIBUTING (and/or SUPPORT). Even if it's just "No contributing", "No support". (My personal issue: I spend hours working on preparing an Issue or PR to fix someone's project, and they ignore or close it without a word. Now I don't want to contribute to anything. This is bad for the open source community.)
In general it is already in the license. Even permissive licenses like Expat have (in ALL CAPS no less)
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO [...]
There is zero need to indicate anything about CONTRIBUTING whatsoever because already it is clear that the developer already indicates that nothing can be taken for granted.
Of course it helps to be open about expectations.
I for instance don't put CONTRIBUTING instructions online but so far all of my stuff gets so little attention that I have received almost no feedback about my free software at all.
To me, this is perfectly OK and in line with the expectation that I for instance put my code online mostly for my own benefit. If it helps anyone else, all the better. But don't derive any more expectations from it because it's free...?
I agree with the behavioral observations. People shouldn't be assholes just because they can. That applies to everyone everywhere. Reminding someone with a bit of power to not be a petty tyrant is fine with me.
Everybody gets to be rude. They don't need your permission.
The rest of this is you just sort of making up standards that you're asserting that other people are obligated by "human decency" to adhere to. You're demanding ownership of other people's time and effort, and declaring that this obligation is triggered by the fact that they've already freely given of their own time and effort. You're the person who has been fed once and sues on those grounds to be fed forever.
If you, yourself, don't want to be rude, maybe reframe this as a list of suggestions that you think might be helpful to interact with people like you.
I've always felt this is incorrect. First, because lots of people use open source to further their careers, it isn't. Open source contributions are paid work if you benefit from them in any way. Second, if you use open source yourself, your work is no longer a gift. You're contributing back to the community you've taken from. The person you're being a jerk to because it's a "gift" might be the author of other software you've used.
It's funny how a hobby project becomes "a burden" when you have to consider making it friendly/easy to consume by everyone eg. writing docs from the basics like how to make a venv in python, get your env setup...
I don't share them with my hobby communities because I don't want to hear feedback because I don't want these finished projects to become eternal projects.
That's cool you're able to make what you want with that tech.
On the vast majority of other distribution platforms, it's at best a 50/50 as to whether (a) the platform still exists with any of its contents, and (b) the authors haven't wiped all the old versions to clear up space or whatever. The former typically fails on academic personal websites (which generally get dumped within 5-15 years), and the latter typically fails on SourceForge-style sites.
That is to say, I am not a big fan of the popular alternatives to Git repos as a distribution method.
And before that, compressed archives on BBS, or type in listings with snail mail.
github is run by microsoft to sell tools to your CEO with the ultimate aim of making you redundant
Nobody owes you a new release, or a signed binary, or a feature you care about.
Once again confusing the two and proving that “Open Source” was the worst thing to ever happen to “Free Software”
As a user of a project, I DO have a voice... but unless I am actively contributing (money, time, resources), then my voice has a different weight.
On the one hand, I don't like the idea that anyone should get more influence simply because they pay money... or that anyone should have more power just because they are active in the project. Both of those situations are possible paths for corruption or abuse of power.
On the other hand, the tragedy of the commons is a real thing. People who take, never give back, and then have the audacity to not only ask but demand things... well, that makes me angry.
I've moved from being an idealist to a realist, when it comes to open source. I think the evolving models we are seeing that restrict commercial competition are sometimes pretty good (overall), and the rise in COSS is a positive sign. We need to ensure that good projects have a way to sustain themselves.
The best projects have people (or even teams) who are focused on bringing new people in and helping them contribute. Not everyone can do that, but I think finding ways to enable people to contribute (money, time, etc) is an important part of building the community.
> or that anyone should have more power just because they are active in the project.
So you are saying that although I create a project to solve my problems but as soon as I make it open source (so that others can also benefit) my power on the project will become equal to the power every random person on earth has on my project?
If making my project reduces my power on the project, why would I ever open source anything?
Good thing that open source world does not work like that. When I make my project open source, I still have full power on my project and I decide what goes in it and what is rejected. I have no reason to not use the powers I have on the project.
If it ever became like you say that as the creator of an open source project, my powers will be equal to the powers of every random user, I'd stop making anything open source.
I never said that, or implied it. It would be dumb to say that someone who creates an open source project is at the mercy of the people who use it.
But, many people have had the experience of dealing with loud voices in open source communities, and sometimes abusive voices. Or people who are pushing/promoting things that they want but are actually contrary to the goals and well being of the project.
As I stated, that power is a potential route to abuse. This is absolutely true whether the person is a maintainer, contributor, or creator.
If you create an open source project, of course you have absolute power over it... to suggest otherwise is foolish.
And we have seen projects that fail or collapse due to lack of leadership, corrosive culture, myopia, or burnout. That is inevitable.
My point is that we need to be realistic about these things. This goes back to the original post that "open source is not about you". Users aren't "owe" anything by a project or its creator. At the same time, creators/maintainers have a relationship with the community.
How they choose to manage that relationship is their choice... but we should be aware and honest about what that means and how it impacts the project (and the community).
I respect your willingness to modify your original stance upon closer examination. Non-ironic hat tip.
FOSS is simply computer users doing what they have always done, and accomplishing things no one (or no company) could ever do on their own.
For those that paid tens of thousands of dollars to keep the office talent happy with what they know software wise, it has been my observation the training and support is often still missing on the commercial options as well... once they get paid.
Finally, most become locked into a vendors up-sold ecosystem as they choke off compatibility with other external product workflows. And you can't add something to fit your specific use-case, as single users don't matter in business products.
FOSS is usually better in almost every way most of the time, but often lacks stability as upstream projects continuously undergo permutation. Note, even the old closed-source Nvidia GPU drivers in kernel <6.0.8 are now abandoned in >6.15 to send a lot of old Linux laptops to the landfill.
Confusing skill issues with the realty of the software business is common. =3
That's new
Edit: https://web.archive.org/web/20260213161600/https://gist.gith...
But then you also have high ego people motivated by building a personal brand, prestige and status... and open source is just means to that end. While their contributions are valuable, conflicts of interest arise.
While we are not to the point of hosting events in Hawaii yet, I’m hoping we can see this as a teaming arrangement to accomplish great things together!
That you are entitled to have say too.
That such & such says should be followed, nope.
But one could say it's even less about you with close source.
You're naive if you think your immune to social exploitation just cause you write some words. Your entire being is defined by social exploitation. You adopt our language, our roles etc but you believe you can transcend them when it's convenient. Developers aren't entitled to make people reliant on software and ghost them. I'm sure teachers, firefighters and congress (lol) would all love to stay home and wait out the collapse of society, but they go to work because people rely on them. It's an odd thing for me to build a firetruck, go around pretending to be a firefighter (out compete and make the firefighters lose funding) and then snap back at people expecting me to work for free even though governments do fund open source.
If you volunteer as a crossing guard, even if you aren't paid, you have a duty of care. There aren't currently laws against your behavior, but if there is a pattern of such behavior it may be illegal. The EU through the CRA is doing good work in this regard.
Of course governments shouldn't compel people to work (>.o). But nobody wants to live in a world of abandoned core infrastructure projects. You aren't an exception, but you thought yourself special when you decided to work for free. Now instead of understanding why people work for money you scrawl against human nature.
Just look at clojure's stats and understand what this "wisdom" brings
I can't say whether it accomplished its original intent, but my experience is that it's held up in really disappointing situations which sit counter to my collectivist values
I have a ton of experience with community-building, and what's espoused in this essay is an attack on the values of that world imho.
My take-home is that there are many conceptions of what "open source" is about, and from where its value flows
The only point is that all the time that you and other selfless maintainers are spending on their projects is not something that anyone is entitled to; it's a gift, not a duty.
To actually conflict witht the essay you would need to hold that any developer that ever publishes a piece of software is not only duty-bound to maintain it forever, but also to engage with every potential (crackpot) user or collaborator, and that's simply not a defensible perspective to me.