Live data from Hacker News

Ask HN: Is there still a place for native desktop apps?

news.ycombinator.com

121–130 of 777 posts

Re: Ask HN: Is there still a place for native desktop apps?

#121
IMHO native applications represent a valuable class of niche software tools that deliver very highly specialised functionality in concert with desktop software. Add ons for MSProject and Excel abound and there really isn't an equivalent for online tools or indeed a viable or stable market.

Re: Ask HN: Is there still a place for native desktop apps?

#122
Of course!

I would rather reverse the question: In which situations is it acceptable to use Electron, for example? Something like Balena Etcher makes sense, but Logic Audio not so much.

Don't let hype and popularity on HN (not to mention market share of JS as pertains to the amount of web front-end work vs desktop work) serve as a surrogate for noting actual performance given a specific application.

Wrap-a-browser approaches and bloaty non-native frameworks are good for configuration ware, and things that don't need to engage in high amounts of real time processing saturating the CPU and RAM.

Many applications continue to squeeze required performance out of each platform. Cross platform approaches can serve just fine if there are zero-cost abstractions.

Audio/Video/3D/Image production software, for example. CAD, not to mention developers tools and compilers, just for the tip of the iceberg.

Re: Ask HN: Is there still a place for native desktop apps?

#123
It really depends on the app.

A 3d modeling package? Although Clara.io exists most of the time I'm dealing with 100s of megs of data so native wins. Creating a game? Mostly same though I can imagine some limited online game creation tool even the small sample 3D platformer for unity is 3gigs of assets so a game editor native seems to win. Photo editing, when I get home from vacation there's 100gig of photos so native wins for me. Video editing same thing.

On the other hand there are apps I have zero interesting in being native. WhatsApp, Line, Slack, Facebook, Office, Email, Discord, etc. I'm 100% happy with them in a browser tab. Native apps can spy on way more than browser apps (maybe less on Mac). They can install keyloggers, root kits, scan my network, read all or most of my files, use my camera, mic, etc.

I also use 7 machines regularly. Being able to go to any one and access my stuff is way more convenient than whatever minor features a native app would provide.

Re: Ask HN: Is there still a place for native desktop apps?

#124
I make a living developing software only available on Windows and macOS. That said, if I didn't need to interact so much with the operating system, I'd be making a web app. It all depends on what you want to make though. Video editing software? Native app. CRUD app? Web app.

You may also want to consider pricing implications of both. Desktop software can usually be sold for a higher up front cost, but it's tough sell to make it subscription based. SaaS would make your life a lot easier if you have a webapp. People are starting to get used to paying monthly for a service anyway.

Pro tip: If you decide to make a native app, don't use Electron. Instead, use the built-in WebBrowser/WKWebView components included in .NET and macOS. Create the UI once using whatever web framework you want, and code the main app logic in C#/Swift. Although the WebBrowser control kind of sucks right now, Microsoft is planning on releasing WebBrowser2 which will use Blink. I think they might also have it where the libraries are shared between all apps using it, to further reduce bloat. The old WebBrowser component can be configured to use the latest Edge rendering though by adding in some registry keys or adding this meta tag:

Re: Ask HN: Is there still a place for native desktop apps?

#125

Every single app that I use, I try and make sure it is native. I shun electron apps at all cost. It's because people who put in effort to use the native APIs put in a lot more effort in the app in general based on my anecdotal evidence. It is also more performant and smaller in size, things that I cherish. It also pays homage to limits and striving to come up with new ways of overcoming them, which hackers would have…

Slack desktop app is almost 1 gig in size. On a whim I just checked how big the copy of Adium still lingering in my Mac is: 60 megs. And Ripcord (a native discord/slack client) is a mere 40.

OTOH, if you are using Slack, you probably deserve it :P

"The emperor wears no clothes" and all... paying for threaded messaging, hmmm that's up there with To-Do MVC and Hello World in complexity... well, ok it's a bit higher. Not to mention their billing system lol...

Re: Ask HN: Is there still a place for native desktop apps?

#127
post #116

Earlier quoted context omitted.

But it's fast enough . JIT compilation means algorithms run decently fast, and when it deals with the DOM it's fast enough for everyday interface tasks. Nobody's saying it's elegant. But it's cross-platform and it's a standard that lots of people know. Wishing we move away from it seems like a lost battle at this point -- at least unless we somehow invent a brand-new computing paradigm that replaces browsers, the way…

It’s not though. Not even close. And I know this partially a matter of taste but I have one of the fastest computers you can buy and I can’t even participate in text chats without input lag and delays in interaction. It’s not a good user experience for me at least but that’s ok, we’ll keep stacking more cpu power until it’s all in the cloud anyways.

That just sounds like server latency to me or some kind of bad programming like relying on polling.

Obviously if you build a chat client in the browser and communicate between windows then it's instantaneous. Faster than human perception.

Certainly doesn't seem to be a CPU issue to me. I mean, we run videochat in the browser which works fine. Obviously text chat can be instant.

Re: Ask HN: Is there still a place for native desktop apps?

#129
There are still a lot of fields where performance matters. This is especially true with apps that need low latency, like most games. Something like Stadia may be fine for a casual gamer but it still feels laggy to many, especially those used to gaming at 144Hz+ with almost zero input lag and gsync.

VR is another area where native desktop is still superior.

Then there is anything that is dealing with a lot of local data and device drivers. Video editing for example.

Development tools that work in a browser are getting better but native (or even just Java-based like IntelliJ stuff) still seems superior for now.

Stuff that doesn't use TCP, like network analysis tools, either need to be done as a desktop app or need to run a local server to point the webapp used to control them to.

I guess what I'm getting at is that if you need low-level access to the local device or if you care a lot about things like rendering performance then native is still the way to go.

Re: Ask HN: Is there still a place for native desktop apps?

#130

Every single app that I use, I try and make sure it is native. I shun electron apps at all cost. It's because people who put in effort to use the native APIs put in a lot more effort in the app in general based on my anecdotal evidence. It is also more performant and smaller in size, things that I cherish. It also pays homage to limits and striving to come up with new ways of overcoming them, which hackers would have…

I admire your words here. I am on the other side, building electron apps, I appreciate the flexibility and ease because I would rather iterate on ideas then learn three different OS-hooks. I do agree that memory usage is too high on these types of apps and we as developers can be lax about performance.

I agree too, and your average user is not going to care about the fact you've used Electron, or even know. It's a big win for development.
Post reply on HN