Live data from Hacker News

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

news.ycombinator.com

411–420 of 777 posts

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

#411

Earlier quoted context omitted.

Qt may not 'look' native, but it has native performance, whereas Electron really doesn't.

VSCode is indistinguishable from native, so not sure its Electron that's at fault here.

This gets said a lot, and granted VSCode is certainly one of the best performing Electron apps, but it definitely is not indistinguishable from native apps. Sublime, Notepad++, or TextAdept all fly compared to VSCode in terms of performance and RAM efficiency.

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

#412
post #332

Earlier quoted context omitted.

And pay QT like 5,000 $ a year to keep it closed source. No thank you. Would rather write it 6 times. Or just use electron.

Qt is mostly LGPL. It's really not that hard to comply with that on desktop, and doesn't require you opening your source code.

It’s hard to satisfy the requirements in various app stores. They also sneak in more restrictive licenses in their graphs

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

#413

Earlier quoted context omitted.

> Meanwhile, your web app may not be as good as native apps, but at least you don't have to write it 6 times. I must be living in a parallel world because I use a ton of desktop apps that aren't "written 6 times" - and write a few, including a music & other things sequencer ( https://ossia.io ). Just amongst the ones running on my desktop right now, Strawberry (Qt), Firefox (their own toolkit), QtCreator (Qt), Telegr…

I still can't believe bitwig is java. I'm a bitwig user. It even runs on linux.

[deleted]

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

#414

Native desktop apps are great. The reason that people don't write them is because users aren't on "the desktop". "The desktop" is split between OS X and Windows, and your Windows-app-compiled-for-Mac is going to annoy Mac users and your Mac-app-compiled-for-Windows is going to annoy Windows users. Then you realize that most users of computing devices actually just use their phone for everything, and your desktop app…

> Meanwhile, your web app may not be as good as native apps, but at least you don't have to write it 6 times. I must be living in a parallel world because I use a ton of desktop apps that aren't "written 6 times" - and write a few, including a music & other things sequencer ( https://ossia.io ). Just amongst the ones running on my desktop right now, Strawberry (Qt), Firefox (their own toolkit), QtCreator (Qt), Telegr…

In my experience Java GUIs are consistently even more laggy and unresponsive than Electron apps. They may be lighter in terms of memory, but they never feel lighter. Even IntelliJ and family - supposedly the state of the art in Java apps - feel like mud on a brand-new 16" Macbook Pro.

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

#415
post #150

Earlier quoted context omitted.

As an Electron hater, I’m constantly surprised at just how much VS Code doesn’t suck.

VSCode is Electron? I had no idea. That’s the only electron app I use willingly then! Good job MS!

The first clue is a text editor that uses 180mb of ram :)

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

#416

I'm going to be slammed for using these two words, but for any real work you need to have as few layers of indirection between the user and the machine as possible, and this includes the UX, in the sense that it is tailored to the fastest and most comfortable data entry and process monitoring. I don't see any `web first` or Electron solution replacing Reaper or Blender in a foreseeable future. One exception I'm intri…

It's quite simple to use the web view process for nothing but the actual UI, and to move any intensive logic to a separate process (or even native code). It's also very possible to make that UI code quite performant (this takes more work, but VSCode has shown that it's possible).

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

#417

As a long-time Win32 developer, my only answer to that question is "of course there is!" The efficiency difference between native and "modern" web stuff is easily several orders of magnitude; you can write very useful applications that are only a few KB in size, a single binary, and that same binary will work across 25 years of OS versions. Yes, computers have gotten faster and memory and disks much larger. That does…

> Yes, computers have gotten faster and memory and disks much larger. That doesn't mean we should be wasting it to do the same or even less functionality we had with the machines of 10 or 20 years ago.

With Moore's law being dead, efficiency is going to get a lot more popular than it has been historically. I think we're going to start seeing an uptick in the popularity of more efficient GUI programs like the ones you describe.

We see new languages like Nim and Crystal with their only value proposition over Python being that they're more efficient.

Similarly, I predict we will see an uptick in popularity of actually native frameworks such as Qt over Electron for the same reason. We may even start seeing wrapper libraries that make these excellent but complicated frameworks more palatable to the Electron crowd, similar to how compiled languages that look like Python or Ruby are getting bigger.

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

#419
There definitely niches for native apps, but they're just niches. It's like massive C++ vs others debates in the 90s. Eventually, people only use C++ where it suits the niche, instead of using it for most of the things like it was in the 90s.

Economically, it's basically 'web first' or at least web by default. Not only it's cheaper, but also faster to iterate, since major clients' logic could be unified.

Development wise, most non-desktop developers hate native desktop development. There are too many quirks in different platforms.

PS: There are so many Electron hates in this thread. Sure, there are a lot of crappy Electron apps, but they're more likely assembled in like one afternoon either because it's a personal hobby project tool or their company wanted only a working software and demanding their developer to release it within one week. Given the same amount of investment, I believe Electron wouldn't be too much short than native apps.

VSCode like everybody mentioned is pretty slick. And personally I feel Discord's Electron app and the React Native app are pretty nice as well.

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

#420

As a long-time Win32 developer, my only answer to that question is "of course there is!" The efficiency difference between native and "modern" web stuff is easily several orders of magnitude; you can write very useful applications that are only a few KB in size, a single binary, and that same binary will work across 25 years of OS versions. Yes, computers have gotten faster and memory and disks much larger. That does…

Agree 100%.

I wonder how much memory management affects this. My journey has been a bit different: traditional engineering degree, lots of large Ruby/JS/Python web applications, then a large C# WPF app, until finally at my last job, I bit the bullet and started doing C++14 (robotics).

Coming from more "designed" languages like C#, my experience of C++ was that it felt like an insane, emergent hodgepodge, but what impressed me was how far the language has come since the 90s. No more passing raw pointers around and forgetting to deallocate them, you can get surprisingly far these days with std::unique_ptr and std::shared_ptr, and they're finally even making their way into a lot of libraries.

I sense there's a bit of a movement away from JVM/CLR-style stop-the-world, mark-and-sweep generational GC, toward more sophisticated compile-time techniques like Rust's borrow checker, Swift's reference counting, or C++ smart pointers.

I mention memory management in particular both because it seems to be perceived as one of the major reasons why languages like C/C++ are "hard" in a way that C#/Java/JS aren't, and I also think it has a big effect on performance, or at least, latency. I completely agree we've backslid, and far, but the reality is, today, it's expensive and complicated to develop high-performance software in a lower-level, higher-performance language (as is common with native), so we're stuck with the Electron / web shitshow, in large part because it's just faster, and easier for non-specialists to develop. It's all driven by economic factors.

Post reply on HN