I don't agree with the tone of the Lemmy devs, but they are right: it's opensource being worked on mostly in the free time of people. Do not treat the devs like they are paid to do your bidding, because they aren't. If you donated and have expectations, you don't understand the meaning of a donation.
Imagine if the author had a woodworking workshop on their compound where they made things out of wood; figurines, furniture, tools, sculptures, and so on. Say they opened it up to the public so that guests could have a look, play around, spend some free time there, and maybe even use the equipment there. But then guest started demanding the author buy newer equipment, make sculptures more to the guest's liking, made the workshop more accessible to invalids, put up the national flag, play the radio, and a host of other things. All the while not footing the bill for anything, not helping clean up, not volunteering to help in any fashion.
Then the author refused and invited the guests to help. But instead, the guests went off and made a blog saying the author was selfish, cold, self-centered, egoistic, rude, and what not.
This is what the author of this article and people in that github discussion come over as. If those people came into my workshop and told me how to do things without helping out in any way, I'd rightfully tell them to fuck right off.
Articles like these that are practically demanding change will not and do not improve the dialogue. They are actually bad for opensource as a whole because they give people who don't understand opensource the feeling that they have the right to complain, the right to demand, the right to expect, the right to be entitled to an opinion and an outcome.
Of course, we shouldn't care about what people on Reddit think (and I noticed this post by chance since I log on there very rarely now), but some users in the thread genuinely ask about joining Lemmy and so I guess it's useful to know about possible obstacles to trying it that they may perceive.
Ya, reading the GitHub issue sounds entirely like burnt out devs being abused by users. It's a massive issue in open source.
The Late Night Linux and Linux Dev Time podcasts talked about exactly this in a recent episode. It can be extremely demoralizing to do all this work for free for a project only to be inundated by ungrateful people demanding you fix something or implement a feature they want. Many open source projects have died because of that.
The fact that Lemmy’s core team is taking a fairly laissez faire position on moderation, user safety, and tooling is problematic, and could be a serious blocker for communities currently hosted on Lemmy.
At this point, most of the solutions the ecosystem has relied on have been third-party tools, such as db0’s fantastic Fediseer and Fedi-Safety initiatives. While I’m sure many people are glad these tools exist, the fact that instances have to rely on third-party solutions is downright baffling.
Honestly, what? Why would be baffling to have third party tools in this ecosystem? It would be baffling if that was the case for Facebook.
Also the devs did work on some moderation features, but they probably have tons of other stuff to work on, all for an amount of money which is a low salary for one developer.
That's not the argument being made. What's baffling is to pretty much only rely on the efforts of third party devs to fill in the missing gaps. It's a profoundly bad strategy.
It's like with Bethesda releases a shitty half-finished game, and leans on the modding community to actually put in half the things that would actually make it in any way fun to play. Except Bethesda actually makes money, and the community works for peanuts. Here, Lemmy makes some money, but a huge chunk of the user community shoulders the cost out of pocket. A big chunk of the Fediverse is actually unpaid labor that brings in negative dollars month over month.
The devs have a vested interest in ensuring their project continues to grow, they continue to get funded for their work, and features on their own roadmap get planned and developed. They can't do that if the tooling is too brittle, shitty, or threadbare to actually handle the deeply fucking intense problem of managing and maintaining a server and community on the open Internet, where literally anything and everything goes. Factor in a myriad of local jurisdictions and laws about data and content, and a lot of these things end up becoming severe liabilities.
Look at it this way: with federation, a handful of volunteers themselves are doing labor for free, for the devs, by propping up their platform, client ecosystem, and reputation in the space. If this gets bad enough, people will literally say "fuck it" and walk away.
That’s not the argument being made. What’s baffling is to pretty much only rely on the efforts of third party devs to fill in the missing gaps. It’s a profoundly bad strategy.
I literally quoted the article:
At this point, most of the solutions the ecosystem
I mean, there are some moderation features in Lemmy, for sure with gaps, but there are many gaps on other aspects as well, and if people can't run the instances due to other technical issues, there is also nothing to moderate, so obviously prioritization is complex when resources available (dev) are so limited.
That said, I really don't see the problem of third parties. We rely on third parties for one of the most fundamental features, which is community discovery (lemmyverse.net), for example. What's the problem with that? I think that's literally one of the benefits of making an open platform, where other people can build other tools in the ecosystem. We are not purchasing a service, we are not talking about an organization who has a substantial revenue and tons of people and can't deal with basic functionalities. We are talking about a project with a team that is smaller than the team that in Facebook deals with which colors to make buttons, and it's "paid" 1/20th of that. So I still don't understand, what is "baffling"? Because from where I stand, all things considered, it's totally normal that a project with these resources and that gained popularity less than a year ago has still tons of gaps and a long roadmap, and that tools in the ecosystem address some of these gaps.
It’s like with Bethesda releases a shitty half-finished game
No it's not. Bethesda is company that sells you a proprietary product while having a revenue in the order of hundreds of millions. The relationship between Bethesda customers and Lemmy users has absolutely nothing in common.
Here, Lemmy makes some money
Lemmy makes no money. Considered the opportunity cost, Lemmy loses money. A single dev with a full time job can easily double the amount that Lemmy devS earn. Not to talk about the fact that the money they make are donations, without a contract bounding them to anything and also not granting them anything (tomorrow everyone could cancel donations and the income would disappear).
They can’t do that if the tooling is too brittle, shitty, or threadbare to actually handle the deeply fucking intense problem of managing and maintaining a server and community on the open Internet, where literally anything and everything goes. Factor in a myriad of local jurisdictions and laws about data and content, and a lot of these things end up becoming severe liabilities.
Sure, but again, if those were the only problems and the devs would be sipping cocktails in Hawaii splurging on those 4k/month, I would agree with you. If they think priorities are elsewhere, or are also elsewhere, they might have their reasons. In fact, in the article there is a complaint about them answering in a "hostile" manner, but I also understand that the issue in question is probably the 100th issue in a week/month in which other people tell them what they should do. This is a regular problem in OSS (See https://mastodon.uno/@bagder@mastodon.social - the maintainer of curl - for plenty of examples).
After they understood better what's the problem, their stance changed as well, which is also reasonable.
Look at it this way: with federation, a handful of volunteers themselves are doing labor for free, for the devs, by propping up their platform, client ecosystem, and reputation in the space. If this gets bad enough, people will literally say “fuck it” and walk away.
I don't look at it in this way at all. I think the devs made it extremely clear (even given the political stance of both) that despite the happiness of seeing their project flourish, they have no interest in growth as an end. In fact, I would say that nobody is doing work for the devs. But I see that we have a fundamentally different perception on the dynamics in Lemmy, so I see no reconciliation between our opinions.
Instead of playing the blame game, let me see if I can help with a solution: I am fairly certain that I can take the "admin" functionality that I built for fediverser and use it as the basis for a "moderation dashboard". It's a Python/Django application that can communicate with the Lemmy server both through the API and the database. The advantages of it being a "sidecar system" instead of being built "into" the Lemmy code itself is that I am not blocked by any of the Lemmy developers and the existing instance owners do not need to wait for some fork to show up.
I can propose a deal: at the time of writing, there are ~200 people who upvoted this article. If I get 20 people (10% of the upvoters) to either sponsor me on Github or subscribe to my Europe-based, GDPR-subject suite of fediverse services, then I will dedicate 10 hours per week to solve all GDPR-related issues.
How does that sound? To me it sounds like a win-win-win situation: Instance admins get proper tooling, Lemmy devs get this out of their list of concerns and users get a more robust application for the fediverse.
I wish you the best of luck on this and I truly hope you do this, but this is what the lead dev of Sublinks tried to do. That's the missing piece here. He tried making an external mod tooling system. Maybe you'll have better luck than he did. I really hope you do.
In a similar vein, I've seen a lot of auto moderator implementations created. If instead of creating yet another project, people started contributing to existing ones we'd have a good core set of functionality that could be shared across instances. Competing implementations are fine, but at some point the efforts get spread so thin that progress is limited.
Was going to say "another one of these?" but, wow, the article really further highlights the childish nature of the Lemmy devs... Can't wait for Sublinks to reach feature parity and become main stream, so we can leave this dark phase behind.
You don't understand how open source works. You are not entitled to any features. Let the devs go on their own pace. A lot of open source projects shut down because of similar reasons.
Likewise, an open source project can totally die if they refuse to engage with the needs of the users. The lack of moderation and content management tools have been a longstanding criticism of Lemmy, and instances will migrate to alternatives that address these concerns. It is a genuine legal liability for instance operators if they are unable to sufficiently delete CSAM/illegal content or comply with EU regulations.
While I think you're correct about it ultimately being their project, and that users are in no place to demand or expect anything, this thing takes on whole other dimensions once a project is all about building a social platform. Particularly one where volunteers host part of the network themselves.
It's one thing to look at some random demand to write everything in a P2P architecture because DNS is too centralized. When I worked on Diaspora, I literally saw people demand stuff like that, and laughed it off. I'm trying to build a platform that exists today, not some pixie dream bullshit compromised of academic circle-jerking.
But when it comes to basic table stakes for participating in a network that already exists, things change a bit. This is especially true when you're connecting to a global network that has:
Hate Speech
Targeted Harassment Campaigns
Child Pornography
Extreme Gore and Violence
Suddenly, it makes a lot of sense to say "you know what, admins are going to want to filter this shit out, maybe it's reasonable for them to have some tools and fixtures that are part of core."
Unfortunately, these devs are the kind of people who scream angrily when someone says "Hey, this thing doesn't actually respect local image deletes / GDPR stuff / content deletion on account deletion". To me, that's fucking insane.
You don't know how social networks work. They only survive based on network effects, if they don't have the most basic functionality that users expect (like complying with privacy legislation), then they will fail to reach critical mass and be outcompeted and die.
If the devs don't want to provide the most basic functions that any user of a social network would expect, they're welcome to be downvoted to hell and have their project go back to being one of the millions of forgotten and unviewed personal github projects.
Open source projects die because it takes both technical talent and attention to your users to make a project successful, and for-profit companies often pay different people to do those.
It's honestly mind-blowing. At every turn, for no reason at all, they act like a bunch of dicks. It's like they decided to run a community project based on engineering prowess alone, and nothing else.
Except the engineering isn't all that good, either.
The core issue here is that there are too many things to do, and too few developers to do them. By the way, for a huge number of these things that need to be done, there is most likely at least one person who thinks it’s the absolute highest priority for Lemmy. Forking would not help fix this issue, it would only make it worse.
In other words: if you’re a Rust dev, you can just fix it in Lemmy anyway, so there is no benefit from forking. If you’re not a Rust dev, then after forking, you will have a new repo to create issues on, except you’ll have 0 devs to actually fix them.
Hey everyone, I just wanted to thank you for the lively conversation and thought-provoking insights. We don't have to agree on every point (or at all), but I've decided to synthesize a lot of thoughts and ideas from these conversations into a blog post: https://deadsuperhero.com/2024/03/economic-musings-on-federated-networks/
I know you said it is a brain dump, but your follow up still seems mostly an emotional reaction to how the devs responded rather than a reasoning synthesis process.
E.g, your "Where Fediverse Software Differs", it seems like you want to pay off the set up you've placed in the previous paragraph (about the difficulty of being an open source developer), but this payoff never comes and instead you end up the argument with "The feature requests valid, and the devs responded like dicks".
Even if we take "the feature request was valid" for granted, it does not follow that the devs must act on it right away. If the Lemmy devs acknowledged the issue and said "You are absolutely right and we strongly advise anyone hosting an instance in the EU if they are worried about GDPR", then what? Do you think that whoever wrote the "perfectly valid feature request" should still be pushing for making it a higher priority? On what grounds?
Also:
The operators, who to some degree help the project gain visibility, support, and money, are themselves doing unpaid labor: community building, moderation (...)
shouldn't ever be used as an excuse to justify free labor from developers. This is not Self-Loathing and Display of Low Self-Steem Olympics. Anyone that comes to me with a "I'm not gaining anything from my work" argument will promptly receive "The fact that you can not establish boundaries and are martyring yourself is not my problem" as a response.
The fact that developers of FOSS software project are able to tell users "If you want something done, you need to give us the resources or do it yourself" should be lauded, not criticized or be seen as "dicks".
If instance owners are dealing with bad users "and not getting paid for it", they can do two things: close down the instance, or put proper boundaries and tell what they are willing and not willing to do for free. Alternatively, they can do what I do and make the relationship explicitly transactional: I'm more than willing to work a lot to solve my customer's problems, but this is only after they actually paid me for it. The fact that I only accept paying customers makes my instance noticeably easier to manage. Even if I'm charging way less than what some people would donate to their favorite instance, the fact that all the users from the instances are paying make for an excellent filter.
The common denominator is relatively simple to understand: good optics of a project leads to more users, leads to more communities, leads to people building all kinds of apps and tools for those communities, leads to more people being willing to donate to a project.
This "donation-based" approach needs to change. Mastodon has no problems with "optics", and its "Founder and CEO" is reportedly making 30000€ as yearly salary. This is ridiculously low. This is less than what an intern makes at Facebook. The three Lemmy devs are sharing less than 4k€/month. You can make more money by working part-time on Uber Eats. To think that this is enough to claim "they are making some money" is frankly absurd.
If society in general is so tired of exploitative Big Tech, society needs to give a strong signal that it's willing to pay for the alternative. If we don't want to have the most brilliant minds of our generation working on how to optimize the amount of ads that you get to see online, then we need to show that those building better solutions can be properly rewarded. It's not up to the developers to try to build out everything perfectly and then go around begging for people for breadcrumbs and their seal of approval.
To sum up: I'm not saying that developers need to be worshipped because they can do what others can't. I'm also not saying that the Lemmy devs were right in how they communicate with its users, but I am saying that they are absolutely right in establishing their priorities and not let their work be dictated by someone that is not putting any Skin on The Game.
The problem sort of is capitalism right? These public good projects should have public funding. Imagine if the public funding for open source software projects was like that of the Apollo program in the 60s (2.5% of gdp).
Or the US. The US enforces GDPR on behalf of the EU. If the US catches you with misusing EU citizens' data, they will let the EU take 10 million off your accounts and/or close your instance.