The problem with this, in my opinion, is Lemmy is written in Rust. From what I can tell, there aren't enough Rust developers to pitch in AND there are better languages to use in a web application.
I think the definition of best programming language here is not popular and hyped but “the one I use”. I really believe Java is worse than Rust for contributors. We’ll see how it goes.
JS only has "Java" in the name, other than that they're pretty different languages (basically: JS is a clusterfuck, Java is a "get paid by the line" hyper-explicit enterprisey invention with deployment horror stories).
I concur; the best language is the one you know to get the task done. That said, Excel VBA isn't the correct language to use to write a Super Mario Bros Clone. I mean you can, but that doesn't make it the best language to do so.
In this case, the problem absolutely is that Lemmy is written in Rust. The developers constantlystate there are only two devs for 40k+ people. IF Lemmy was written in another programing language, regardless of using the 'best' one, there would likely be more able and willing development contributions. Then again with an attitude like this regardless of chosen programming language; I doubt it.
there would likely be more able and willing development contributions
As I said in the linked comment above, I'm not convinced that this is actually true and we've yet to see evidence that it is true.
the problem absolutely is that Lemmy is written in Rust ... Then again with an attitude like this regardless of chosen programming language ...
I mean, didn't you just say it there? The problem isn't with Rust, the problem is with people, the resources available, the devs willingness to implement what you ask for and such. The problem sounds to me more social than technical. I really don't think the programming language is what is standing in the way here 😅
The best language is subjective, but performance-wise most traditional web-oriented languages are dogshit slow and will incur huge costs both in hosting and performance mitigations. Things like rust, go, or C will ensure long term performance.
traditional web-oriented languages are dogshit slow and will incur huge costs both in hosting and performance mitigations
Also, for volunteer-run websites like Lemmy sites, costs are very important as hosting costs is essentially the whole cost, since the volunteers aren't paid.
For companies who pay devs a salary, the hosting is negligible compared to the engineer salary so it's more efficient to just scale up and spend less time optimizing.
I wouldn't recommend C or C++, even the NSA is asking people to stop using them in favor of memory safe languages. The equivalent in performance, is Rust.
An option is to add a plugin system or API that allows integrating mod/filter tools written in other languages.
Email systems already do something like this. Postfix and others support milters (mail filters) which run as a separate process and communicate via a socket.
So I've been working on a personal project link aggregator/forum that incorporates a lot of 'useful features'. It's not something that is prime time ready yet, but one of the key killer features I want to get operational before showcasing it, is exactly what you say. A method to allow plugins to be created an ran by admins and maybe mods. There is a lot that needs to go into the security of this though, and so it's not just a here run some code type of situation for users.
Mod tools are sorely needed on this platform, but I also don't want to be dictating how users of my software must use it. That is, what I may think are problems certainly may be, but how to solve it won't be the only way I say it should be. To that note, my plugin system (WIP) is a toss up between Lua scripts in a sandbox for mod programs/automodding, or the more basic expr language for Go.
So right now for Lemmy or other alternatives I've aware of, this capability does not exist. For my project in this space, I don't want just another Lemmy. I want a BETTER Beehaw.
Probably not. There are several alternative projects being worked on with varying states of completeness and refinement. But the alternatives all seem to have off set visions for their projects.