I am extremely grateful to everybody involved with Lemmy. That includes you!

Hello!

I am sunaurus, the head admin of lemm.ee. Ever since I created my instance, I have been following a lot of public and private discussion channels between different parties involved with Lemmy. As I’m sure many others have also noticed, the discussions in such channels sometimes get heated, and in fact recently, I feel like there has been a constant trend in these discussions towards a lot of demands, hostility, negativity, and a general lack of empathy between different participants in the Lemmy network.

I am writing this post for a few reasons:

  1. I would like add a bit of positivity by expressing my gratitude towards every single person who has helped improve Lemmy.
  2. I want to speak up in defense of different people who have been receiving negativity lately.
  3. There are a few false rumors spreading on Lemmy, which I would like to try and counteract with very simple evidence.
  4. I want to remind everybody that at the end of the day, all of us care about building and improving Lemmy. We all have the same goal, and it’s too easy to lose sight of that.

I will split up what I want to say in this post by different user groups - users, mods, admins and developers. I understand that many people belong to several (or even all) of these groups, but I just want to highlight the value of, and express my gratitude to each group separately.

Users

At the end of the day, Lemmy would not be worth anything without the users. Users bring Lemmy to life by posting great content, getting involved in discussions in comments, helping surface interesting content for others through voting and even keeping the platform clean through reports. I am extremely thankful for all the users who have given me so much enjoyment on this platform.

I believe that users often get treated unfairly on Lemmy based on what instance they are participating from. I’m sure so many of you have noticed comments around Lemmy along the lines of “Oh, another user from <instance>, I’m going to completely ignore your stupid takes”. I’ve also many cases of people treating users as second-class citizen if they are not on the same instance - for example, I’ve seen users who are active and valuable participants in communities on another instance receive comments like “why are you participating in our discussions, go back to your own instance”. In my opinion this is completely counterproductive to the whole idea of federation.
On a human level, I can understand it - you’re far more likely to notice or remember what instance somebody is posting from if you have a negative experience. As a result, as time goes by, people tend to develop negative views of each instance, despite potentially having had many positive interactions with other users of those same instances.
The message I want to put out here is that instances, especially bigger ones, are not monoliths - do not judge users based on what instance they are browsing Lemmy from, judge them by their actual words and actions.

Mods

There are some excellent communities already on Lemmy, and these communities are all continuously being built up and maintained by mods. Mods put in huge amounts of their free time and energy in order to provide spaces for all Lemmy users. They form the first line of defense against bad actors, they keep communities alive and often receive no praise, only criticism. I am very grateful to everybody who has dedicated time to building communities on Lemmy.

Users rarely notice the lengths mods go to in order to keep communities running smoothly - mods more often than not only get noticed when users disagree with some mod actions. I believe mods deserve a lot better than this. Constructive criticism can of course be useful to improve communities, but it must be balanced with empathy and kindness towards people who have been putting in effort to provide something for users. Remember that there is another human being reading your words when you start writing about the mods of any particular community. Users who are not happy with mods of a certain community always have the opportunity to start their own community and run it as they like.

Admins

Admins provide two main key functions for the network:

  1. Taking care of the actual infrastructure of Lemmy
  2. Working as a higher level defense against bad actors, in cases where mods are not enough

I can tell from my own experience that being an admin of a bigger instance requires constant energy and attention. I don’t believe that there is a single medium-to-big instance where the admins have not put in hundreds (if not thousands) of hours of their free time, as well as in many cases, probably their own money. This is a service which admins provide for free, and it is necessary in order to keep the Lemmy network healthy. I have endless respect for anybody who is willing to put themselves in the position of a Lemmy admin.

I have seen awful messages towards admins from all the other groups listed here, including other admins. These messages range from condescending and rude, to downright hateful. I have seen admins treated as useless and their work taken for granted. I have seen people getting frustrated with admins for not spending every waking minute on Lemmy. I have seen some users consistently spreading provably false rumors about particular admins in an effort to tarnish their reputation on Lemmy.

Before you take out frustration on admins, please remember that they are also humans who have been working tirelessly to improve Lemmy in their own way.

Also, a reminder: the absolute best feature of Lemmy is that users are free to pick their instance - and as a result, users are also free to pick their admins. Even more than that, users can always become their own admins by spinning up their own instance. Yes, this requires dedication, effort, and research, but that’s exactly my point. It’s not easy running an instance, and mistreating people who do this as a free service is completely unacceptable.

Developers

Lemmy development has been lead by a few key maintainers, with a massive amount of smaller contributors. The software is constantly being improved at a very good pace, and everybody is able to benefit from this effort at no cost whatsoever. I am extremely grateful to everybody who has participated in the development of the Lemmy software, and other related software, as without you folks, none of us would even be here now.

