this post was submitted on 28 Aug 2023
343 points (98.3% liked)
FediLore + Fedidrama
2341 readers
64 users here now
Rules
- Any drama must be posted as an observer, you cannot post drama that you are involved with.
- When posting screenshots of drama, you must obscure the identity of all the participants.
Chronicle the life and tale of the fediverse (+ matrix)
Largely a sublemmy about capturing drama, from fediverse spanning drama to just lemmy drama.
Includes lore like how a instance got it's name, how an instance got defederated, how an admin got doxxed, fedihistory etc
(New) This sub's intentions is to an archive/newspaper, as in preferably don't get into fights with each other or the ppl featured in the drama
Tags: fediverse news, lemmy news, lemmyverse
Partners:
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Yeah, Rust was a good technical choice but in practice it really narrows down the pool of potential volunteers
It was an incredibly poor technical choice.
Programming goes through fads where people will claim X can solve every problem. Eventually people realise a languages strengths/weaknesses and communities form.
Rust is the current fad language, its developed a strong following in C/C++ communities but they have nothing to do with middleware (the role Lemmy is using Rust).
It means lemmy devs will have to build everything themselves (instead of focussing on lemmy) and the pool of contributor's will remain small.
Rust is a great and fabulous language, but flexible it is not. If I were starting a Lemmy or Kbin type project from scratch I'd likely start with Python, TypeScript, Lua, or Go depending on what specifically I was worried about bogging me down in the future. And then later on if there were really heavy procedures or db calls that couldn't be simplified anyway else, do those in rust. I think Rust has some very interesting features for micro service development, but for a monolith like Lemmy, it's surely a nightmare
See my goto is Java/Spring Boot or Typescript/TSOA.
I avoid Python because Setuptools/Twine/FastAPI/\ docs conflict and seems to change so creating a good practice project layout is a huge time sink and none of the Python devs I meet seem to understand it.
I am doing GoLang atm, its ok but dev adoption is low where I am and no one has shown me a killer library/framework and being controlled by Google I am waiting for them to get bored and kill it.
Spring Boot takes longer to get going than TSOA/Express but hibernate makes SQL interactions trivial. I love typescript but types makes complex NoSQL queries far more convoluted than Java equivalents (its because Types can't inherit and client libraries don't use interfaces). So TSOA rocks in cases of speed or simplicity.