- cross-posted to:
- [email protected]
- [email protected]
- cross-posted to:
- [email protected]
- [email protected]
Highlighting the recent report of users and admins being unable to delete images, and how Trust & Safety tooling is currently lacking.
Highlighting the recent report of users and admins being unable to delete images, and how Trust & Safety tooling is currently lacking.
With respect, this is a framing issue and depends on your point of view. Does a donation mean someone contracted you to do something specifically? Not really. But, will mismanagement of expectations and hostility convince someone to stop donating to a project? You’d better believe it. If you’re working full-time on a project, donations are your lifeblood. They literally put food on your table. You literally can’t afford to disregard the needs of users and admins. But of course, you are at discretion to decide what those needs actually are, and how critical they are. Nevertheless, the relationship is more transactional than it appears to be.
Overall, I think their grant from NLNet was a good thing, and I think they did good work on that. As long as their work was in scope of the grant, I don’t see a problem with that.
Community Manager, circa 2011 to 2013. I was basically an air traffic controller for GitHub issues, acted as a developer liaison, served as a face of the project to the community, and engaged on the network every single day to get a pulse on what was going on. A lot of it involved smoothing things over with people who were upset about things, resolving conflicts, drumming up volunteer coders, and indicating to core team what varying needs were across the user and developer communities. I lived and breathed it every day.
This is somewhat inaccurate, and here’s why: Diaspora never advertised itself as an Anti-Facebook. They were building a federated network that focused on user freedom, and it was a combination of timing and insanely good luck that their Kickstarter campaign picked up as much as it did. The whole “we’re going to save you from Facebook” thing was an invention of the media to get people to click headlines. What really doomed Diaspora was that the core team wanted to be a startup, the community wanted it to be a project, and getting the company into yCombinator had the team focus on things further and further away from their original goals.
This is where we fundamentally disagree. This is only true if the developers puts the project above themselves, which is the wrong attitude on multiple levels. Developer owe nothing to those donating, they owe nothing to the project and they should never be compelled to accept anything because other people are putting a metaphorical gun to their heads.
And like I said before, even successful projects are barely getting by with donations they are getting. Instead of putting themselves on some imaginary treadmill (one more feature, and we will get people to like us!) it is healthier for everyone if we dropped the pretense that “community is enough” and established beforehand what all parties want to get in order to get something done.
So, here’s the thing: these guys are working full-time on the project. Their only source of income, grants aside, are donations via fundraising. Effectively, they are putting the project above themselves.
The common model for this nowadays is the Patreon / OpenCollective / LiberaPay, where donations are usually given continuously over an indefinite period. It’s closer in form to crowdfunding than it is traditional institutional donations.
This is going to sound shitty: just as the expectation is set that no one should make demands of work done for free, so too is the expectation that development work technically isn’t owed a single penny. Any donor can stop giving, for any reason, at any time.
If I as a donor feel my needs aren’t being met, I can stop donating. As a collective action, a bunch of dissatisfied supporters can do the same all at once.
I’m not saying either side should threaten each other. But let’s not pretend that this is some hoity-toity Utopian model where donors selflessly hand over money with no expectations, and the developer just works on whatever. If your livelihood depends on it, if you can’t put bread on your table without it, then you’ve got to keep your backers happy.
No. They are working on something according to their own terms and their own value scales. They are giving a clear indication of what they are willing to do for the miser amount of money they are getting, and are telling quite clearly what they do not value highly enough to justify spending their time on it.
They would be sacrificing themselves only if they bent over and worked on something they already said they don’t want just because other people see value in the work they already done and want them to keep pushing out the missing functionality.
It sounds shitty because it is shitty. The donation-based model is insufficient and unsustainable. What you are describing is the main reason that I’d rather shut down any of the communick instances over turning to “donation-based” access. At the same time, the reason that I have managed to keep things running (even if not profitable) is that by refusing to play this game I don’t put myself in an unsustainable situation.
The surprising thing is to see how even people who have been involved in the space for so long continue to advocate for the donation-based model. Perhaps it would help everyone if we accepted reality and started telling people that it is not okay to push people to work for free? That donations are only a way to show support for what people are doing and do not entitled them to make demands of any kind? Thay if you want something done according to your exact preference and expectations you need to enter a proper contract where both parties agree to the terms?
This is why I was a bit frustrated with your last blog post. You acknowledge that there is a problem with FOSS development, but instead of trying to elaborate on a alternative model, it went down the route of victim-blaming the FOSS developers who you think should swallow the opportunity cost and keeping cranking out code. This is not healthy at all.