There seems to be a huge amount of people with very little appreciation of the work that has gone into the software. I’m sure many of you have seen countless messages where people express that the devs should be doing more in one way or another. “They should work faster”, “they should prioritize this obviously most important feature”, “they should be available 24/7 to offer support”, etc. I just want to take a moment here and acknowledge what core maintainers have already done for Lemmy:

  • Years worth of work on the code itself
  • Offering support to the community and other admins
  • Reviewing literally thousands of pull requests on GitHub
  • Acting fast in stressful situations where the Lemmy network has been overloaded
  • Not abandoning the project in the face of constant hateful users
  • Sacrificing literally hundreds of thousands of euros in missed salaries which they could have been getting if they were working for a tech company instead of working on Lemmy

I also want to take this moment to discredit some rumors which I have seen repeated too many times:

  1. Rumor: Lemmy devs do not accept outside code contributions

This is completely false - the maintainers are completely open to (and even constantly asking for) contributions. When somebody starts contributing, they will receive support and code reviews very quickly. I can tell you that I have experienced this myself several times, but that’s anecdotal, so let me also provide evidence:

a. Contributors list for the Lemmy backend: https://github.com/LemmyNet/lemmy/graphs/contributors

b. Contributors list for Lemmy UI: https://github.com/LemmyNet/lemmy-ui/graphs/contributors

Both of these lists include 100 different names, and that’s only because GitHub literally caps these pages to 100 users. Actually, the amount of different contributors is even bigger. If Lemmy devs did not accept and encourage outside contributions, then there would be no way for these lists to be so big.

  1. Rumor: Lemmy devs work too slowly

This is an extremely entitled and frankly stupid claim. I try to keep on top of the changes made in the Lemmy repo, and let me tell you, the pace of improvement is very good.

I very firmly believe that if the network started downgrading to Lemmy versions from ~8 months ago, the whole network would just collapse, as none of the instances could keep up with the current volume. That is to say, we have come an extremely long way since last summer alone.

Let me provide some more evidence. Take a look at the Pulse page for the Lemmy backend on GitHub: https://github.com/LemmyNet/lemmy/pulse. As of writing this, Lemmy devs have merged 18 pull requests in the week leading up to this post - that’s an average of 2.5 merged PRs per day. This is extremely good for a project with a small underfunded team.

  1. Rumor: Lemmy devs do not prioritize the important issues

There are two sides to this. First of all, there are endless users who turn to the Lemmy devs with what they believe is the most important issue and should immediately be prioritized - the problem is that almost none of these endless users have the same view of what the most important issue actually is! In that sense, it’s literally impossible to please everybody, because everybody wants different things.

On the other hand, even when Lemmy devs do prioritize things which some users have been desperately asking for, I have on several occasions seen a dismissive response along the lines of “too little too late”. Basically, the demands made are often unrealistic and impossible to meet.

If you are somebody who feels like Lemmy devs are not doing enough, I would ask you to please take a step back, look at the actual contributions which they have made, and consider how you yourself would feel if after making such a massive contribution, you would still need to listen to countless strangers on the internet tell you how you’re not good enough in their opinion.

Conclusion

Lastly, I am very thankful to anybody who took the time to read to the end of this post. Again, my goal is to try and defuse some of the hostility, as well as to put out a message of gratitude and positivity. I am very interested in the success of Lemmy as a whole, and that is much easier to achieve and maintain if we all work together. Thank you, I hope you're doing well, and have a nice weekend!

player2 ,

Thank you for creating and maintaining this space for us, I'm grateful for you and all of the other people working to keep things running and improving on lemmy. It is becoming harder and harder to find spaces for discussions that aren't corporate owned.

JackGreenEarth ,
@JackGreenEarth@lemm.ee avatar

I'm only a user, but you're right, that needs to be said. I hope all the other more important players see this, as it is a comparatively small amount of positive feedback buried in a mountain of negative feedback.

delirious_owl ,
@delirious_owl@discuss.online avatar

Users are the most valuable stakeholders, collectively.

This ia what reddit didn't understand.

grte ,

Great post. It seems like a lot of people aren't used to using the product of community efforts over commercial efforts and their expectations and feeling of entitlement match that experience. Like they've bought a product and want to complain to the manager when they experience a problem.

Churbleyimyam ,

I've heard it referred to as 'customer culture'. It's present everywhere but I first heard about it regarding modern attitudes towards relationships/dating. Most things in our lives have been so commodified that we assume we're in a transaction with everyone over everything all the time. OP is benefitting from from is at stake here, which is gratitude, generosity and freedom. It's a wonderful thing for us all to be part of.

Ipodjockey ,
@Ipodjockey@lemmy.world avatar

We are grateful for you fellow internet human.

1984 ,
@1984@lemmy.today avatar

Good post but won't make a difference. Some users are immature and they are the ones lashing out.

