Hacker News new | ask | show | jobs
by icebraining 2809 days ago
Prediction: 99% of sites would signal "I'm an application", including those that obviously are content sites. The only ones who wouldn't (personal blogs and the like) are already pretty usable, so they wouldn't gain much.
1 comments

You may be right. And honestly, I haven't spent a ton of time yet thinking about all the ways "content mode" and "application mode" would differ. A couple of obvious ideas jump out, but there's probably more to be said about this.

It might also be that the right thing to do is have a fine-grained permission model where pages request specific capabilities from the browser, and the user can allow or deny, with the ability to revoke permissions if abused, or white-list sites in advance, etc.

The web is shit as it is because of the war on control over content presentation. Both users and publishers want to have 100% control over users' screen. The reason 99% of sites will declare they're applications because they just won't give up control.

(This is the core of the ad blocking issue, BTW.)

Of course I'm an user, I'd love the split between browser and app runtime, even just so that I could not launch the latter much, telling all the sites pretending to be applications to just go to hell.

Honestly the last time I wrote an app for a website it was specifically because browser incompatibilities had me tearing my hair out. Calling HTML/CSS/JS standards is fucking laughable.
Out of curiosity, when was that? Modern frontend has many issues (npm is at least a hundred of them) but browser compatibility is a solved problem for the majority of purposes.

HTML had been stable since forever, and browsers will render pretty much any old shit you throw at them without too much cajoling. SVG/canvas were the last things to be cleaned up iirc, but they're pretty usable now.

Most of the sharp edges on JS' DOM API implementations were smoothed off ages ago and if you want to use the newest features stuff like babel and typescript transpile es6 back to es5 with selection of polyfills. AFAIK safari still can't round opacity properly, but since that's usually a stylistic thing just use css.

Vendor prefixes in css have been less relevant for a fair while, were easy to use if you wanted to throw some @keyframes down, and are a non issue of you use an auto prefixer of some description.

The only problem browser is IE11, which had some admittedly wacky implementations and out-dates most of the modern frontend stack by several years.

There are still weirdnesses (Firefox's font rendering, literally everything Safari does, features being implemented and deprecated simultaneously) but nothing insurmountable.

Browsers already have a permission model - sites have to ask to access the webcam or microphone or location or show notifications.

But when 99% of sites are already using a feature, introducing a permission dialog would just be hell for users, since they'd have to click Allow hundreds of times a day.

Browsers already have a permission model - sites have to ask to access the webcam or microphone or location or show notifications.

True enough. And it does get tiring having to click "no" all the time on those notification dialogs.

But again, this is a very nascent idea. I've spent more time thinking about in the last 20 minutes than I had in aggregate before today. I'm not convinced that there isn't a way to make something like this work, but the details are a bit fuzzy. Of course it's also possible that it's just a dead-end from the start. But it sure feels like there needs to be some way to distinguish "apps" and "regular content" and the way browsers handle each.

I don't think it's a bad idea, my main objection is seeing it as a technical problem. It's not - making a more basic browser is a solved problem. What you really need to solve is the economics problem; specifically, the two-sided market of users and publishers. Users have an incentive to use it, but what incentive do website makers have to join?

Google - for good or ill - was able to push AMP because they have the power to reward the sites that complied. You need something similar.

> Users have an incentive to use it, but what incentive do website makers have to join?

I would suggest default layouts chosen/optimized for users. Users would be able to view different forms of content based on the website's suggested format, which is stored by default in the browser. This way, online markets/stores/shops and even ad-systems could be designed such that the user would already be able to view such content in a way that makes them want to click. From a business perspective, this means no more need for client-side analytics, no more browser marketing analysis team, no more front-end web designer, no more need to bother users with invading privacy just to get that key little piece of info. That saves tons of money! Heck - without even sending data to the server, the browser could be designed to bring up content most interesting to the user.

As for ads, these could be presented in an appropriate manner, maybe listed in a sidebar, but in any case, in a way that people would prefer viewing them. I don't think people hate ads, but I do think modern ad techniques suck, and most people would be happy to view ads if presented in the right context and in the right way. Why not let the user pick the how?

(In case you're worried about the lost jobs, those people can shift to the app-side of the web.)