Lemmy Developer AMA and Dev Update, 2024-01-26, 1500 CEDT

Dessalines@lemmy.mlmod to Announcements@lemmy.ml – 386 points –

This is a chance for any users, admins, or developers to ask anything they'd like to myself, @nutomic@lemmy.ml , SleeplessOne , or @phiresky@lemmy.world about Lemmy, its future, and wider issues about the social media landscape today.

NLNet Funding

First of all some good news: We are currently applying for new funding from NLnet and have reached the second round. If it gets approved then @phiresky@lemmy.world and SleeplessOne will work on the paid milestones, while @dessalines and @nutomic will keep being funded by direct user donations. This will increase the number of paid Lemmy developers to four and allow for faster development.

You can see a preliminary draft for the milestones. This can give you a general idea what the development priorities will be over the next year or so. However the exact details will almost certainly change until the application process is finalized.

Development Update

@ismailkarsli added a community statistic for number of local subscribers.

@jmcharter added a view for denied Registration Applications.

@dullbananas made various improvements to database code, like batching insertions for better performance, SQL comments and support for backwards pagination.

@SleeplessOne1917 made a change that besides admins also allows community moderators to see who voted on posts. Additionally he made improvements to the 2FA modal and made it more obvious when a community is locked.

@nutomic completed the implementation of local only communities, which don't federate and can only be seen by authenticated users. Additionally he finished the image proxy feature, which user IPs being exposed to external servers via embedded images. Admin purges of content are now federated. He also made a change which reduces the problem of instances being marked as dead.

@dessalines has been adding moderation abilities to Jerboa, including bans, locks, removes, featured posts, and vote viewing.

In other news there will soon be a security audit of the Lemmy federation code, thanks to Radically Open Security and NLnet.

Support development

@dessalines and @nutomic are working full-time on Lemmy to integrate community contributions, fix bugs, optimize performance and much more. This work is funded exclusively through donations.

If you like using Lemmy, and want to make sure that we will always be available to work full time building it, consider donating to support its development. Recurring donations are ideal because they allow for long-term planning. But also one-time donations of any amount help us.

416

You are viewing a single comment

Do you think Lemmy is decentralized enough right now, or are you worried about some of the bigger instances growing too much?

Its definitely a concern. IMO the lemmyverse is far too centralized at the moment. The big questions are:

  1. Is there a trend toward centralization, or away from it?
  2. How are people being introduced / onboarded onto lemmy?
  3. What can we do to combat centralization?

(1) I'm honestly unsure, and I'd def appreciate if anyone has done a study of it. We've seen a big growth in single person / smaller topic-focused instances, which is a great thing, but if their communities aren't growing, we need to figure out how to reverse that trend. I'd have no problem with the current large instances, including this one, as long as the long-term-trend is away from them.

(2) Is mostly word-of-mouth, join-lemmy.org, and apps / web-ui's which show an instance by default.

We've made the sort for the join-lemmy.org instances page be by random active users, and tried to emphasize on that page that it doesn't matter which instance you join, since most federate, and can subscribe / connect to any community. I hope that helps, and we need to replicate that wherever we can.

Apps and webUI's mostly just show lemmy.world rn, where they should show random instances. I'm guilty of this in Jerboa as well (showing lemmy.ml by default), and I've just opened up an issue that it should be showing a random server for anonymous users.

But I think we need to do more, and I'd def appreciate yours and anyone else's ideas on how we can combat centralization. We need to get ahead of this problem before it gets worse.

But I think we need to do more, and I’d def appreciate yours and anyone else’s ideas on how we can combat centralization.

I am admin of the biggest Brazilian instance, but I am welcoming more local instances and talking to the admins we should spread the load. But what I notice is the users are concerned they will miss out if they are not in an instance that already have everything.

Could we have an easier way to auto-federate every new communities from a given instance? Even an "auto-federate everything possible" option. as @nutomic@lemmy.ml said lemmy DB isn't too big, most instance owners could have it on their servers. And making it opt-in won't hurt the small instances.

It would be relatively easy to write a script/bot which fetches the list of communities from a given instance, and then subscribes to all of them from another instance. In fact I heard something like this already exists, but dont know the name.

I think it's worth bringing a solution in house. A recommended migration route. If you want people to feel confident to pick any instance, you have to give them the confidence to move easily and not fear picking a small instance that might die when their owner gets bored. A simple setting option to migrate from, then you select the account and either (through communities accessible, or through automated request, pull that data and subscribe to communities. Maybe blocks etc also.

Maybe not auto-federate / auto-subscribe, but we do have an issue to federate a lightweight list of communities among servers, that could help with this.

Its true that the disk space required isn't too big a deal, but it would unecessarily increase the CPU and network requests by auto-federating the entire lemmyverse, rather than using explicit subscribes.

I know lemmings.world has a bot that subscribes to the most popular communities to make sure those are federated

Maybe hide the big instances behind a few clicks? Like you could sort/filter for them, but you'd have to navigate a bit? The average user isn't going to bother. Like have a default sort that hides the big ones, and a default filter that filters out the top five or whatever.

People join lemmy.world because it gets linked directly on Reddit and other places, they dont even go through join-lemmy.

I think its totally normal that instance sizes follow a power law distribution. Its similar to many other things, for example there are few large cities, some medium cities and lots of small cities. The wiki article lists many other examples. So I think its fine as long as there are no intentional attempts to lock in users into large instances or limit federation.