They will always be part of the online experience.

Carrolade ,

I think its useful to remember that it's simply logical to acknowledge that exaggeration and drama can draw more attention and engagement than more mature, nuanced, frequently longer-winded participation can. Particularly younger people are not going to be as interested in observing social mores when simply being more bombastic can seem to be more fun sometimes.

It's mainly on us, in the userbase, to deal with these kinds of trollier styles of interaction in an appropriate way. Usually not feeding them is enough, though not always. Sometimes they need to be cleverly undermined or brusquely and efficiently slapped down, it just depends on the troll.

But either way, it is true that they will always be here, and so we do need to adapt ourselves around them in a variety of ways. Unfortunately, combatting trolling does not actually have any one-size-fits-all solution, and requires a diverse toolbox of approaches, from mods and admins through to users.

That said, positivity and gratitude has its place too, even if some find it distasteful. I think it does make a notable difference. Morale is not some immutable thing that can resist everything both real life and internet hobbies can throw at it, and showing appreciation is part of how societies maintain it more broadly. We are not robots, nor will we be any time soon. We are subject to morale, and it is helpful to maintain it in positive ways. It's not combatting the bad thing, it's buffing the good thing. Both can be necessary sometimes, and there's nothing wrong with a person preferring one or the other. People do not all have to be the same, after all.

sab ,

Unless, of course, one blocks them. It's not perfect of course, but I think federation brings about an unique opportunity to decide how many fools one is willing to suffer. And the tools will only get better with time. :)

dessalines ,
@dessalines@lemmy.ml avatar

Thank you so much for writing this, it articulated a lot of things I've been thinking about this past week. So many of us are all spending our most valuable resource, time, trying make this a better place, in whatever way we can, and none of these 4 groups (some of us are members of more than one) deserve any vitriol or negativity for their efforts. We all need to think about ways we can reduce that negativity, and not all of them can be fixed with computer code, or at the admin level. We all need to improve how we interact with people, and treat them the way we'd like to be treated, with a view towards their well-being.

I'd like to follow your good example, and send out my genuine thanks to all the users, admins, developers, those doing server support, and contributors in any form to lemmy, and it's ecosystem of apps and tools. Members of all of these groups are absolutely vital, and this place is only possible because of our cooperation.

ultranaut ,

I heard you guys have recently told Beehaw to quit using Lemmy, is that not correct, or how does this square with what you are saying here?

imaqtpie ,
@imaqtpie@sh.itjust.works avatar

What? Even if they wanted to, the devs can't control who uses Lemmy. It's FOSS

JackGreenEarth ,
@JackGreenEarth@lemm.ee avatar

I don't know about the devs specifically, but maybe advised is a better term. Beehaw themselves don't really want ro be using Lemmy as it doesn't have the moderation tools they want.

goferking0 ,

I'm not sure beehaw idea of what they want works in the federated space

ultranaut ,

I know the devs can't control who uses the software but apparently they want Beehaw to quit using Lemmy. It seems strange to me, especially after reading this comment, that's why I asked.

barsoap ,

Nope it's "start sending pull requests if you want that stuff so urgently, or use another software, but stop whining".

Beehaw has quite a number of users and generally community goodwill, I bet they could find a dev or two with some free time on their hands to work on the features they desire so much. That would be a solution-oriented approach. Simply telling the existing lemmy devs "you need to do this now you need to prioritise this" isn't, no matter how polite the language it's still entitled AF, and just for double clarity "not solution oriented", in the FOSS world, means "toxic".

ultranaut ,

Characterizing the concerns they have expressed as "whining" seems uncharitable, and "code or shut up" really doesn't sound like a good response.

barsoap ,

What, exactly, do you think entitles beehaw to dictate what the lemmy devs should prioritise?

If I'm getting the neighbourhood together to build a playground for the kids, and beehaw comes along and says "You must now build an observation post for my bird watching club", how would you expect me to respond? Especially while I'm holding up a heavy beam frantically looking for something to rest it on so the whole structure doesn't collapse?

I think answering "I have no objections to you building that observation post" is a perfectly adequate response. I don't owe your bird watching club jackshit, and neither do the lemmy devs owe beehaw jackshit.

ultranaut ,

From what's in their essay it doesn't seem like they are dictating what the devs prioritize. Regardless, I don't see how they could dictate anything since they lack power over the devs. You keep characterizing them in negative ways, what's that about? I feel like I'm missing something here.

barsoap ,

Regardless, I don’t see how they could dictate anything since they lack power over the devs.

Lacking power doesn't mean that no attempts are made. You can be as polite as you want if I don't want to build that observation post and you keep pestering me that's an attempt to dictate what I do with my time. Even just dealing with the pestering is a time sink.

You keep characterizing them in negative ways, what’s that about? I feel like I’m missing something here

