Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I mean, I can't think of a time a high profile project written in a lower level representation got ported to a higher level language.

Software never gets rewritten in a higher level language, but software is constantly replaced by alternatives. First example that comes to mind is Discord, an Electron app that immediately and permanently killed every other voice client on the market when it launched.



Yes, scripting replacements often usurp existing ossified alternatives. And there is some truth that a higher level language gave some leverage to the developers. That is why I mentioned the advent of LLM based coding assistants and how this may level the playing field.

If we assume that coding assistants continue to improve as they have been and we also assume that they are able to generate lower level code on par with higher level code, then it seems the leverage shifts away from "easy to implement features" languages to "fast in most contexts" languages.

Only time will tell, of course. But I wonder if we will see a new wave of replacements from Electron based apps to LLM assisted native apps.


It’s a little more nuanced though — I doubt the audio processing in Discord is written in JavaScript. (But I haven’t looked!)


Isn't most of Discord backend Rust and Go?


They mostly use Elixir on the backend, with Rust for a few services like Go Live. IIRC they don’t use Go anymore


Given the mention of Electron, I was talking about the client side.


> Discord ... immediately and permanently killed every other voice client on the market

Do you mean voice clients like FaceTime, Zoom, Teams, and Slack?


They're talking about TeamSpeak, Vent, Mumble, and Skype.


Well, voice clients on PC for casual gamer use :p


Sure but that comment was mostly about backend. If Discord used js/ts for backend they wouldn't replace anyone.


I don't think the success of Discord is due to it being written in Electron. Or is it?


I game very little these days, but have run mumble, ventrillo and teamspeak in the past and the problem was always the friction in onboarding people onto them, you’d have to exchange host, port, password at best, or worse, explain how to download, install and use.

Discord can run from a browser, making onboarding super easy. The installable app being in Electron makes for minimal (if any) difference between it and the website.

In summary, running in the web browser helps a lot, and Electron makes it very easy for them to keep the browser version first class.

As an added bonus, they can support Linux, Windows and macOS equally well.

I would say it helps as without Electron, serving all the above with equal feature parity just would have been too expensive or slow and perhaps it just wouldn’t have been as frictionless for all types of new users like it is.


I do believe it's a factor; web apps have the most freedom when it comes to visual design (and the vast majority of developers for it), and it makes it a crossplatform application. Electron and web applications are the market leader in front-end / client side applications by a very wide margin. I mean I don't like it but that's how it is.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: