Hacker News new | ask | show | jobs
by inform880 2250 days ago
I understand that Electron apps tend to be a resource hog, but what other options for software create as many cross platform opportunities with as much work? I think for every single greedy developer/company there's another small software project only able to get off the ground because of the maximized opportunities. This is coming from a relatively new full time developer who's trying to get a small side project off the ground.
6 comments

This is also partially the fault of the operating system companies for not making native development as easy and portable as it should be.

Things like SwiftUI and the upcoming "clips" (or whatever the iOS/Android "partial/temporary apps" tech is going to be called) are a step in a good direction.

Why should Apple care about portability of their Desktop apps to OS's like Windows? Native API's are almost by definition non-portable. That's why you need something like Qt to bridge the gap for you and provide a OS-agnostic API.
So much this. I began a configuration program for a desktop app recently, and it's taking months of spare time to get even a rudimentary UI with Qt. Electron or Qtwebview would probably only take a few hours for a web dev like myself.

All that said desktop development is an interesting challenge, if sometimes maddening.

> I understand that Electron apps tend to be a resource hog, but what other options for software create as many cross platform opportunities with as much work?

Is laziness a good excuse for poor software? For wasting the time and resources of every one who uses the application? For disregarding the conventions of the host platform including any user preferences and accessibility features?

The flaw in your arguments is that good and fast software is usually not the main goal nor the priority of people who drive software aka businesses
> For wasting the time and resources of every one who uses the application?

I don't believe this argument for a second, with the ubiquitousness of successful Electron apps.

An application that takes longer to load, is slower, and consumes more CPU and RAM is by definition wasting the user's time and resources. The slow and bloated nature of Electron applications is griped about quite often. That people are required to use Slack for work doesn't change that.
JavaFX?
All cross-platform solutions suck. At least consider writing one native client for every supported platform. Only support the platforms that your customer base truly needs. Focus on the most important platform first.
Java is pretty good when it comes to being cross platform
No it isn't!

Sure, you can run some sort of Java VM on a lot of platforms. That's no big distinction, you can say the same about Javascript, Python, Lua and so on.

Once you enter the realm of graphical applications, it's a clusterfuck, just like any other "cross-platform" thing.

Does Swing not run pretty much the same on Mac, Linux, and Windows?
Yes, it sucks on all these platforms equally badly.