I've dealt with entitled users before. The wider FLOSS community has oodles of experiences with toxic behaviour from users, nothing about this is new or even surprising if you've been in the space for a while, it's all the same pattern: First they act like they're paying customers, then you tell them that they're not (but that patches are welcome), then they say "well I'll never use your software if your attitude is like that", then you say "fine with me", then they either leave or start to shout, at which point you block them. A FLOSS project needs healthy erm ego boundaries or it dies because nothing ever gets done.

FLOSS developers contribute because they want to build a specific thing. Conversely, if you want a specific thing that noone else already built or is excited to build, you have to contribute. There's no such thing as a free lunch.

WeirdGoesPro ,
@WeirdGoesPro@lemmy.dbzer0.com avatar

The fact that they lack power over the Lemmy team is exactly what this is all about, in my opinion. They are demanding free changes out of people who they have no power over rather than finding programmers to help. They seem to expect to be treated like a client, but that isn’t how FOSS works.

Beehaw doesn’t have the greatest reputation in the Fediverse. Last I checked, their leadership was moaning about users from other instances and making a huge deal about who they wanted to defederate from, then they made posts on other instances when they were first thinking about leaving Lemmy entirely to see if we’d beg them to stay, and now there’s this whole breakdown where they cherry-pick some rude screenshots in an attempt to make their complaints look justified.

Nobody else seems to be causing this much drama. The rest of us are coexisting peacefully and doing fine. There is only one instance that feels like it needs a twelve foot wall and a moat around it, and that’s Beehaw.

I honestly don’t care if they stay or if they go, I just wish I didn’t have to hear them talk about it anymore until they make up their mind.

flork ,
@flork@lemy.lol avatar

Beehaw is not causing drama, Lemmy.world and shitjustworks caused drama by filling their instances with turdbrainz. Beehaw literally removed themselves from the equation. That's deescalation not escalation.

TimLovesTech ,
@TimLovesTech@badatbeing.social avatar

This is all to say: we’ve been given many different channels and suggestions by the developers during our time on this platform for how to influence priorities. However, those priorities still have not materialized even after we used those channels and followed those suggestions–in fact, we’ve often observed our priorities seemingly being derided, played down at times, or to languish.

To me, this sounds like they were repeatedly trying to get the devs to work on what Beehaw wanted, and they are upset that those demands have not been met.

db0 ,
@db0@lemmy.dbzer0.com avatar

I think a better analogy here would be someone pointing that this is is a really bad neighborhood and you really oughta have a playground fence in the schematic.

The_Lemmington_Post ,

Where? I haven't heard any of that.

ultranaut ,
SorteKanin ,
@SorteKanin@feddit.dk avatar

Heard where? I heard that Beehaw is considering not using Lemmy, but they've said that for a long time without changing still. But maybe they will. But it's all up to them and they can control their instance how they like :)

ultranaut ,

Beehaw has just published a thing explaining their current situation and it includes some conversations with Lemmy devs where it looks like they are being told to fuck off and stop being a part of Lemmy: https://docs.beehaw.org/docs/important-questions-decisions-and-reflections/beehaw-lemmy-and-a-vision-of-the-fediverse/

redcalcium ,

Both side seems to be frustrated at each other there. Beehaw admins accused lemmy devs of not listening to their requests for better moderation tools, while lemmy devs accused beehaw admins of demanding more work without contributing anything or gave them appreciation. I hope the conflict is just temporary and they can reconcile later when things have cooled off.

ripcord ,
@ripcord@lemmy.world avatar

Sounds like a case where they're both right, too.

dessalines ,
@dessalines@lemmy.ml avatar

The difference between open source vs paid-for software, and the lack of articulation of what entitlement is (and the harm it causes contributors to open source projects), is one of the root reasons for a lot of frustrations this past week. We've even added a specific no entitlement clause to our code of conduct a few days ago to try to avoid this in the future.

In short, entitlement is insulting or demanding behavior towards anyone for not doing what you want them to do, or not doing it fast enough.

Lemmy is developed by 2-4 devs, but used by >40k ppl. This massive disparity means it is absolutely impossible for us to solve every issue, and please everyone.

We make no demands on anyone, and don't force anyone to use lemmy, and encourage ppl to do the open source thing, and improve / work on issues we don't have time for. We gladly review PRs, as anyone can transparently see on the github.

Some of the beehaw admins on the other hand, are making demands, whilst refusing to do the open source thing and help add the features they'd like added. At this stage we've come to an impasse, where they'll likely just move to another platform, where the developers of that new platform will experience the exact same entitlement timeline: request for features, frustration that they're not getting completed fast enough, lashing out at developers, a similar developer response, then burnout for all parties.

The only way forward is for people to realize that entitlement has no place in open source, and that making demands on other people is not acceptable for any party.

db0 ,
@db0@lemmy.dbzer0.com avatar