The big instances are bad enough but big communities are absolute killer of decentralisation

When you go to /c/books on your server, you don't see an agglomeration of all /c/books on all servers of the fediverse. You only see that server's /c/books, if it even has one.

This is a fatal flaw of lemmy which concentrates power enormously into the hands of the owners.

The default view should be all /c/books on all federated servers, with an easy way to filter only local posts.

Lemmy will turn into reddit if this is not quickly rectified.

I kind of get where you're coming from, but to me it sounds like you're looking for a different experience than what Lemmy is designed for. It seems you are more interested in aggergating all posts about specific topics (like "books"), and strongly limiting the effect of moderation (as nobody would have final say about how to moderate an entire topic). If I correctly understood the experience you're interested in, then for sure the design of Lemmy will not match that.

I don't think it's fair to describe this as a fatal flaw, though. Lemmy is not built around the idea of generic, "ownerless" topics, instead, it's built around communities with clear owners. We have decentralization at the admin and infrastructure level (as in, a single admin does not control the entire network), but this does not really mean we also need to have it at individual community level.

IMO it's totally fine that different people create different communities with extremely similar purposes. The entire internet as a whole also works like this - the internet itself is decentralized, but at the same time people can create different websites with very similar purposes (and even domains!), and it works out fine. For example, it's totally possible for there to exist a news.com, news.co.uk, news.ee, news.fi, etc. Imagine if whenever you navigated to news.fi with your browser, it would also automatically insert content from all the other news websites of all possible domains - it doesn't really seem like a useful feature, but that's kind of analogous to what you're suggesting for Lemmy at the moment.

Thst makes lemmy , a reddit with many /u/spez , but in practice it will end up like the actual internet of today, where only 5-10 sites control everything.

This process is already far along on lemmy, already very centralized and all the incentives are in place to make it even more centralized.

I expect the settlement of the defederation war, will create 2-3 cliques of the largest servers that each silence the rest of the lemmyverse on their property.

Give it a little time and they'll probably make themselves fully private cliques.

When you go to /c/books on your server, you don’t see an agglomeration of all /c/books on all servers of the fediverse. You only see that server’s /c/books, if it even has one.

What prevents from visiting /c/books@anotherserver?

Genuinely asking, because this is one of the core concepts of Lemmy and federation

I already posted to anotherserver/c/books and no one ever saw it.

Posting anywhere but biggestinstance/c/biggestcommunity is functionally the same as not posting at all.

And of course, the owners of biggestinstance/c/biggestcommunity believe in everything you don't believe in and they really don't like you in particular.

Welcome to new reddit, same as old reddit

I already posted to anotherserver/c/books and no one ever saw it.

Did you promote that community on !newcommunities@lemmy.world and other promotion communities? Did you actively post on your new community, to attract users to your new one?

I'm going to take two examples I personally had

  • I'm not a fan of having all discussions on LW, so even if !movies@lemmy.world was the most active one, we decided with a few others to start animating !moviesandtv@lemm.ee. It is now the most active community on that topic.
  • I like the show "the Office". !dundermifflin@lemmy.ml is the historical community, but as some people are not fans of lemmy.ml, we moved to !dundermifflin@lemm.ee, which is now the most active community on this topic.

I guess that shows that community takeover is possible, and does not need additional tools, just some time and dedication.

3 more...

No, that defeats the entire point.

What point ?

The point of becoming a moderator that decide what everyone can and can't say ?

The point of "making another reddit but I'm /u/spez" ?

The point of me having my own control over my instance. The bad moderator thing will always be a problem.

I don't see how agglomerating vuew of all same name communities for the user impact you as a server owner ?

You still have totalitarian control over everything happening on your server.

You can still

Delete all post and comments

Change any text in any post or comment even if made by other users and without their notice

Ban any user

Ban any community

Even ban all users and all communities (whilte only model)

I must’ve read your comment wrong. Sounds like you just want a multi Reddit type feature? I agree that that should be implemented some apps have already did it. I don’t agree that the same word community should be lumped together universally and automatically.

No multireddit cannot solve this problem.

They are not a default agglomeration view so they will never make a difference as most users never change their defaults.

Covered in more details here

https://lemmy.ml/comment/7734804

A community cannot escape the stranglehold of moderators with a multireddit, because most users will simply not have it the backup community setup in their multireddit. They will never see dissenters posting in the backuos. And that makes multireddit largely useless

Who are the moderators in this scenario you’re talking about?

It's an hypothetical community, so they're hypothetical moderators/owners. I'm not sure how to respond to "who are they".

They're some bad hombrés..

Your argument through all of this is bad moderators controlling the largest communities so I’m wondering how what you’re saying fixes any of that.

Makes communities other than the one big one visible to nonlogged and default users without extra steps.

In effect this makes all communities global by default.

I really don't hate this idea from a lemmy centric UX perspective but how do you handle federation with other platforms?

maybe communities should be able to flag that they're the same community as one on another server, and if they mutually do so be combined into one metacommunity that people can search for

If it requires the owner's consent, it defeats the purposeof my proposal.

It is expressly to disempower the owners in favour of the users.

9 more...

As someone who is on a medium sized instance, I can say its a little awkward when Lemmy[.]world goes down

9 more...