Live data from Hacker News

Inspecting Web Views in macOS

blog.jim-nielsen.com

91–100 of 147 posts

Re: Inspecting Web Views in macOS

#91
post #80

Earlier quoted context omitted.

I'd bet that the reason they're using React is because it's cheaper and easier to find front-end developers for the task.

I’ve been hearing this on HN and similar forums for what feels like years now: “Electron/web-based GUIs are only popular because it’s easy to find devs in those ecosystems” Have we considered asking why it’s so much easier to find React devs? Why such a huge, huge majority of UI development today takes place on the web? I’m a front end web developer. I’m very biased. But I’m a little tired of the narrative that “the…

> Why such a huge, huge majority of UI development today takes place on the web?

Business models centered around the web, like the cloud and SaaS, and because it's the lowest common denominator when it comes to cross platform development.

> Perhaps the explanation is that native GUI frameworks simply haven’t kept up in terms of developer experience. And if you spend some time exploring them, I think that becomes very obvious very quickly.

QML works very nicely, it has a pleasant developer experience, it's reactive and declarative, and it even gives you JavaScript. It's similar to React in those regards, and I prefer it.

Re: Inspecting Web Views in macOS

#92
post #80

Earlier quoted context omitted.

I'd bet that the reason they're using React is because it's cheaper and easier to find front-end developers for the task.

I’ve been hearing this on HN and similar forums for what feels like years now: “Electron/web-based GUIs are only popular because it’s easy to find devs in those ecosystems” Have we considered asking why it’s so much easier to find React devs? Why such a huge, huge majority of UI development today takes place on the web? I’m a front end web developer. I’m very biased. But I’m a little tired of the narrative that “the…

I believe the reason why so much UI development takes place on the Web is because there are a lot more people making websites and web applications than there are making desktop applications. For example, think of all of the businesses and institutions, big and small, that need a web presence. Because the Web is such an essential part of modern commerce, it makes sense that there would be much more work available for web UI development than for desktop UI development. In addition, the Web is quite possibly one of the easiest platforms to deploy an application. Want to reach much of the world? Spin up a cloud VM, get yourself a static IP and a domain name, deploy your web server, and voila!

Another thing to consider is that native app development is fragmented. For one, there are a variety of platforms. There are four major commercial platforms for consumers: Windows, macOS, Android, and iOS. In addition, each platform has multiple ways of doing native development. I don't know much about the Android ecosystem, but in Windows you have a choice between (off the top of my head) Win32, MFC, WPF, and WinRT (and I may have forgotten a few), on the Mac you have a choice between AppKit and SwiftUI, and on iOS there's UIKit vs SwiftUI. Thus, it's not enough just to hire a developer based on platform; it's important to hire based on experience with the API your application uses.

In my opinion, my negative opinion of Electron on the desktop has nothing to do with laziness. There has always been a tradeoff between developer convenience and optimal performance in software engineering; for example, this is why I write machine learning code in Python instead of fine-tuned assembly. If that's lazy, I'm guilty as charged. Rather, my negative opinion is based on these issues:

1. A disregard for conforming to the platform's UI/UX guidelines, which are in place to ensure consistency in behavior across applications. By Webifying the desktop we get rid of one of the strongest advantages of desktop operating systems, which is consistency across applications, and we turn the desktop into the inconsistent hodgepodge of user interfaces that make up the Web.

2. Accessibility problems that are caused by ignoring the native platform's accessibility APIs.

3. Performance issues caused by running instances of entire web browsers to duplicate UI rendering features that already come with the UI toolkit of the system.