From my discussion with some beehaw admins and sublinks devs, a problem is they they feel like their code contributions will not even be accepted for lack of shared goals. For example showing voting totals.

I keep saying that the most elegant solution here is to develop a plugin framework, to allow admins to customize their instance experience even when it diverges from the lemmy dev vision. If it's made software agnostic it would allow people like me scratch our own itches. Ironic I know but it's for this reason I think this should be one of the main priorities, as it will unleash a lot more Foss power on the project. It's a big reason why projects like WordPress and godot are having great success

barsoap ,

a problem is they they feel like their code contributions will not even be accepted for lack of shared goals. For example showing voting totals.

They're free to not run the upstream version but their own patched one. Not being willing to write code will certainly not make that feature landing any more likely.

Plugins in Rust are a whole can of worms, what with AOT compiling and static linking, you can't just monkey patch everything like in PHP. Essentially a plugin system would be a way to organise patches, to dependency inject admin-provided libraries instead of default implementations. Having a collection of patches should help designing such a thing, Personally I wouldn't even consider designing such a thing before it's clear what it will need to do, where it needs to provide hooks, also, that it will be used.

db0 ,
@db0@lemmy.dbzer0.com avatar

There's much better ways to do plug-ins than this. Just check how the Django-wiki does it or how godot does it.

If rust can't achieve what python or c++ does, then that would unexpectedly disappointing

barsoap ,

Python is a dynamic language just as PHP, you can monkey patch there. Neither are anywhere close to the performance level of Rust or C++. I wouldn't call their approach better: It's very brittle, nothing tends to be well-specced, things easily become bug-compatible and a nightmare to maintain.

Godot has fixed extension points, which on top of that are accessible via gdscript or C#, not C++. Things you can hook into. Figuring out for which things that should be possible for, and how the interfaces should look like, is not something where eyeballing works.

Doing it the godot way would be rather pointless with lemmy as there's no need to extend the server's functionality while it's running, you can just replace the whole binary which is way simpler to do but the sensible way to go about it dynamically would be to use wasm. In both cases you'd need to figure out exactly where plugins should be able to hook into, there's no way around that without eating PHP's and Python's performance and maintainability costs. Also, rewrite everything.

db0 ,
@db0@lemmy.dbzer0.com avatar

There's no monkey patching needed! There's way better approaches with signals and events and shit!

Even if there was a performance hit. That's something for the plugin users to eat. The point is they have the option. Beehaw.org might accept the extra 1ms delay to have the tools they need.

And yes, the effort needed to support plug-ins is worth it. This is why all successful community driven software does it!

barsoap ,

Why introduce a dynamic scripting layer if you can dependency-inject a crate, compile your custom version, and replace whatever is running just as if you'd be restarting the server, picking up where it left because all the important stuff is ACID? (Or at least I hope that's how lemmy works, never actually had a look at the code).

Certainly less development effort, gets as cheap as putting the function to be customised in a lazy static. The difficult part is the API that goes along with it, providing a stable interface to plugin writers because if you don't have that you can just as well tell people to patch the function directly. And at the same time lemmy's version number starts with 0 which doesn't exactly sound compatible with API stability, and bugs need fixing. As such it comes down to the same thing: If people want a plugin system, they'll have to contribute as dessalines and nutomic seem to be perfectly busy keeping the ship afloat.

db0 , (edited )
@db0@lemmy.dbzer0.com avatar

because maintaining, compiling and deploying custom forks is an order more complex than loading some third party plugins?

And because with plugins each admin can mix and match what they need

barsoap ,

Compiling a custom binary can be streamlined (Rust certainly already has a quite painless in-bult mechanism), and you can mix and match dependency injection that's not an issue. It may not be a fancy wheel but it's a sturdy wheel and a wheel that doesn't need to be invented yet.

db0 ,
@db0@lemmy.dbzer0.com avatar

I think you severely overestimate the capabilities of the average admin

barsoap ,

If you can follow a tutorial and docs to edit a config file and start the server then you can follow a tutorial and docs to edit a config file and start a rebuild script.

db0 , (edited )
@db0@lemmy.dbzer0.com avatar

My brother's in christ, you need to deploy that shit somehow...

Also lol at the idea that every tutorial is the same difficulty

barsoap ,

Deploy? I'm a programmer, not devops. I'm barred from production.

Erm. Anyway. If you do it right you can have one nix flake that people can edit and the thing itself then decides whether it can use a standard binary or needs to do a custom build, no difference to the admin. The code needs to be compiled one way or the other, with Rust it just happens to be simpler, and just as automatable, to do it ahead of time instead of at runtime.

db0 ,
@db0@lemmy.dbzer0.com avatar

