Every time I go to the piefed frontpage I’m blown away by how much more polished it is. It has all the bells and whistles that lemmy is sometimes missing.
Whats the catch? Why aren’t we recommending everyone goes to piefed instead of lemmy?
App support is one thing I can think of.
We have data on what it costs to run a sizeable instance of Lemmy and it’s not a lot. How does Piefed compare? Anyone starting an instance who envisions it growing large has to contend with this question. Currently it seems it’s got a bit under 1000 users across under 10 servers.
There are now sizeable communities run on Lemmy instances that are reinforced by network effects. There needs to be a significant reason for them to migrate. To that point, the collective project is building communities away from corporate power, not software. The software is a tool to facilitate that. Lemmy has worked well so far in this regard. If someone can show that Piefed can work better and not cost significantly more, it’ll probably get adopted for new communities. If the difference is drastic, we may even see migrations from Lemmy.
We won’t 100% know the answer to that until we get there. But in 2025 fear of a lack of CPU cores is NOT what keeps me awake at night.
Early performance results are positive. Check these links out:
https://join.piefed.social/2024/02/13/technical-performance-of-each-fediverse-platform/
https://join.piefed.social/2024/02/09/comparing-network-utilization-of-lemmy-kbin-and-piefed/
There are many many ways to ruin web app performance and choice of backend language is not really a big one. It’s what you do with it that counts.
https://piefed.social is running on a low end VPS which costs $7.50 per month. Load average is about 1.45 during the busiest part of the day. Most of the load is caused by federating with lemmy.world and that won’t increase as more users come on board.
PieFed is also really efficient with storage. After 16 months of operation, subscribed to every popular community, the piefed.social DB is 30 GB and the media storage is 28 GB. A Lemmy instance would be 10x that. I haven’t bothered to add S3 storage code because we just don’t need it (yet).
Anyway, all this focus on costs and downsides is only half the coin. There are massive benefits that come from using Python:
For a FOSS project where volunteer contributions from people play a big part these things are really important. There are many ways a project can fail (not just technical reasons but social & governance too) and running out of CPU is way way down on the list.
Full disclosure: I like Python a lot and have written a lot of it.
That said, if not for my recent work experiences, I would be absolutely horrified at the idea of using Python for such a project. Between the type system and being interpreted, the performance and runtime issues are pretty painful. That and the historical greater dependence on external application servers really makes Python-based services something that really sucks to administer.
However, as I noted, I have also recently seen Python performing far faster than it has any right to with highly-optimized use of multi-processing and offloading the server stuff to Go.
I think I’m going to have to take a look at Piefed source this weekend.
Cool! Before you dive in, check this out https://join.piefed.social/docs/developers/
These performance results are only from the browser side, but dont cover server performance. The database for lemmy.ml is 60 GB, and that is with 6 years of history. Not sure where your 10x claim comes from. The lemmy.ml server costs 70 Euros per month and doesnt have much loa, with almost 10 times as many active users.
I know the 0.03€ per user per month has been known for a while, but it still impresses me.
That’s nice info, thanks! Do you know why the db difference?
I’ve never seen a Lemmy DB, sorry. But I hang out in the Lemmy matrix rooms and read about admins struggling with their 300 GB databases quite often.
Can confirm. When we took over the running of feddit.uk migrating the images took forever as it was around 300GB.
deleted by creator
I second this. Lemmy is written in Rust where as piefed is written in Python. When it comes to running a high-performance webserver, Lemmy has the advantage.
Yeah, this would be my concern as well if I had to run it. Sure Python apps can be fast and most time is spent in IO, not compute, and if you’re running a profitable operation the exact cost of compute might not matter much. However if you’re running a non-profit service and you want it to be as dirt cheap as possible so it can be free for most users, then the cost of compute very much does matter.
Its written in python, but I don’t think the overhead is too much because the bottleneck is DB performance.
It has support for lemmy’s protocol, so the network effect really isn’t an issue.
Small lapsus ha ha
Thanks.