4. Applications written with the Web in mind for the desktop often inappropriately use design elements that may make sense in a web browser but do not make sense on a desktop (this is related to #1).

Some would say that #1 has long been the reality for Windows and Linux long before Electron existed due to competing toolkits (especially in the Linux desktop world) and app-centric viewpoints from application vendors where the look-and-feel of an app trumps platform consistency concerns for branding reasons. I agree. However, some say we should shrug, give up the dream of consistency, and accept having inconsistent applications. I believe there should be more consistency between applications (in fact, I disagree with the notion of app-centric desktop computing in general and strongly favor a component-style model, but that's another debate for another time), and I believe one of the strongest selling points of the Mac is the high degree of consistency that existed among the platform's applications for decades. The move toward Webified desktop apps undermine this consistency, however, and that I believe undermines one of the big things that make the Mac special.

Re: Inspecting Web Views in macOS

#93

Earlier quoted context omitted.

Apple Music is now using a technology they developed to convert web views back to native - https://news.ycombinator.com/item?id=30648424 On macOS 12.2 Music consumes much less RAM, and no longer has a webview process.

I think your link is wrong; are you thinking of Catalyst[1]? I'm not an Apple insider, but Catalyst looks like the thing that was codenamed Marzipan for a while. I think it's more for converting iOS apps than web views. [1]: https://developer.apple.com/mac-catalyst/

No, it’s something internal called JET

https://9to5mac.com/2021/12/16/apple-is-rebuilding-apple-mus...

Re: Inspecting Web Views in macOS

#94
post #88
post #80

Earlier quoted context omitted.

I’ve been hearing this on HN and similar forums for what feels like years now: “Electron/web-based GUIs are only popular because it’s easy to find devs in those ecosystems” Have we considered asking why it’s so much easier to find React devs? Why such a huge, huge majority of UI development today takes place on the web? I’m a front end web developer. I’m very biased. But I’m a little tired of the narrative that “the…

Seriously, have you TRIED non-web, cross platform, UI dev? It's a nightmare. At least all the things I've tried so far are. I'm trying KDE's Qt IDE out and so far it seems much better at getting a working example built, though it looks like it's missing a visual interface editor. Qt-the-company had a good visual interface editor I used in ~2018 I think with PyQt but I can't find a way to launch it anymore. It's a mes…

I have, since the days of 16 bit home computers where when I wanted ultimate performance it had to code the core of the application in straight Assembly.

The only platform that offers native RAD like tooling for Web Development is OutSystems, most don't come even close, probably WebFlow.

Naturally since most devs don't like to pay for their tools, their target market is enterprise shops, so only Fortune 500 devs get nice tooling.

Re: Inspecting Web Views in macOS

#95
post #33

Source-available variants of [GNU's Not] Unix have often been on the leading edge of user interfaces, from immitating the Xerox PARC desktop metaphor before Windows did (X11 initial release: June 1984, Windows: November 1985) to adding intrusive ads to the main system menu / search around the time Windows 8 was released. But it’s interesting to see macOS’s proprietary UI now apparently following GNOME’s example of po…

Windows settings use react native

Sadly, at least it uses WinUI/UWP underneath.

Re: Inspecting Web Views in macOS

#96
post #38
post #18

Earlier quoted context omitted.

As it turns out, React / CSS / the document-object-model are popular for more reasons than “it works on different computers.” Who knew!

who knew? it sneaked up on us. we spent decades wedging compatibility shims into gaping functionality holes, while heroic visionaries of the web as a platform toiled and bargained to bring us the tools we needed for modularity, performance, and a modicum of basic platform services. all while making sure continued to work.

These pages are the least performant part of the preferences application.

Re: Inspecting Web Views in macOS

#97
post #88
post #80

Earlier quoted context omitted.

I’ve been hearing this on HN and similar forums for what feels like years now: “Electron/web-based GUIs are only popular because it’s easy to find devs in those ecosystems” Have we considered asking why it’s so much easier to find React devs? Why such a huge, huge majority of UI development today takes place on the web? I’m a front end web developer. I’m very biased. But I’m a little tired of the narrative that “the…

Seriously, have you TRIED non-web, cross platform, UI dev? It's a nightmare. At least all the things I've tried so far are. I'm trying KDE's Qt IDE out and so far it seems much better at getting a working example built, though it looks like it's missing a visual interface editor. Qt-the-company had a good visual interface editor I used in ~2018 I think with PyQt but I can't find a way to launch it anymore. It's a mes…

Some of us don't think much of Qt either.

Re: Inspecting Web Views in macOS

#98
post #92
post #80

Earlier quoted context omitted.

I’ve been hearing this on HN and similar forums for what feels like years now: “Electron/web-based GUIs are only popular because it’s easy to find devs in those ecosystems” Have we considered asking why it’s so much easier to find React devs? Why such a huge, huge majority of UI development today takes place on the web? I’m a front end web developer. I’m very biased. But I’m a little tired of the narrative that “the…

I believe the reason why so much UI development takes place on the Web is because there are a lot more people making websites and web applications than there are making desktop applications. For example, think of all of the businesses and institutions, big and small, that need a web presence. Because the Web is such an essential part of modern commerce, it makes sense that there would be much more work available for…

>Thus, it's not enough just to hire a developer based on platform; it's important to hire based on experience with the API your application uses.

I don't think so. I'd hire an iOS developer for a macOS job. There is enough commonality for it to be an easy transition. It's the same on Windows, the Winforms app I work on has a ton of win32 calls and a smattering of XAML/WPF.

Re: Inspecting Web Views in macOS

#99
post #10

Wow. I always thought the argument in favor of using web technologies on the desktop was that cross-platform became easier. And yet here is an example of the most unambiguously single-platform app I can possibly imagine, and under the hood it uses web - and React of all things! Crazy.

They probably gave the icloud team, a team largely made up of web developers, full authority over that system preference pane. Their experience is in react, they chose react; makes a lot of sense. Even more so if the data here is used by similar pages on the web version of icloud.

I could see that they want the flexibility to change the web app without having to roll out a Mac update.

The results aren't good though, the whole thing is painfully slow.

Post reply on HN