In the last weeks Lemmy has seen a lot of growth, with thousands of new users. To welcome them we are holding this AMA to answer questions from the community. You can ask about the beginnings of Lemmy, how we see the future of Lemmy, our long-term goals, what makes Lemmy different from Reddit, about internet and social media in general, as well as personal questions.
We’d also like to hear your overall feedback on Lemmy: What are its greatest strengths and weaknesses? How would you improve it? What’s something you wish it had? What can our community do to ensure that we keep pulling users away from US tech companies, and into the fediverse?
Lemmy and Reddit may look similar at first glance, but there is a major difference. While Reddit is a corporation with thousands of employees and billionaire investors, Lemmy is nothing but an open source project run by volunteers. It was started in 2019 by @dessalines and @nutomic, turning into a fulltime job since 2020. For our income we are dependent on your donations, so please contribute if you can. We’d like to be able to add more full-time contributors to our co-op.
We will start answering questions from tomorrow (Wednesday). Besides @dessalines and @nutomic, other Lemmy contributors may also chime in to answer questions:
Here are our previous AMAs for those interested.
No questions right now. Just wanted to say thank you for your hard work.
I know y’all catch a lot of shit and get hammered with requests/demands, so I wanted to let you know that your work is greatly appreciated.
Thanks for dedicating your time and energy to making a non-corporate, federated social environment possible.
Being on Lemmy has been a breath of fresh air.
Thx! Really appreciate it, and I’m glad someone thinks its worthwhile work we’re doing.
Do you plan to introduce some kind of post tags into Lemmy, preferably something that will behave like Hashtags on Mastodon and other activitypub platforms? I know that Lemmy has been embedding community name as a hashtag for a while now, though having tags that can be populated by users would help discovery greatly.
Lemmy is not for microblogging, so I dont think hashtags make sense.
Well they don’t have to show up as hashtags to users on Lemmy, they can show up as their own designated tags you add to the post on creation of editing. Just some form of post tags to indicate the category of a post (could even be specific to communities like subreddit flairs) but they would show up as hashtags on Mastodon, similar to how Lemmy already embeds a hashtag of the community into posts.
Ah, post tags are currently work in progress. They are also going to be federated.
Old user, haven’t been active recently. Where’d all this growth come from?? Another reddit refugee situation?
!reddit@lemmy.world started to ban people based on upvotes
!buyeuropean@feddit.uk movement has motivated people to look around for European alternatives to Reddit
+1 on registration experience being the #1 issue.
Would also be cool if we could stop 404/500ing deleted posts and instead display some indication it has been deleted. See https://en.m.wikipedia.org/wiki/Principle_of_least_astonishment.
Thanks for Lemmy! 💙
When will users be able to frictionlessly migrate between instances without losing their posts, their comments, their history, their relationships, their reputation etc? (Without requiring the consent of the exiting instance owner, or that this server still even exists, as they sometimes don’t)
Communities should be more unified across servers, especially for niche ones. I want to see an active Metroid community, I don’t give a crap what instance is hosting it (or if it’s a mostly-opaque medley of instances) so long as I’m federated with it. This is probably the biggest UX misunderstanding new users have.
Consolidation isn’t always a good thing, communities on different instances will have different styles and trends, and that’s a good thing. The benefit of federated social media is just as much in local instances as it is in federation, unique niches are going to have unique comments even if the post is the exact same.
It does not have to be something mandatory…
I mean, there could be some form of “metacommunities”, something like being able to group multiple communities together in a “view” that shows them to you visually as if they were a single community despite being separated. Bonus points if everyone can make their own custom groupings (but others can subscribe to them… so there can be some community-managed groupings).
In theory you could have multiple “metacommunities” for the same topic still… but at least they could be sharing the same posts if they share communities. I feel grouping like this would be helpful because small communities feel even smaller when they are split.
I think reddit has something similar to that, multireddits or something I think they are called.
Piefed has feeds that achieve exactly that: https://lemmy.dbzer0.com/post/38733273?scrollToComments=true
Having distinct communities is a feature, not a bug. If two cities set up their own lemmy instances, say
lemmy.sao_luis.br
, andlemmy.lagos.ng
, they can each have anews
community, without them overlapping.Do a search for metroid, and subscribe to whichever ones you like.
It would still be a huge benefit, especially for more niche topics, if we had something like a federation-wide comm like
/f/niche_hobby
that you could subscribe to instead of 20 different/c/niche_hobby
communities.Maybe comms could opt in/out of behavior to avoid the issue you described.
This would also benefit smaller instances because few people will subscribe to their comms because they are too inactive, making it so their content never gets traction.
My biggest complaint with Lemmy is that it is too hard to group & categorize content. Sometimes I want politics, sometimes I want nerd shit, but my only three options are subscribed, local, and all, which doesn’t have any categorization unless you are on an active, niche server.
Multireddits are pretty much the only thing I miss from reddit.
Piefed has exactly that: https://lemmy.dbzer0.com/post/38733273?scrollToComments=true
Interesting, is this all manually curated like multireddits? Would also be nice to have automatic ones (with include/exclude overrides)
The problem with it just being Piefed is that Lemmy clients probably won’t bother to support it unless it becomes standard.
Is this a frontend specific thing or does it also require the Piefed backend on your instance too? If it is just frontend, I would definitely use it for desktop browsing.
Dope seeing implementation diversity resulting in experimentation and innovation. Would love to see this adopted in other Lemmy implementations too
Interesting, is this all manually curated like multireddits? Would also be nice to have automatic ones (with include/exclude overrides)
They have both
- user defined feeds, public or private
- admin defined “topics”
It’s a whole different software, backend and frontend
They have both
Awesome!
It’s a whole different software, backend and frontend
I know Piefed is both a frontend and backend, but does this behavior require the backend? Like can it be used with a regular Lemmy backend and/or database without backwards-incompatible changes?
The frontend requires the backend. Feeds and topics are managed by the backend anyway
This should be among the first priorities. It would really help kick things off. Not only niche communities, but bigger ones as well. They represent topics of interest. I think I’ve seen a thing like macro community in one of the clients?! Could that be it?
Eternity Android client allows grouping communities into a multi community, but it only helps on getting consolidated feed, not necessarily reaching the same people
the Summit app does it too
Random general question, how do you feel about file hosting? When posting, I tend to avoid uploading media larger than like, 5MB, just cause I know that the cost of storing said media can get exorbitant very quickly and I wouldn’t want to be part of the burden… I’m not able to donate just yet. Knowing this, I am currently on the fence on whether I should create a “gaming clips” community.
That said, it’s nice to be able to embed media from other sources (despite it potentially not working natively for mobile platforms if I’m not mistaken?), which got me thinking: it’d be nice to have some sort of preference list of image/video hosting hosts that users can add to or remove from, and uploading directly from the comment/create post view would use the first working file hosting domain from the list… Just spitballing here.
Shouldn’t torrents be used for large files?
This is correct. Torrents should be used.
i’m clueless about torrents and Lemmy, can you embed them in posts/comments somehow? The closest thing I could think of is using a Framatube instance, but I don’t think you can embed them
You can just use magnet links. I wrote a guide for how to use them here
Like here’s a Joan Crawford movie I like: Sudden Fear 1952 . A super-beginner way, is to install stremio and click that link. Boom, you’re now watching the movie.
I was hoping it could be embedded, but this is a nice-to-know, thanks!
To chime in on the user creation thing:
I think it’s a natural part of decentralization that it’s harder for a single instance to get big enough to be the “go-to” for general users.
Having said that, I also think this will naturally happen over time. As long as the mechanical aspects of sign up are simple, it’s just a matter of users of a given instance to promote their instance.
World events also always play a role in encouraging a move to freer waters. Look at what happened with Mastodon and Bluesky (though Bluesky imo is just a big snooze button on a blaring alarm)
Exactly, the more time goes by the better Lemmy will get. For sites like Reddit or now Digg its much easier to do marketing and get a quick user growth, but when they have problems then users will move to Lemmy.
What have been the biggest challenges with the project over the years, both in terms of technical and non technical aspects. I’d be interesting to hear a bit of retrospective on how has the stack’s been working out, and what surprises you might’ve run into in terms of scaling and federation. What recommendations you’d make based on that and what you would’ve done differently knowing what you know now.
2nding @nutomic, that I’m really happy with the stack.
The one that seems really magical to me, is diesel. With it we get a compile-time-checked database, that’s tightly integrated to the rust objects / code.
Every single join, select, insert, etc is checked before lemmy is even run, and it eliminates a whole category of errors resulting from mismaps.
Its made adding columns, and changing our data structures so much less error-prone than when I lived in the java-world.
Whenever we find that we’d want to do things differently, we usually do a refactor ASAP so as not to keep rolling spaghetti code. We’ve had to do this many times for the federation and DB code, and even have 2 major refactors that also add features ongoing. But luckily we’ve been able to stay in the rust eco-system for that.
As for UI, leptos didn’t exist when I built lemmy-ui, so I went with a fast react-like alternative, inferno. Its showing its age now, so @sleepless1917 is working on lemmy-ui-leptos, which hopefully will supercede lemmy-ui.
The stack is great, I wouldnt want to change anything. Postgres is very mature and performant, with a high focus on correctness. It can sometimes be difficult to optimize queries, but there are wizards like @dullbananas@lemmy.ca who know how to do that. Anyway there is no better alternative that I know of. Rust is also great, just like Postgres it is very performant and has a focus on correctness. Unlike most programming languages it is almost impossible to get any runtime crashes, which is very valuable for a webservice.
The high performance means that less hardware is required to host a given number of users, compared to something like NodeJS or PHP. For example when kbin.social was popular, I remember it had to run on multiple beefy servers. Meanwhile lemmy.ml is still running on a single dedicated server, with much more active users. Or Mastodon having to handle incoming federation activities in background tasks which makes the code more complicated, while Lemmy can process them directly in the HTTP handler.
Nevertheless, scaling for more users always has its surprises. I remember very early in development, Lemmy wasnt able to handle more than a dozen requests per second. Turns out we only used a single database connection instead of a connection pool, so each db query was running after that last one was finished, which of course is very slow. It seems obvious in retrospect, but you never notice this problem until there are a dozen or so users active at the same time.
With the Reddit migration two years ago a lot of performance problems came up, as active users on Lemmy suddenly grew around 70 times. You can see some of that in the 0.18.x release announcements. One part of the solution was to add missing database indexes. Another was to remove websocket support, which was keeping a connection open for each user. That works fine with 100 users, but completely breaks down with 1000 or more.
After all there is nothing I would do different really. It would have been good to know about these scaling problems earlier, but thats impossible. In fact for my project Ibis (federated wiki) Im using the exact same architecture as Lemmy.
Hi! As you might remember, i’ve been pushing for this platform for quite some time so i’ll just dump ideas in a pretty annoying way, hope you’ll spare me :3
- do you realize that the power of the threadiverse is that a forum can even fully exist alone and the federation between them is a plus while for microblogging it’s kinda a shit to not have the big reach? basically, are you going to bring lemmy in a ‘‘more forum’’ direction or a ‘‘more social’’ direction?
- will you ever take into consideration to eliminate downvotes? it’s clear that the reddit effect is already here and people are not incentivized to read the article and comment on point or discuss less agreable stuff just because posts gets downvoted?
- if on my instance downvotes are deactivated, do they still influence my home when I browse subs from other instances that have downvotes?
- more UI mod tools! they are never enough because a community manager has not to be also a sysadmin or a linux poweruser just to take care of the community; stuff like subscribing to blocklists and allowlists, stuff like deleting cached media and so on
- how is the plugin stuff going?
- wouldn’t it be better to drop the android client and the federated wiki to fully focus on making lemmy the best federated threadiverse software? now that nodebb has federation the competition is existent (mbin and piefed were never enough e.e) and other frontends are generally cooler (voyager basically brought me back on being active here)
- can we have a lemmy-first approach regarding comunication and contributions? basically i don’t want to make a github account to push some opinions and it seems like they kinda get ignored when on the lemmy community about lemmy
- ability to merge communities having them mirrored in a basic way i guess it’s already on his way
- would be cool to have tags/flairs but i understand that it is not easy (tags could also become a way to follow stuff on par with communities, with their pros and cons obv)
- would be cool to have lists to be able to browse lemmy from lemmy in a more rss way: for example there are communities i want to check once in a while but totally don’t want em in my home and having lists would help
- changing ‘‘favorite’’ posts into ‘‘bookmarks’’/‘‘saved’’
- would be cool to have the possibility to have a favorite users list to check what your friends are up to
- any other suggestion would basically be ‘‘can this thing that forums have also be ported to lemmy?’’, i just think that lemmy has to evolve into a forum first with a link aggregator ui; it’s kinda easy to use discourse as a bug tracker and feature request tracker for example (observation made because of the previous question of using lemmy instead of github for non code stuff)
- would be nice to have word filters and user notes
- also lobste.rs invite tree would be nice
- have you taken into account that maybe offering a service of lemmy hosting managed by you could help?
- dulcis in fundo, always about empowering non tech people, what about having lemmy on yunohost as one of the curated methods by the devs?
alright i think it’s enough lol; now one very big appreciation: thank you for the rss first approach, having rss for basically everything like it was on reddit (well still miss some query rss but i understand it’s harder to do) it’s really so fucking useful and cool and i really hope that lemmy will make niche communities shine again
Some Lemmy clients offer the option to auto-hide posts and comments which contain certain keywords of the choice of the user. Are there any plans to implement this feature into the stock Lemmy experience?
I know it is possible to do some hacky stuff with UblockOrigin to do the same, but that is not something most know about and are willing to do.
This is currently work in progress.
What’s the vision for using lemmy? User should create an account on one server, and use all? Or should create users on multiple servers? The first one seems like the way to go, but it wasn’t quite clear for me when I signed up
I’m not sure how we could make this more clear either on https://join-lemmy.org/ , or the docs: https://join-lemmy.org/docs/index.html
Hi, I think that Lemmy is great thank you for your hard work
I actually think that given the ads and other distorsions, and thanks to federation, Lemmy is overall actually better than reddit!
Some features I miss are:
- tags
- direct messages outside Lemmy (even if not encrypted)
- better rendering of posts on mastodon (something beyond the title only). Not sure what side is responsible for this, tho!
Keep up the good work guys!
- Tags are work in progress
- Not exactly sure what you mean by “direct messages outside Lemmy”, but in version 1.0 they will be compatible with Mastodon and other platforms
- Its a known problem with Mastodon because it only renders
Note
objects properly, which are meant for short texts less than a paragraph. Lemmy usesPage
which is meant for longer text. Some platforms like Wordpress (iirc) have an option to federate even long posts asNote
so that it gets rendered fully in Mastodon, but that seems like a bad idea to me. In the end its up to Mastodon how to render different types of federated content on their frontend, so it needs to be fixed by them. Here is an entire discussion about this by developers of different Fediverse platforms (including a Mastodon dev).