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.
- Liberapay (preferred option)
- Open Collective
- Patreon
- Cryptocurrency
So many apps die before getting any users. For Lemmy however, when was the first time you really thought “Damn, this thing really might actually take off”?
For me it was long before the reddit migration (which was ~7 months or so ago). I noticed lemmy slowly but surely gaining traction. It felt more dead than it does now, but the trend was slow and steady growth, which is always a great sign. People were using lemmy, liking it, and sticking around.
At the same time, it was clear that we weren’t making the mistake of all the other reddit alternatives, by promising to be a free speech haven for bigoted communities. Those people actively did our work for us by warning their communities to stay away from Lemmy and its tankie devs, thereby making Lemmy a much more enjoyable place from the very beginning. That was a crucial test: we were not willing to sacrifice our values for growth’s sake.
It’s great to see that positivity confirmed by a researcher who did a qualitative and quantitative analysis about Lemmy migration, and finding that >90% of people saw themselves using Lemmy in the long term. We can all be very proud of that, and it means we have a bright future.
Lemmy was meant to be a Reddit replacement from the beginning, so it was always supposed to take off. Even in the early days the tech was working quite smoothly and users were happy so there was no real doubt about it. The only thing missing were more users. However I had no idea how a real migration would actually look like, so it was really overwhelming when last year people started to flood in and everything got overloaded and broke down.
Is there a public roadmap of some sort?
Maybe a blog post like “a year in review and what’s up for this year”
I’m not talking about bugs or minor tweaks. Just a general where are we, where are we coming from and where are we going to? What are important milestones?
I’ve just updated the post body with some updates about this, but if we get approved for another year of funding from NLNet, the the two new devs will be working on these milestones in 2024 (still a draft at this point).
Being an open source project, we can afford to be less strict about a roadmap, as anyone (including ourselves) can take on any of the open issues on the issue tracker. Part of the fun of these is getting to pick which things you’d like to work on, and that you personally think are important.
Outside of maintenance-related tasks and merging PRs (which does take a significant chunk of our time) of course @nutomic@lemmy.ml and I both have things we’d like to prioritize this year. My main priorities are:
- Getting Jerboa as fully functional as lemmy-ui.
- Notifications (Unified push).
- Working on lemmy-ui-leptos, our proposed replacement web UI for lemmy-ui written in Rust.
- Performance improvements (DB, federation code)
- Stabilizing the API
- Becoming fully funded by donations, and growing our dev co-op.
Thx! Goodluck and enjoy the path
I think a lemmy roadmap for the next year is hard, because scope and even individual features depend on funding (for example, nlnet funds specific features).
Maybe something like Mastodon’s roadmap would be possible though (with no specific timeline)? https://joinmastodon.org/roadmap
I wouldn’t put a timeline to it. Just a list of features, broad and specific. As time goes on, they can be marked as “in progress” or “included”. New things can be added over time, or made more specific. All without timetables. For now call it a wishlist.
Check the NLnet milestones in updated OP.
The AMA is upcoming on Friday, it’s not this threadEdit: Leaving this here
It’s OK to post questions here:
Feel free to post and upvote questions beforehand in this post, as it will turn into the AMA tomorrow.
I stand corrected!
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:
- Is there a trend toward centralization, or away from it?
- How are people being introduced / onboarded onto lemmy?
- 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.
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.
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.
boost.lemy.lol?
Lemmy Community Feeder? https://github.com/Fmstrat/lcs
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.
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.
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
deleted by creator
Doesn’t !books@lemmy.ml and !books@lemmy.world direct you to yourinstance.org/c/books@lemmy.ml and yourinstance.org/c/books@lemmy.world respectively?
Yes, syntax link like /c/community@server is incompatible with http.
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.
I agree, I want to echo this. This needs to be rectified. Same communities across servers should be possible to engage with in a metacommunity format. This will be a game changer for Lemmy.
This isn’t the first time I have proposed this, but the pushback leads me to believe the owners do not want to relinquish power to the users. Lemmy it seems, is a community for owners. The interests of instance owners and their delegates come first.
I think we will need the digg & reddit story to play out all over again so that in 10-15 years the next exodus out of lemmy might lead us somewhere we can actually be free.
This is not that big of a problem. A third party can always make a bootleg version of metacommunity post viewer. Lemmy can already view posts across all federated instances using “All” tab, so all that would be needed is some method of meta labelling of same (not similar) communities across instances and to be able to view unified communities under such tags, and this tagging be done appropriately by all instances’ admins in synchronisation, ignoring their personal and ideological differences.
That ends up like the multireddit suggestion. You might have a modded view of the lemmyverse where can see the obscure posts on 10 user instances.
But most of the lemmy population will still have the default view.
So in effect, these post are not visible to most users and they don’t becone culturally relevant. It is like they don’t exist and the only community is the “big one” plus maybe a 2nd one with only the refuse from the 1st.
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.
Please stop using time zone abbreviations. Everyone can read an offset (UTC +02:00 in this case). But almost everyone has to look up the abbreviation
No, I can not read an offset. Because we have summer time and winter time here, and I dont instantly know what the offset is for which one.
Firstly, thank you so much for providing the means for me to cut Reddit out of my life, I feel like I’m engaging with content in a much more deliberate way since, and honestly it’s been a massive improvement to my mental health in a way that I was completely oblivious to there even being a problem before.
Anyway, the question—regarding things happening entirely out of your control, what would be the best and worst things that could happen to lemmy from your perspectives? And as an extension, what are your goals for it?
The best thing would be if Reddit goes the way of Digg. Seems that will happen sooner or later. The worst thing, maybe if funding stops and we are unable to keep working on Lemmy. But even then admins could still host Lemmy instances.
The best thing would be if Reddit goes the way of Digg.
Well, it has already. The only reason it hasn’t fully imploded & all the users deserted for another site, is because there wasn’t an equivalent place to go to.
They were sort of parallel in development but digg blew up and Reddit didn’t then Digg took a quick hard turn towards enshitification.
Reddit has done the enshitification but like a parasitic infected spider, it’s wandering about and most of the users haven’t realised yet that it’s an empty shell.
It’s slow demise would be better in the long run than a quick collapse like Diggs so it’s now putrid culture is not transmitted with an enmass exodus.
Thx! Its pretty wild to me how much these algorithms, and formats, affect our mental well-being. Those giant US tech companies employing Psychology PhDs to figure out how to keep people angry, engaged, and watching ads, is doing so much harm to so many people, not just in the US, but the whole world, and unfortunately very few countries are doing enough to protect their people from these companies (who also act as surveillance arms of the US state) by blocking facebook and the rest.
I’ve seen two professors I respected turn into angry children on twitter, in a way that would never happen in real life. Reddit, twitter, and Youtube platform reactionary rage-bait to get people trapped in a downward spiral of negativity. These companies do not care how much damage they do; all that matters to them is their profits.
We don’t have those same incentive structures, so we can and should be doing everything we can to make this a positive and enjoyable experience, not about arguing constantly, but about learning, laughing, and understanding.
what would be the best and worst things that could happen to lemmy from your perspectives? And as an extension, what are your goals for it?
The best thing would be that we continue our slow and steady growth. Every user that migrates away from big tech to the fediverse is victory, so while we shouldn’t emphasize growth at any cost, its still a good thing when we can get people away from all that negativity.
The biggest concern for me about Lemmy, would be a centralization onto one big server, that tries to replicate all the worst things and behaviors about reddit: its combativeness, xenophobia, bigotry, pro-US-foreign policy agendas, and advertising. There is a noticeable chunk of Lemmy’s users who don’t really see any problem with those things, they just want a reddit that lets them use 3rd party apps again.
Not a question, just wanted to let you know I how much we appreciate and love you all for making Lemmy happen 🥰🥰
Thx a ton!
Thank you! Its great that you have been around all these years.
Have you put measures into place to assure the quality of future updates? In the past several updates have caused issues. And recently 0.19.x broke federation for the most of us. And it took weeks to fix it and make Lemmy usable again.
We publish multiple release candidates and run them on lemmy.ml before the final release. That allows the community to test changes. We dont have a quality assurance team, and developers are notoriously bad at testing their own code, so I dont see what we can improve in this regard.
developers are notoriously bad at testing their own code, so I dont see what we can improve in this regard.
Sounds like software development… I mean automated tests help. But you’re developing a distributed/federated platform. Unit tests won’t do it. Maybe infrastructure that spins up a small fleet of instances and checks their ability to federate posts, delete comments and simulates interaction. That’d assure the most important aspects keep working. And I think there are tools for that available. But I get it. It’s complicated, there are real-world instances with special (niche) setups, you’re constrained, it has to be worth the effort and there are other important things to do.
Maybe just do your best not to break too many things and we (users) can complain and have another discussion only if it’s a reoccurring problem. 😉
We have lots of unit tests, and also a test suite which launches a couple of local lemmy instances and ensures that they federate as expected. But it’s not possible to cover every single functionality, at least not with our limited resources. The problems all happened with things that are difficult to test and had major breaking changes in this release. In the future we won’t need such breaking changes so there will be less problems.
Also keep in mind that Lemmy is provided for free and as is. We have no legal obligation to users. And you can always stay with an older version if you want more stability.
Thank you very much for explaining, and the whole AMA.
Concerning the “providing the project for free”… I think that’s too simplistic. I mean users have expectations anyways. And you must have some motivation to maintain an open source project. Otherwise you wouldn’t put it out there, engage with your users, fix their issues and incorporate their requests. Or you’d make that clear in the first line of the Readme as some people do.
I think open source is giving and taking. It’s not about legal obligations (we usually waive every responsibility in every open source license.) But perhaps ethically. I as a user feel obligated to honor and respect your work and the time you’ve put in. And I shouldn’t expect anything except for everyone abides by the license. But the devs aren’t the only one putting in time and effort. Downstream are admins who run the actual instances. There might be an ethical obligation to not waste their time either. And there are moderators and users who make the platform become alive. They also offer their time for free and are part of the ecosystem, like the developers are. And ethically it is correct to treat people nice who put in a few hours to prepare a proper pull request and work towards the same goal as core developers.
And there are a few unique circumstances. This is a social network/link aggregator. And as such it relies to some degree on the network effect. It won’t work without a certain amount of users and them being happy here. Lemmy devs seem (to me) invested in the project and not just coding something for money. So you want it to be successful and catering for users is part of the equation. Additionally the users of a social network trust the platform with their private data. You can’t take legal responsibility for that. But if you accept users doing that, it’s at least an ethical obligation to make good choices.
And the situation is: Since you have a few full-time developers… It’s not a hobby project anymore. So it’s a bit more complicated. And money might come with expectations. I personally differentiate between donations that are meant as a bounty, this money comes with obligations. And donations for the great work you’ve done so far. These come without.
I think you’re doing a good job. I especially like that Lemmy development doesn’t seem to be focused on growth above all. You could implement things differently and completely focus on not showing user-facing issues, in order to assure fast growth. Or write a Reddit clone like some people would like, including gamification, awards and stuff. But you don’t seem to be interested in that. And that aligns well with what I like. I want a nice place to engage with people. I don’t need another platform that is commercial and does things in order to be successful at the market.
I’m grateful. There are still bugs and a few more complicated annoyances I’d like to see being addressed. But I really enjoy spending some of my time here.
deleted by creator
So basically Oauth support? Theres an open PR for that.
Has Lemmy.ml been contacted by law enforcement yet to hand over user data? If yes, when was it, and what did you hand over?
Nope, never.
whats that thing where a company has a ‘we have never been contacted by law enforement or have been forced to disclose data’ sign on their website that theyll take down to implicitly inform users theyve received a request and a silencing order
Warrant canary. I doubt those really work because law enforcement could easily require you to keep updating it.
could you try regardless?
I’m pretty sure all user data is public already.
PMs might be the only thing not everyone can see.IPs and access logs, plus email addresses aren’t public and are the kind of thing law enforcement wants.
What is currently in the works to help admins locate spammers and problematic users on their instance?
Right now I believe it relies heavily on users reporting and admins looking through a users history however I think that is really inefficient.
Are there any better visualization tools that could be made to aid admins?
How would you suggest to make it more efficient?
Well I am not 100% sure on what the best method would be.
I think the addition of letting moderators see who is voting on what posts is a nice addition since they would tend to be closer to where the content is.
More generally I was thinking about creating a dashboard that gave the admins statistics about that user.
Similar to how we as users can see how many comments and posts any user makes, it might be useful to allow admins to see statistics about which communities the user interacts with or some rudimentary similarity score with other users?
These are some ideas I thought of on the fly and have not thought about the implications but the gist is something that allows the admins to get a better understanding of what is going on from like a bird eye’s view.
Edit: and where -> on what posts
The main implication is that someone would have to implement it, and we dont have enough developers for that.
Yeah that’s fair. It was just more of a possible what if.
Hopefully you’re able to get more people that can help develop the features that are in the backlog.
Anyways thx for answering. I was half expecting it to be skipped.
This seems like a big change that also requires a lot of brainstorming to flesh out. It sounds like it would best be made as an RFC for now.
Registration applications, and user reports are the best way to handle trolls. The first stops 90% of them, the second means we can ban and remove all their spam at the click of a button.
I don’t see how you could prematurely know about spammers or trolls until someone reports them. We don’t plan on adding any text-analyzing AI or anything like that into lemmy’s codebase.
I don’t see how you could prematurely know about spammers or trolls until someone reports them.
I don’t think you can. My suggestion was more focused on how admins make decisions after a report. Right now they have to do a manual scan of the person’s comment history and that is the part I find inefficient. If it was possible to just show extra high level information on the user it might make it easier for the admin to make a decision.
We don’t plan on adding any text-analyzing AI or anything like that into lemmy’s codebase.
Yeah using AI to try and analyze comments would be overkill and probably prone to manipulation anyways.
Edit: I’m sorta talking more specifically towards banning a user or seeing if what a user is doing is a repeated pattern.
I don’t think there’s a way you could avoid going into their history. I do that as an admin to verify that the account in question is indeed repeatedly breaking rules. I’m open to suggestions tho.
When are we getting polls in a similar format that Reddit does? I would love to have those!!
No specific time, but they are in the linked roadmap for this year.
How did you feel when everyone was coming from Reddit to Lemmy?
Excited, but also extremely stressed out and exhausted. For about 2 months I was getting an average of 4 hours of consistent sleep a night after that happened. We were very happy when things calmed down.
Do you feel fully recharged now, or still catching up from the intensity of it all?
Mostly recharged from that now.
Good to hear. Thanks for the work you do on Lemmy. It’s nice to be free from the corporate machine that is Reddit.
No probs!
Very excited, and then very overwhelmed because everything started breaking left and right.
Joy, but also panic.
Will the source code ever move off of proprietary Microsoft GitHub where users need to have an account to contribute & search code—or certain users are blocked due to US sanctions? If the idea is wanting to stand up against centralized US-corpo-controlled social media for forums, why use that US-megacorpate-controlled code forge / social media platform?
So far these problems are mostly theoretical, in practice Github works fine. But once Forgejo gets federation working we will probably migrate to a selfhosted instance.
I’d also be in favor of moving to Forgejo once federation gets fully functioning, and reliable.
I think it’s fine. You won’t influence anything about US by using a worse collaboration platform. If Lemmy becomes more and more popular, it may eventually become a real alternative for the masses. That’s what the goal should be - not avoiding github.
It’s better to be smart here.
Its unfortunate that we (and it seems like 99% of other Rust projects), do their issue tracking on github. We have multiple mirrors set up for Lemmy, so the code is safe from takedowns, but the issue tracker is a concern.
The main issue I’ve had is: if we migrate, I want that migration to be permanent, and for me a requirement for that is federated collaboration. I’ve had codeberg remove a torrent project of mine to comply with German law, and gitlab has most of the same problems of github. Self-hosted gitea instances work, but many people just don’t contribute to them when they have to make an account on each one.
You’ll see below that Lemmy’s two main devs are in favor of migrating our issue tracking to forgejo, once federation gets reliably up and running.
This is a good idea. There are currently mirrors on codeberg and a gitea instance, but I could see picking one of those platforms as the main place to host and making the github one a mirror. The main hurdle I can see for this sort of migration is that all the open issues are currently on github.
I agree with this concern. Lemmy should have a Plan B and alternative non-US git host ready. If those Washington shitbags can label Lemmygrad as a big bad “tankie” platform, and go after “tankies”, they will come for Lemmy too.
Since I read a few comments here… What is your oppinion on more democratic platforms? I mean something like electing moderators. (Or dropping them in a democratic process.) Or voting for other things in a community.
(This is more a hypothetical question. I guess with the architecture as is, it can easily be exploited. And there is no way to implement this properly without severe changes and consequences.)
We’ve talked about it elsewhere, on github and one of these Q and A’s, but the main thing is that these things can be easily gamed. IE: making a ton of fake users to vote for a malicious mod.
There’s a ton of ways that could be exploited that I can’t think of rn. I’d rather not stress test them in lemmy.
Cool! I had some personal questions in mind, apart from Lemmy. These won’t be a problem right?
Sure