"if you do this right" sounds like wishful thinking. Sorry but every other software uses plugins for his sort of thing for a reason. As a devops, sysadmin, and developer, what you're describing sounds absolutely unusable for the vast majority of its target audience.

barsoap ,

It's still plugins. It's still configurable without need to write code, or know Rust. Just the compilation step occurs ahead of time instead of at runtime.

And plenty of software is written that way btw though more often in the commercial and embedded sector. This goes into the general direction of a Software product line. As you mentioned godot: Game engines also tend to do it, simply for performance reasons. You can implement quest logic in a dynamic layer, but if you need custom physics or such it needs to get baked into the binary. Godot calls those things modules instead of plugins but really it's the same thing at a different point in compilation time.

db0 ,
@db0@lemmy.dbzer0.com avatar

You realize Godot supports modules and plugin for a reason, right? Like it would be absolutely inane if Godot asked gamedevs to recompile Godot from source to add shared functionality. And this is with a piece of software that is already aimed at developers and software houses, most of whom are familiar with compiling from source.

Lemmy admins are not software houses. Most barely have enough knowledge to run the ansible playbooks and you're suggesting they set up CI/CD pipelines!

barsoap ,

Like it would be absolutely inane if Godot asked gamedevs to recompile Godot from source to add shared functionality.

They do, for a lot of things: Not everything you can do with modules can be done with plugins, while everything that can be done with plugins can be done with modules. And bevy requires it for everything: If you want a scripting layer you have to bring your own, the project doesn't, and won't, provide one. The envisioned editor indeed involves building everything from scratch, not just loading things into a pre-compiled runtime.

and you’re suggesting they set up CI/CD pipelines!

Nah I suggest they run them. Either as-is or after tweaking some knobs. And frankly speaking running a server is not like opening MS Paint, if you don't have some background technical knowledge if the software doesn't eat you then the next botnet will.

db0 , (edited )
@db0@lemmy.dbzer0.com avatar

They do, for a lot of things: Not everything you can do with modules can be done with plugins, while everything that can be done with plugins can be done with modules.

And yet, they support plugins, even through they're technically unnecessary since modules exist. What a waste of core developer time, eh?

bevy

I mean, there's a reason why Godot is slowly-but-surely taking over the world of Game Engines and I have never heard of bevy before now. Ease of use and ease of development trumps performance every time (as far as "market share" is concerned).

Nah I suggest they run them. Either as-is or after tweaking some knobs.

Sorry but as someone who does have the extensive experience with those things, there's nothing accurate about that statement.

if you don’t have some background technical knowledge if the software doesn’t eat you then the next botnet will.

Which is where allowing more developer resources to be injected into the project, with, oh I don't know, plugins, would help. We're looking to expand the pool of people who are technically able to run fediverse servers. Not shrink it.

barsoap ,

I mean, there’s a reason why Godot is slowly-but-surely taking over the world of Game Engines and I have never heard of bevy before now. Ease of use and ease of development (overall) trumps performance every time.

Godot set out to be an open source unity, bevy set out to finally build an ECS-centric game engine with performance as its top goal. Bevy is also quite a bit younger, and not yet feature complete, but also far from a small hobby project it's serious business.

We’re looking to expand the pool of people who are technically able to run fediverse servers. Not shrink it.

Why would an admin care if setting a particular setting in a config file causes compilation of a custom binary, or the standard binary, once started, compiling/loading a dynamic plugin? There's no discernible end-user difference. In both cases you do the equivalent of ./lemmyctl [start|reload] --config my-config.json or such.

db0 ,
@db0@lemmy.dbzer0.com avatar

In both cases you do the equivalent of ./lemmyctl [start|reload] --config my-config.json or such.

My peep, do you even know how lemmy hosting works or are you speaking out of your ass? :D

barsoap ,

I might be a tad out of touch, which can probably be inferred by the ctl part, but it's the concept that matters, and this applies to any daemon: You configure, you start, you possibly change the config, and you tell the thing to reload the config.

On my system everything gets switched all at once with nixos-rebuild switch or home-manager switch: File systems get mounted and unmounted, daemons stopped and started, the whole system gets upgraded if necessary. It can be that easy. If it isn't, maybe that's a thing to look into before looking into plugins.

dessalines ,
@dessalines@lemmy.ml avatar

From my discussion with some beehaw admins and sublinks devs, a problem is they they feel like their code contributions will not even be accepted

They've never opened a single PR, whilst the github shows us merging tons of PRs from third parties, so that seems like negative speculation on their part.

For example showing voting totals.

The lemmy API already has open vote totals on everything (score, upvote, downvote), and I also made a PR adding a user preference setting for how to display scores for your user.

I believe there's an open issue for a plugin framework, but that would need to be fully worked out. If it's just simple preferences, there are tons of sample PRs to learn from.

