Hey, folks!

Today, we can celebrate the first anniversary of the creation of lemm.ee! I thought it would be cool to write down how lemm.ee was born, as well as collect some stats about our first year. Here goes!

A quick recap of the beginning of this instance

As probably many others here, I discovered Lemmy early last summer. I had been aware of the Fediverse previously, and always thought it was an amazing concept, but I had never been super interested in Twitter-style social networks. When I found out that Lemmy combined all the great parts of federation with the best parts of link aggregation, I knew that I had to join immediately.

As I was trying to find an instance to make my account on, I realized that most instances were struggling to keep up with a massive influx of new users. At the time, there was a big explosion in Lemmy user numbers, and the network wasn’t fully ready for it. I have some experience with building software for scale, so it felt natural to set up a new instance and try to help with spreading out the load. I got to work in the evening of the 8th of June, 2023, and I was actually so excited about everything, that I completely skipped sleep that night. By the morning of the 9th of June, lemm.ee was online.

From the very beginning, I always intended for lemm.ee to be a welcoming, reliable, and stable gateway into the Lemmy network. I wrote a welcome post on lemm.ee, which most of you have probably seen, as well as a comment on lemmy.ml inviting new users to lemm.ee (lemmy.ml, as many instances, was extremely overloaded at the time).

We started growing extremely quickly. Thousands of users joined lemm.ee over the first few months. Even during the biggest waves of new users, we never closed our sign-ups. The first month or two were definitely very stressful in terms of just trying to deal with the load, but overall, I think I managed to deal with it well enough, and lemm.ee has been running more or less smoothly (with a few exceptions) ever since.

Some stats about the first year

I promised to collect some statistics about lemm.ee so far. This is what I’ve come up with:

Usage

Overall, lemm.ee has 28,715 registered users. Of course, it’s easy to create an account, and most of these are probably inactive at this point, but it’s still a ridiculous amount.

Of all the registered users, 7903 have made at least one post or comment.

7373 users have never made any posts or comments, but have still been voting. This means that out of users who actually interact on lemm.ee, more than half generate content (through their comments and posts) - this is way more than I expected!

Meanwhile, we also have 13,439 users who have never made a single comment, post or vote. I guess most of these are people who just signed up and never got into Lemmy, but I’m sure there are quite a few hardcore lurkers among this group as well.

As for communities, our users have created 1430 of them. Most of these have not (yet) taken off, as only 491 of these communities have at least one comment in them. In general I am happy to see some great communities appearing on lemm.ee - my hope is that we can spread awesome communities out quite evenly on the network, so that in the end, no instance becomes a single point of failure for Lemmy.

Judging by posts and comments made by lemm.ee users, I feel like we’re definitely on the right track: our users have made 20,898 posts in local communities, and 30,847 posts in communities hosted on other instances. The situation is even better for comments, where lemm.ee users have written 42,785 comments in local communities, and a whopping 569,730 comments on remote communities! This means that lemm.ee is not just its own little closed pocket in the Fediverse, but indeed a proper gateway to the Lemmy network, which is exactly what I always hoped it would be.

Note about comment and post counts: I realize the numbers above don’t match the stats about posts and comments on our front page, I’m guessing something is out of sync there, but the stats I am sharing here are based on actual fresh data, counted directly in our database today.

Lemmy (and lemm.ee) would be quite useless without its users, so a big thanks to all of you for using lemm.ee!

Administration

We have a really awesome volunteer admin team, with admins putting in countless hours of their free time to help weed out bad actors. A lot of the work our admins do is completely invisible to most users. I think the admin team does not really get enough recognition, and in fact in many cases, they actually get some undeserved abuse thrown at them.

I am personally very grateful for everybody who has stepped up to be a part of the team, and I think all lemm.ee users benefit from their work every day. In the past year, our admins have handled 12,329 reports from users. While most reports aren’t too bad, and don’t require harsh action, there is still a significant amount of these reports which contain the absolute worst content which you can find on Lemmy - hate speech, bigotry, gore, even illegal content. Our admins are constantly going through every single report they receive, to ensure that mods are getting admin-level support where needed, and to ensure that malicious users in general can’t use lemm.ee to spread garbage into the Lemmy network.

In terms of admin actions, I think the most interesting statistic might be amount of users banned by lemm.ee admins, grouped by their home instance. I will list the top 10 instances here:

As you can see, with the exception of kbin.social, the vast majority of our instance bans are for our own users. Most of the big instances are actually very good at banning their own abusive users, and once they are banned on their own instance, our admins don’t really need to worry about them, as they have no way to log in at that point. kbin.social is a bit of a special case - they either don’t give out a lot of bans, or those bans just don’t federate to Lemmy properly, and for some reason, a lot of advertisers sign up on that instance all the time.

Financials

I have received some questions every now and then about how much it costs to run lemm.ee. While you can always get a sense for the predicted monthly costs for the current month on https://status.lemm.ee, I thought I might include a full breakdown of our costs for the first year here.

Here are all of our costs for the past year, grouped by service:

  • Postmark: 177.06€
  • Cloudflare: 222.28€
  • DigitalOcean: 1744.27€
  • Hetzner: 510.20€ (lemm.ee migrated from DigitalOcean to Hetzner several months ago)
  • Backblaze: 3.78€ (we’ve been using Backblaze B2 for a few months now, it’s incredibly cheap)
  • Domain registration: 100.70€ (paid for the next 10 years!)

We are currently completely funded by lemm.ee users!

There is a small minority of users who are shouldering the entire cost of lemm.ee for all of us. I am extremely grateful that others find Lemmy useful enough that they have put their own money into ensuring financial stability for lemm.ee.

We currently have 49 active sponsors on GitHub, and 7 active supporters on Ko-Fi. In addition, there have been 62 more sponsors on GitHub over the past year, as well as 49 additional supporters on Ko-Fi. This means that in total, 167 users have supported lemm.ee financially. This has completely exceeded all my expectations, I really think it’s incredible. A huge thanks on behalf of myself (and I think I can speak for all other lemm.ee users here as well) to all the supporters!

Conclusion

Running lemm.ee has certainly been a rollercoaster in many ways. There are a lot more things which happened during the first year that I could write about here. On the other hand, this post is already quite long, and a lot of the things which happened are probably best forgotten about anyway, so I think I should wrap up here 😅.

At its core, Lemmy is really an amazing piece of software. It’s helping real humans connect on the internet, without any corporate bullshit. I am very happy to be here with all of you, thank you for joining lemm.ee for its first year, and I hope you’ll join me here again when I write this post in another year from now!

  • sunaurus@lemm.eeOP
    link
    fedilink
    arrow-up
    1
    ·
    7 months ago

    Basically, yes!

    For the backend: our traffic is load balanced between multiple servers, so I can just spin up a new server with the latest version of Lemmy, add it to the load balancer, and then start taking down the servers with older versions. That way, there is no disruption at all for users, because there is always a server available to handle incoming traffic. The only requirement for this is that the new version of Lemmy can’t have database migrations which break the old running servers.

    For lemmy-ui: it’s a bit more complicated, because even with a load balancer, it’s still possible that one user making multiple sequential requests can end up getting responses from different servers. This is problematic, because during an upgrade, files from the new version are not available on the old servers, and vice versa. Fortunately, there are many ways to solve this problem, for lemm.ee, the solution I use is to just always serve lemmy-ui files from object storage, for all versions. In other words, after I upload lemmy-ui files for a new version, these will immediately also be available on old servers.