Sweet baby Jesus. We keep adding more and more layers of cruft, with sloppy stringly-typed interfaces between them, just more and more layers and wrappers, it’s a bloody miracle software isn’t worse than it is, and I certainly can’t see this path leading to making it better.
Electron is never a “solution” for “cross-platform” “GUIs”.
I can run the same code on different platform to create Graphical User Interfaces.
So, yeah, technically it’s a solution for cross-platform GUIs.
Maybe you should offer an alternative that they could use, until then they’re going to keep using electron.
There is an unexplored path: a good domain model written in a cross-platform language that platform-specific UIs interface with.
These are good jokes but I was hoping to guide this to a productive discussion. There’s a saying that I’ll paraphrase but I think it applies very well to most discussions around electron.
There’s this insistence that anything that isn’t “web” is somehow super hard/byzantine or whatever because…it isn’t web? So Electron addresses this existential fear from both business and dev types nicely.
What it provides:
That said, if excellence in UX is a priority, I find it hard to beat platform-specific UIs backed by shared domain logic libs.
I mean, I think any UI platform is at least byzantine, if not super hard, including the web. Getting good at one UI platform takes time, getting skills for multiple UI platforms takes even more time, or more developers.
It’s also that the web platform has some real major benefits over all the platform-specific UI toolkits. For me a major one is zoomability and responsive CSS-based layout, which helps me a lot. I can’t zoom in and out in almost any GTK+ app.
It’s not completely unexplored. It’s just that, until recently, that cross platform language that could reasonably interact with the most platform-specific UIs was usually C++, which a lot of people avoid by reflex.
In the past, I think there’s been a lot of effort to position C# in the space, with some success (what with Xamarin and co).
And that path is still more effort than writing something in Electron or a website, until you start pushing the edges of what browsers can do.
If a .Net developer needs to do a cross-platform “modern” GUIs, it shouldn’t be much hassle just using Typescript with Electron. There’s no need for something like this at all, only if you heavily depend on existing .Net libraries that aren’t available in Node, either in JS or with a C++ bridge.
Also there’s GTK# which is probably a better option if you need C#.
CGI? Am I one of the few people who thought of something completely different?
Computer Generated Imagery or Common Gateway Interface? It’s the latter that inspired the name