I'm quite confused about some people's adverseness to learning Rust; it's been the voted the most favorite developer language for many years in a row now (for good reason), rust frameworks frequently top the fastest web server benchmarks now, and every real developer has to learn new languages and frameworks every few months to keep up to speed anyway. Just as an example, I was waiting for a messageease(an android keyboard) replacement, and nothing came close. I taught myself kotlin, and android programming, and made one, and I'm an incredibly slow learner and middling programmer.

db0 ,
@db0@lemmy.dbzer0.com avatar

Speaking or myself, it's simply a matter of time. Even doing the fediverse stuff I'm already doing is stretching me beyond my limits.

About the prs, ye I don't want to do the broken telephone here. The point is there's clearly a sort of disconnect between how welcoming the lemmy developers believe they are and how they are perceived by some other people. It's not an easy problem to solve tbh and requires some honest discussion in good faith with the affected parties.

About the open voting totals, I remember there was a conflict about this. Weren't they are some point hidden on the api? As in if you request the overall voting total for a user you alway get 0?

nutomic ,
@nutomic@lemmy.ml avatar

Speaking or myself, it’s simply a matter of time. Even doing the fediverse stuff I’m already doing is stretching me beyond my limits.

It's exactly the same for us. There are hundreds of open issues for Lemmy and we can't work on all of them.

By voting totals you mean the karma score? We intentionally decided not to show that because it has many negative effects. It was accidentally still exposed in the api so we removed that.

db0 , (edited )
@db0@lemmy.dbzer0.com avatar

It’s exactly the same for us. There are hundreds of open issues for Lemmy and we can’t work on all of them.

You misunderstand. For you, lemmy is your full-time job, so working on feature A instead of feature B, is still working on lemmy. For me being a lemmy admin is a side-thing to my main FOSS project, and on top of that I also have my day job.

By voting totals you mean the karma score? We intentionally decided not to show that because it has many negative effects. It was accidentally still exposed in the api so we removed that.

yes exactly. But this is something that you diverge from what other admins might want. So they cannot submit it as a feature even if they want to which is what I was alluding to earlier as to why you might not see the PRs

nutomic ,
@nutomic@lemmy.ml avatar

Sure, thats because we develop for the majority of the userbase and not what some (real or imaginary) admins might want. Its impossible to make everyone happy so we have to choose what works for most people, and hiding karma is clearly very popular.

nutomic ,
@nutomic@lemmy.ml avatar

A plugin framework sounds great. I would be happy to see a PR for this from Beehaw, Sublinks or anyone else.

sudneo ,

One thing I have never understood and keep repeating in this context: Beehaw has >7k$ balance. If they really have a few issues that would solve 90% of the problems, why not putting a 500/1000/2000$ bounty of that feature.

ultranaut ,

I believe they mentioned that in their essay I linked to in this thread yesterday, they looked into starting a bounty system for new features but the Lemmy devs told them not to do it so the idea was abandoned.

sudneo ,

I am curious about the details of that conversation, because I remember reading Dev's comments in some post on Lemmy where they mentioned this option.

THE_ANTIHERO ,
@THE_ANTIHERO@lemmy.today avatar

Yes this is a blatant lie and the devs seem to be suggesting it

SorteKanin ,
@SorteKanin@feddit.dk avatar

Thank you for all the work you do!

iso ,
@iso@lemy.lol avatar

I don't understand those who criticize Lemmy developers. They were developing it while you were not here, I don't think they will stop just because you are leaving :)

ThirdWorldOrder ,
@ThirdWorldOrder@lemm.ee avatar

The only criticism I really see is that they are tankies, which I guess is understandable considering what Lemmy is lol

https://github.com/dessalines/essays/blob/master/socialism_faq.md#on-mao-maoism-and-marxism-leninism-maoism-and-the-prc

Microw ,
@Microw@lemm.ee avatar

The current criticism is that dessalines and nutomic are choosing which features they are working on and which ones they incorporate into Lemmy in a way that people think to be very intransparent, undemocratic. That's not unsimilar to Mastodon, but there even Gagron has to bow to pressure from the community if something has a lot of support.

barsoap ,

The current criticism is that dessalines and nutomic are choosing which features they are working on

That's not criticism that's entitlement. It's like telling the volunteers at the local soup kitchen how dare they not plant trees, and how undemocratic it is of them to not bow to your, specific, will. If you want those trees planted go ahead, plant them, noone's stopping you.

Microw ,
@Microw@lemm.ee avatar

You completely missed the point, the emphasis is at the end of the sentence:

in a way that people think to be very intransparent, undemocratic.

Of course they call the shots. But you can do that in various ways. You can engage with people and include people in those decisions in various ways. Wikipedia for example does a technical survey every year, asking: "should we focus our technical work on area A, B or C? What do you guys think should be prioritized?"

That does not mean that some specific task needs to be prioritized just because one person wants that. But I heavily doubt that the devs have an idea how popular or unpopular certain ideas/wishes are with Lemmy's users.

barsoap , (edited )

in a way that people think to be very intransparent, undemocratic.

Of course they call the shots. But you can do that in various ways.

Go to github, look at the tickets, look at the PRs, look at the discussions. How is that intransparent. And, no, just like science FLOSS is not a democracy, and wikipedia is not a FLOSS project they're a bunch of dictionary editors paying people to work on mediawiki, the software that runs the site.

Go on have a look at open tickets tagged "enhancement" and the same for the web interface. Go there and tell me again how it's all intransparent, and how the devs don't know what the users of the software (first and foremost admins btw) want.

Look at that massive list and then switch from "enhancement" to "bug" and possibly understand why some of that stuff might take some time before it gets addressed.

Look at the massive amount of pull requests that get merged, authored by a gazillion of different people. None of them from beehaw.

popular

Is generally not how software development works. If you always do the most popular thing first what you end up is with a lightyear of duct tape holding together an abomination of technical debt. Also, to paraphrase Henry Ford: "If I had asked people what they wanted I'd have bred faster horses".

sab ,

They're also not holding anyone hostage. I can see how people are tired of the whole "if you don't like it, fork it" argument, but Kbin, mbin, and Piefed are all perfectly viable and interoperable alternatives that are available already.

nickwitha_k ,

I can see how people are tired of the whole "if you don't like it, fork it" argument

This I didn't get. It's literally how FLOSS works and why we have so many distros of Linux, for example. If one doesn't like the philosophy, they don't have to use FLOSS platforms. Noone is entitled to exactly what they want from software that is designed and maintained by volunteers. The software is literally a gift; take it, fork it, or leave it.

aleph ,
@aleph@lemm.ee avatar

Agreed, and additional thanks to you, @sunaurus, for all your ongoing contributions to the project and for being such a good instance admin as well.

nix ,
@nix@merv.news avatar

offtopic but do you know who owns lemmy.com? It points to your instance and im confused why an instance isnt run using that domain instead of pointing it to yours

user224 , (edited )
@user224@lemmy.sdf.org avatar

Interesting, somebody had enough money to purchase lemmy.org.
Edit:
https://lemmy.world/pictrs/image/d9391af6-fd08-48fd-8624-9ed8c306a9ee.png

JackGreenEarth ,
@JackGreenEarth@lemm.ee avatar

That's weird, I thought Europeans used . and , the other way around in numbers

redcalcium ,
JackGreenEarth ,
@JackGreenEarth@lemm.ee avatar

Wow, thanks for sharing!

lemann ,

Just checked the whois history on that and wow.... purchased for $6000. That is a lot of money for a domain!

It was $500 prior to Reddit's API changes, looks like another domain parking company purchased it around that time and hiked it up to $6000. Greed is one hell of a drug.

Quite curious about the current owner though, since it's been registered privately via a proxy company.

imaqtpie ,
@imaqtpie@sh.itjust.works avatar

I'm grateful for all Lemmings, but at this particular moment, mostly you.

Even as we recognize that Lemmy is a collective effort where every user can play a part, there are some roles which are more important than others. You've been an excellent admin for your own users, but also a unifying force for the network as a whole, neutralizing and bridging the spaces between many other Lemmy servers.

This post is the clearest example of that to date, but your contributions have always exhibited a good sense of diplomatic tact along with strong internal values and principles.

Kudos to you @sunaurus.

spoiler
lemann ,

That spoiler made me chuckle lol

haui_lemmy ,
@haui_lemmy@lemmy.giftedmc.com avatar

I have recently donated my largest donation ever to the lemmy devs (a large sum for me atm). I‘m thankful for their work and have said so openly and individually to dessalines and others. Thank you too for making this post. I completely agree.

Rentlar , (edited )

I think we are all overdue for a shot of positivity so thank you for this write up. Yes, we have a long way to go on the community side, the moderation and the technical sides but I'm happy for what we have and the progress since June and before.

I've done minor contributions (to the Jerboa app), some translations, posted stuff in 4 languages and donated some change where I can... we can always do better and although some are motivated by spite, I think also that a lot of people would enjoy it more if we can cultivate an atmosphere that's less miserable and full of unnecessary drama.

Churbleyimyam ,

Yay, I use the jerboa app and really like it. Good work buddy 😃

lemmyreader ,

Thanks OP, good job. Upvoted and bookmarked.

kratoz29 ,

Great post, exactly my thoughts, people demanding features on Lemmy and even claiming devs work for them LMAO, go to Sublinks or somewhere else.

spacecowboy ,

I appreciate everyone involved in this non-commercial endeavour. Thanks for all the unappreciated hard work you all put in.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • fediverse@lemmy.ml
  • test
  • worldmews
  • mews
  • All magazines