I know that Lemmy is open source and it can only get better from here on out, but I do wonder if any experts can weigh in whether the foundation is well written? Or are we building on top of 4 years worth of tech debt?
There isn’t a “correct” answer, since all code has to make some choices which might have an impact in the future. There are lots of tradeoffs.
Some points I can give you about Lemmy’s code:
-
It is written in rust, which is very fast and secure. Long-term it might make lemmy instances use a lot less resources than other activitypub servers, like Mastodon (written in Ruby – which is also fast and good, but there are a lot more opportunities to improve performance on rust!).
-
It uses Actix, Diesel, Inferno and Typescript, which are all very modern tools and all of them have a focus on long-term evolution of projects.
-
Actix receives requests from users and processes them. It is fast. Very fast. And stable. A very good choice IMO.
-
Diesel is stable and a very good way to communicate to the database.
-
Inferno is the most bleeding edge of all technologies, but seems to work OK with lemmy. I’ve never used it professionally so I don’t have an opinion on it.
-
Using typescript from day 1 ensures parts of the project can be rewritten when needed or once they become obsolete.
All of these are very good choices for a new system, and the code is very polished. As far as I understand, there are 2 developers working on lemmy full time, too. The project also has a very active community, and the members respond quickly too.
All in all, I would say the Lemmy project is in very good hands and improving constantly. Expect improvements to come fast, real fast!
-