Live data from Hacker News

Inspecting Web Views in macOS

blog.jim-nielsen.com

111–120 of 147 posts

Re: Inspecting Web Views in macOS

#111
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.

It has the advantage of allowing the iCloud team to update the preferences panel without the need to release macOS updates. Allowing them to decouple iCloud updates from the macOS release cycle.

Sure you could use something like SwiftUI and create some simple DSL to dynamically build a native UI. But at that point you’re basically building a slightly crappier, less flexible version of HTML. So might as well use HTML+CSS and take advantage of the decades of learnings it represents.

I’ve personally used a similar approach to power a banks fraud warning UI. Made it possible for us to quickly iterate and change our UI as various strategies used by fraudsters evolved. Meant we could go from see a new issue, to updating our ML models and deploying new UI in under a week, which is faster than the app review process.

Re: Inspecting Web Views in macOS

#112
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 98 predated both of these, i.e.

> to adding intrusive ads to the main system menu / search around the time Windows 8 was released

...active desktop's channels[0] were basically ads in your desktop

> GNOME’s example of powering “native” interfaces with JavaScript

...HTML Applications, ActiveScripting (with the JScript backend) and an embeddable MSHTML/IE engine enabled both JavaScript and "web views" in applications (in Visual Basic 4 or later all you had to do was to use the web control to get instant HTML rendering capabilities).

With "active desktop" you could even use an HTML or web page as your background, e.g. back then i had a hacker-ish background with scrolling assembly code at the side (the scrolling was done via javascript) ala Terminator - though i disabled it after some days since it was using pretty much all of my CPU :-P

[0] https://i.imgur.com/9AqdbdM.gif

[1] https://en.wikipedia.org/wiki/HTML_Application

Re: Inspecting Web Views in macOS

#115
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…

> Perhaps the explanation is that native GUI frameworks simply haven’t kept up in terms of developer experience. That depends on what one values, in my opinion. Whenever I start poking around with front end web stuff it makes me want to tear my hair out. Not because it isn't technically capable, but it all feels so slapdash, duct-taped, and chaotic compared to what I'm used to writing AppKit/UIKit, even if some aspec…

I’m guessing you haven’t tried building something serious with SwiftUI then. Because for me React is a million times more polished than SwiftUI.

I was a native dev before I got into web stuff. The Apple APIs for native GUIs are so good, but they are extremely verbose, and with swift now they are closed source. It’s just not as easy (or fun tbh) to build things with

Re: Inspecting Web Views in macOS

#116
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 am insanely productive writing desktop applications with wxPython+wxWize. No GUI designer, no XML, just straight up Python code that's easy to follow and easy to refactor. I can whip up a prototype as fast as I ever could in Delphi, and it transitions cleanly into the finished app.

I guess if cross-platform needs to include mobile, then that's not good enough. But for what it does, I'm very happy with it.

Full disclosure: wxWize is my own creation.

Re: Inspecting Web Views in macOS

#117
post #30

Earlier quoted context omitted.

React is enjoyable to use?

As a web developer that primarily codes in React for the last 5 years, I strongly disagree. I use it because of the ecosystem and I think everyone does. It's not that fast, and it's quite verbose. That's besides the point though, because I doubt Apple chose React because they "enjoyed" it here. I like web tech but I also think it's not worth it for this use case (even if it is shared with the web). What naturally hap…

It’s definitely a bit disingenuous to call React verbose when you are comparing it to Cocoa et all.

Re: Inspecting Web Views in macOS

#118

I wasn't surprised to see the Family Sharing pane in the first screenshot. It's easily the most janky part of System Preferences that I've had to struggle with: - Loading indicators for several seconds when switching between categories in the left sidebar, on a very decent internet connection. - Janky animations and transitions when opening modals, like clicking the "Details..." button on a family member. - Within th…

My thoughts exactly. I never liked these iCloud system settings and now I know why. They are not native but janky web views. Same for the Mac App Store which behaves very similar.

Re: Inspecting Web Views in macOS

#119
post #31
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!

I expect these additional reasons can largely be summed up as "I already know it from using it in the browser, so let's use that"

Actually, web pages are a very declarative GUI, with an amount of reflexivity and editability that should be on any declarative GUI framework, but normally isn't.

Those properties open up the possibility of abstracting things and making very powerful libraries over it. There is nothing else as powerful out there.

Yet, everybody stops at plain react. So whatever is the reason for the success, it's not that one I pointed.

Re: Inspecting Web Views in macOS

#120
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.

Why is it crazy? Doesn’t a lot of the office tools also use react these days (maybe just the online ones but still)?

I’ve only recently started working with react, but so far it’s been the best experience I’ve had working with GUI in decades of working with different things.

I’ve always been what you’d call a full stack developer, but I’ve always very much not been the front end design developer, and react with bootstrap and font awesome is the first time I’ve been able to effortlessly create GUI stuff that doesn’t look like it should’ve been made by a front end design type.

So to me this is not at all surprising or crazy. It’s simply what happens when you have a really effective tool that a lot of people know how to use.

Post reply on HN