Hacker News new | ask | show | jobs
by nerdjon 83 days ago
I am curious why Safari in particular is getting a lot of the hate here when firefox supports even less of the features which leads me to believe that the reason many of these features have not been accepted is because they have not been accepted by the larger ecosystem and is just google pushing their own things as standard (Feels like IE days in many ways).

That being said, I am not sure why I would actually want most of these features in the browser? Many of these things feel like they further complicate what a browser is supposed to be doing and opens up security concerns at the same time.

I think the idea of using a web app for many tasks instead of apps is fine, but I don't think the idea that a web app can do everything is the way to go.

Edit: To be clear about the Firefox comment, notice that many of the features that are not supported non chromium browsers don't support on any platform. So the question on whether these are considered web standards is outside of whether iOS allows other engines.

Edit again: Apparently the third column is based on your current browser instead of always comparing chrome, mobile safari, and firefox like I assumed. I am currently on Firefox on Windows, and there are more red X's under Firefox for me. Seems like a weird choice to not always compare all major browsers.

10 comments

Firefox is not in a position where it is the only browser allowed to run on a platform.

On iOS, you’re either doing a native app, sharing 30% of your income with Apple, or you’re restricted to Safari’s feature set. No browser in iOS can use anything but WebKit

It came out in the Epic trial that 90% of App Store revenue comes from loot boxes and other pay to win game mechanics - cry my a river for those companies.

The other companies that are making money from mobile are usually front end for services that don’t monetize directly through in app purchases or give you the option of not paying through the App Store.

The first million in revenue is 15% not 30%

But also if it is just Apple, why do the same companies create apps for Android?

Let’s say in this world where there was an alternative browser engine that supported everything that you wanted, how much uptake do you think you would have for your app if someone had to download an alternate browser first?

Did I also mention that in the US at least you can link out to your own payment system?

Also let’s not forget that Google’s app store fees are also 30%
Even so, conflating "Safari is holding the web platform back by not implementing standardized web features" with "Safari is holding the Google platform back by not implementing non-standard Google features" is kind of disingenuous.

Going through some of the list from the top:

* Shortcuts in the manifest: This seems to be standard. Would be nice if mobile Safari supported it.

* Protocol Handling: This is non-standard.

* File Handling: MDN doesn't contain a reference to a standard, and it has this caveat: "At present this feature is only available on Chromium-based browsers, and only on desktop operating systems". So not only does it seem to be non-standard; Chrome on Android doesn't even support it!

* Contact Picker: This seems to be moving through the standardization process and is not yet standardized, if I understand MDN's "experimental" label correctly.

* Face Detection: This seems to be yet another not-yet-standard API.

* Vibration: This is standard, it's a shame Safari doesn't implement it.

I'll stop here but you get the point. 2/6 are actual standards; 4/6 are just features Chromium implemented even though they aren't standard.

I'm glad mobile Safari doesn't follow every Google whim. Google has enough power over the standardization process as it is; we don't want them to control which features browsers add outside of the standard too.

In addition, parts of the list seems to be extremely outdated: Safari on iOS does support the Web Push API and most of the Notifications API (at least for apps added to your home screen as PWAs). These APIs have been supported since iOS 16.4, according to MDN.

> Vibration: This is standard, it's a shame Safari doesn't implement it.

I would rather prefer web pages do not gain the ability to make my phone vibrate.

>Even so, conflating "Safari is holding the web platform back by not implementing standardized web features" with "Safari is holding the Google platform back by not implementing non-standard Google features" is kind of disingenuous.

You missed the point completely.

Apple >forbids< any browser engine on iOS other than their own Safari. So you can't just install Chrome on iOS, because when you do you get Safari instead.

I would not care how Apple cripples their own web browser if they didn't force other browsers on iOS to use their browser engine. They are forcing me to write a native app instead of just tell my customers to install Chrome to have access to the APIs my product needs (web bluetooth).

I am not an iOS app developer, I'm a web developer. I don't have the resources to support that kind of code when I already have a perfectly working web app on the competing platform. I also do not plan to sell anything through my webapp, which is why Apple wants to force developers to create a native app, where they can collect 30% (or whatever % it is now) of anything sold through the app.

It doesn't matter what the standards are or aren't. Apple are just being greedy assholes and what they are doing is absolutely worse than what Microsoft did to get sued in an antitrust case when they simply bundled IE in Windows.

And to make it worse, Apple is on the board that decides what standards get into W3C, so they are blocking useful APIs based on their own greed.

This is part of the reason Apple is currently being sued by the DOJ

https://www.justice.gov/archives/opa/media/1344546/dl?inline

Mobile safari is arguably the only thing standing between Google and total browser dominance. It's the reason why Google "only" has roughly 75% of the mobile browser market even though it has a 90% market share in desktop. I'm principally against the idea that Apple can prevent users from installing the software they want on their own devices, but we can't deny that it's better for the health of the web.

Anyway, if you want to exclusively argue "Users should be able to install the browser they want", that's fine. But you're not; both your comment and the pwa.gripe page brings up how Apple is "crippling" their own web browser. Since you use the same wording as pwa.gripe, I assume you too view the lack of non-standard Google-only features as "crippling mobile Safari". I disagree.

> Mobile safari is arguably the only thing standing between Google and total browser dominance

"Apple Is Not Defending Browser Engine Choice"

https://infrequently.org/2022/06/apple-is-not-defending-brow...

You seem to be conflating my opinion of "iOS's lack of browser choice has the consequence of preventing Chromium from achieving total dominance" with some imaginary other person's opinion of "iOS's lack of browser choice is a benevolent act where good guy Apple valiantly defends the open web". I do, frankly, think that mobile Safari couldn't compete that well in an open market, just like desktop Firefox can't. (Not purely because Firefox is technically inferior, mind you; products don't compete purely on technical merit.)

I think Chromium out-competing every other browser engine is a bad thing.

You clearly haven’t tried to design anything complicated that has to run on safari iOS. Safari iOS is a massive piece of shit. I’ve been working on a web game for a while now using canvas and most of my pain comes from making it compatible with safari. So much stuff is broken on safari so you have to find work arounds. Like a simple but annoying one, CSS filters don’t work on canvas so you have to write all those filters your self and apply them by using imgData.

Also the constant crashing when using canvas and the web audio api, it’s a disaster to be honest and it feels intentional, like they want me to write an app instead so they can rent seek.

As a non-web developer I'm interested if anyone can answer this question:

  If you're designing for <X> browser, how hard is it to make it work on <Y> browser?
Answering with at least {Chromium,Safari,Firefox}

Because if it's hard when targeting Chromium and adapting to {Safari,Firefox} but easy when targeting Safari and adapting to {Chromium,Firefox} then honestly it seems like Chromium is the problem.

What I want to distinguish is the biases in being used to programming in one environment and actual ease of programming for an arbitrary browser. Regardless of what official standards are, there are "in practice" standards, what is used in practice.

What would be nefarious is if Google is promoting people to program in ways that are not compatible with other browsers, cementing its monopoly. (This may even be achieved without explicit direction. Achievable simply by Chromium devs building tools for devs but not carrying about compatibility with other browsers). After all, the web is for everyone, but just because it's open doesn't mean monopolies/oligopolies/collusion/<other nefarious actions> can't happen.

Tdlr: does developing on chromium encourage browser incompatibility?

The argument which has been provided so far about why Safari is crippled is that it does not implement non-standard Chromium-only features. There are other problems with Safari, but they are not found in the page we are discussing.
Seeing that there are cross platform game engines, it seems to me that making a web game is not the best way to go. How do you plan to monetize it? Get people to put their credit card on your website? How is your web game performing on Android? Have you tested the performance on the typical mid range Android phone?
As an iOS user, I’m quite happy you have to jump through these hoops instead of being able to force me to use a Google product.
You can still build a PWA and get most of the benefits (I use a few PWAs on my iPhone daily). Or you can package it through Expo and rely on the Reader app exception without letting users sign up on iOS (although the rules around that are changing and you might be able to).

I get the gist of the article but what specific features do you need to let people just use your app as a PWA on iOS? Do you need access to the NFC, for instance?

I need web bluetooth to give users the full experience. They can use most of my platform currently on Safari, but not the really cool stuff that web bluetooth enables.
> They are forcing me to write a native app instead of just tell my customers to install Chrome to have access to the APIs my product needs (web bluetooth).

Why don’t you encourage them to get an Android? What makes you think that people who prefer an iOS device over Android would even install Chrome after you nag them with dark patterns?

> I also do not plan to sell anything through my webapp, which is why Apple wants to force developers to create a native app, where they can collect 30% (or whatever % it is now) of anything sold through the app.

Sorry, not following you: Apple is forcing you to give them 30% of nothing? How exactly is that a problem?

> Apple are just being greedy assholes and what they are doing is absolutely worse than what Microsoft did to get sued in an antitrust case when they simply bundled IE in Windows.

Yes, how dare Apple look after their [checks notes] customers by preventing devs from using the features that would most annoy their customers?!? Such a greedy thing for a company to do, to give customers what they want! The only true purpose of a company ought to make it easy to slurp up customer data and monetize eyeballs!

> What makes you think that people who prefer an iOS device over Android would even install Firefox

100% guaranteed people would. I know this for a fact. You somehow have proof of the negative for some reason. Maybe you can share that.

Regardless, just because you are satisfied with iOS as a platform doesn't mean others don't continue to wish for improvements.

Can I ask which version of iOS was perfect in our mind?

What fact? Have you checked Firefox's market share even on desktop?
> Can I ask which version of iOS was perfect in our mind?

6.

Guess what? You not having the resources to have anything but a shitty PWA is not my problem.

Do you really think that you are going to get any level of monetization by forcing users to first download a hypothetical web browser that has all of the features you want? That web browser doesn’t exist on any mobile platform

You have no idea what my web application is, or whether it is shitty or not. So thanks for the troll - it reminds of my days on reddit, but now this pointless internet interaction is over.
A web app has never in history been as performant as a native app.
> No browser in iOS can use anything but WebKit

Your statement is true only outside of EU countries.

Is any popular browser actually available with non-WebKit browser in EU? So far I wasn't able to confirm this.
No it's not. The percentage of people who actually can use alt stores is so small that nobody will really dedicate money to make browser build for iOS. Why would they when Apple would just make the work impossible anyway.

It's pure malicious compliance from Apple. Anybody defending Apple on this is simply delusional.

Alt stores and web engine stuff are two separate things: https://developer.apple.com/support/alternative-browser-engi...

Browsers with alternative engines can be offered in regular AppStore. That's why I wonder why isn't this a thing. At the end of the day, browser makers probably want to reduce confusion and complexity of maintaining two vastly different applications under the same name. This most likely isn't a case of malicious compliance, you got yourself carried away here I think.

I think malicious compliance is a fair interpretation of the situation: https://open-web-advocacy.org/blog/apples-browser-engine-ban...
I think the main technological limitation is that other browsers cannot just-in-time compile (JIT) JavaScript or any other embedded language. Except in the EU.

ETA: your link includes JIT; I’m pointing out that that’s why they don’t exist outside of the EU. Non-JIT browsers would just not be very performant.

This whole thing is of Apples doing. Of course they don't want to comply.
Specifically due to regulations that Apple incited.
A significant amount of apps can get the 10% rule rather than 30%.

It doesn’t necessarily change the point in the end but it is worth noting.

> why I would actually want most of these features in the browser

The page is about PWAs, applications that can be installed by the browser rather than the platform's App Store. Native applications already have those capabilities and a lot more.

Because it’s essentially propaganda. By conflating “Not Implementing something Google did” with “Intentionally Crippling”, they hope to pressure Apple by through either the general public (the PR game) or through Government mandates (the lobbying game).

This has been going for at least as long as Blink was forked off WebKit.

And why Apple? Because Apple’s the only other browser giant, and they do have motivation to not implement a lot of these features. Frankly a lot of these are features I don’t want in my fucking browser either. But web developers, and businesses that predominantly rely on the web (such as Google) want as many complex APIs as possible implemented in the browser.

They don't need to implement it though. They just need to unban browser vendors from shipping their own engines.
Browser vendors have been able to ship their own engines in the EU for almost 2 years now. What great benefit to consumers has that enabled?
Some of Mozilla's positions are based on Apple's, such as the refusal to implement Web NFC [0].

Since Webkit has been the only engine allowed on iOS, ultimately this is a disagreement on app distribution. I can see Apple and Mozilla's argument regarding Web NFC, but I also don't want to write a whole app so my friends and I can play around with NFC tags. I find it irresistible to draw comparisons to the new Android situation regarding non-Play Store apps. If there was a developer registration list for websites (that was better than DNS registrar records and TLS certificates), would Apple and Mozilla find that acceptable? After all, I need to give my real name and payment details to Apple just to write an app.

But for good measure I will add one for Mozilla too. Firefox Android still doesn't support the Web Codecs API [1], so I need to use the "jpeg" codec on Selkies remote desktop sites, which I assume is rather poor for my bandwidth and battery.

[0] https://github.com/mozilla/standards-positions/issues/238 [1] https://caniuse.com/webcodecs

And chrome still does not support plugins on android, to my great surprise, while Safari has them on iOS. I honestly much rather have plugins than web nfc, or whatever the chrome bully decide should go in a browser.
Google’s choice to exclude extension support on Android can’t be a coincidence. Great example of conflict of interest with a web ad giant running a web browser.
It doesn't have to be an either/or situation and I certainly want both in my mobile browser!

Ad hominem is also not a valid argument against NFC. One of my friends built a whole automatic mahjong table with NFC tags. NFC apps are used in access control for offices, college dorms, apartment complexes. Businesses have obvious use cases for it, from inventory management to payments. Governments want to use NFC for government functions and visitor prearrival processing. Sure, maybe some of them want you to install apps for other reasons, but I can assure you not all of them do, so it's a shame that this function is so exclusive.

I think western users using NFC for payment, transit, gym access, etc. are not aware how apathetic the rest of the world would be if phones start taking out NFC, and one of the ultimate causes is that it's so difficult to work with across all users. It's just so much easier to make a website that shows a QR code that your PoS system or gym access gate can scan. Bottom of the barrel Android phones in India and China already ditched it and that's just going to exacerbate the issue. If it goes the way of the 3.5mm and microSD card in the next decade, we can put this in its autopsy report.

Firefox on iOS is just a wrapper around Safari, since that is all Apple allows.
The third column is your current browser and platform, and for me it's showing Firefox on macOS missing a lot of features. When I switch over to Brave, I see Chrome on macOS. Interestingly, Chrome on macOS apparently supports vibration, despite the hardware for it being nonexistent.
But on macOS you can switch to a browser that can do all these things. A company could ask you to use a different browser (not ideal, but if the web app requires a specific API, it's not an unreasonable).

Safari is in a very special position because it controls what the web can do on iOS (all browsers on iOS have to use Apple's WebKit engine, they can't add web features). Apple is not just gatekeeping native (through the app store), but its competition, too (the open web, through the webkit requirement)

If you ask me to run a different browser, if at all possible I’m going to use a more reasonable competitor instead. I’m not about to return to the bad old days of sites badgering me to install IE because the dev thought it was a great idea to use ActiveX or whatever.
I'm not trying to defend Apple's decisions, I'm merely pointing out that the site is showing the feature support that Firefox has or doesn't have on macOS, or whatever other platform someone is using to access the site.
Fair :)
> the open webm

Sonehow you seem to confuse open web with Chrome-only non-standard APIs

No, because any browser can decide to ship a feature that it thinks is worthwhile. Users can decide which browser they trust to be their User Agent. The distribution model is open. You type a URL, you click a link. No single company in control.
> No, because any browser can decide to ship a feature that it thinks is worthwhile.

Yes, yes they can. They don't get to call it standard or essential. And Chrome-shilling sites like the pwa.gripe and a slew of others don't get to call those features "essential standards of the web".

> No single company in control.

That is literally not how standards work in the browser world by literal agreement of all browser vendors.

We literally lived through this with IE pushing its own non-standard features and calling it a day. Hence the whole "let's reach a consensus, and have several independent implementations of a feature before calling it a standard".

And if "no single company is in control", why then you're so enthusiastically pushing for a Google's full control of the web?

While true, that does not seem to align with what the checkboxes for firefox, looking at many of the ones that Safari does not support other non chromium browsers don't support on any OS. Mobile or not
The difference is that, on iOS, you can't switch to a different browser that does support these features. Om very other OS you can.

A web app could ask you to use a different browser (not ideal, but if the web app requires a specific API, it's not an unreasonable).

Safari is in a very special position because it controls what the web can do on iOS (all browsers on iOS have to use Apple's WebKit engine, they can't add web features). Apple is not just gatekeeping native (through the app store), but its competition, too (the open web, through the webkit requirement)

True, but putting aside that limitation on iOS for a moment.

The very important part about this is whether or not these features are actually considered a web standard or is it Google pushing their own agenda.

Which is where whether or not any non chromium browser supports any of these on any platform. Which many of these features they don't.

That completely changes the conversation here, from Apple purposefully ignoring standards to Google pushing things that are not standards yet. Which I will admit that the reality is a bit of both here, but it should not be considered a negative when a browser does not support a feature that is non standard... we heavily criticized IE for exactly this and yet we celebrate Chrome for it?

>The very important part about this is whether or not these features are actually considered a web standard or is it Google pushing their own agenda.

Apple is on the W3C board that gets to decide what APIs become standards, so Apple is definitely pushing their own agenda on the W3C.

So you can't really complain that Google is pushing their own agenda with these APIs when Apple is the one refusing to make them a standard. In this case, Apple is the one doing shady shit by holding back things like web bluetooth for no good reason. No, "security" is not a reason, this API has been in use on other platforms for a very long time with no real security issues.

There are lots of other standard APIs that have been implemented, but Apple refused to let the ones that eat into their app store go forward.

>we heavily criticized IE for exactly this and yet we celebrate Chrome for it?

I remember when IE implemented XMLHTTPRequest, and it did a lot of good for the web.

I also remember when Microsoft got an antitrust case for simply bundling IE with Windows, yet Apple seems to get a pass for forbidding all other browser engines on iOS? Well, fortunately Apple has its own antitrust case in the DOJ now for its own abusive business tactics.

https://www.justice.gov/archives/opa/media/1344546/dl?inline

Google is also involved in W3C and do I really need to bring up the topics API as Google attempting to use their position to push their agenda as well?

We really need to stop putting google on a pedestal as if they are truelly on the side of an open web, like every company they are looking out for their own interests. Which is fine, they are allowed to do this.

That doesn't change that many of these are in fact not a standard according to W3C and should not be implemented in any browser until it is. A discussion about why it may not be standard is worth it, but that is also a very important distinction that is not made on this page. Right now it is framing it as google supports a standard that the other's (including Firefox) do not.

Just because Google does something it doesn't mean the rest of the industry should follow. If we did that in IE days we would still have ActiveX

Safari is a monopoly on iOS and iPadOS, that's a problem if you want to make a bleeding-edge PWA app, in that it's probably not going to work very well on iPad and iPhone and there is no web alternative on those platforms.

Firefox is entirely optional, not a monopoly anywhere.

The problem for me isn't making bad web browsers, it's enforcing those bad browsers as the only option on a computer platform.

KNOW THE BROWSER RULES

Firefox refusing to implement a web standard: APPROPRIATE

Safari refusing to implement a web standard: INAPPROPRIATE

Which browser engine are you getting on iOS when you install Firefox?

If you answered Firefox, you are WRONG.

You get Safari, because Apple forces all browsers on iOS to use their own crippled browser engine.

Apple also is part of the W3C board that gets to decide which APIs get to become standards, so they also influence what other browser makers do.

This would be a non-issue if Apple didn't force all browsers on iOS to use their Safari engine.

No, you get Firefox.

There is much more to a web browser than just its rendering engine. When you install Firefox on iOS, you get Firefox. It uses the WebKit rendering engine, but it’s still the Firefox browser.

To be frank, it’s pretty insulting and dismissive to all the people putting huge amounts of work into building browsers only to for you go around telling people that all their work is really just a mirage.

You didn't answer his question at all.

> Which browser engine?

There's no Firefox engine, there's Gecko engine. That's the core of Firefox' extension APIs.

Now, tell me how do you implement `webRequest.filterResponseData()` API for content blocker extension with WebKit: https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...

It absolutely is a mirage. It's like those Ferrari kit cars where you take a Ford or whatever car frame and remove the outer shell and put a Ferrari shell on top of it. It's not a Ferrari, it only looks like a Ferrari.

The browser engine is the majority part of the browser, everything else around it is window dressing. So when you install Firefox on iOS, you are getting Safari with a thin wrapper around it. You are not getting the Firefox rendering engine, which is the most important part of a web browser.

The problem is that it has to use the WebKit rendering engine, and not that it happens to.

I think it's more insulting to browser vendors that they have to throw away their browser engines to appease the monopolistic tendencies of one company.

You may wish to re-read the comment you respond to. To quote:

> Which browser engine are you getting on iOS when you install Firefox?

Emphasis mine.

You are a responding to a comment asking what browser engine you get, and the answer is Safari/Webkit.
> I am curious why Safari in particular is getting a lot of the hate here

Here is HN, where apple is the bad boy in town.

No this is where Apple gets handwaved with whataboutism.
Or maybe they deserve it?
The keyword is "intentional".
I think anything that mentions Apple in a negative light gets reflexive upvotes.

I use both Apple and Android ecosystems, so I’ll occasionally participate in normal user conversations about features, how-tos, etc. Posting anything about the Android ecosystem, unless I was talking about Samsung features I disliked using, is no more or less likely to get down/upvoted than anything else I post about any other technology. Using any tone more positive than a negative-leaning neutral when referring to any Apple product reliably collects a handful of downvotes, and often a negative comment or two. Same thing with negative sentiment and upvotes. I’ve never seen such a passionate dislike of a corporation among a small number of people. Even with famous brand loyalty rivalries like Ford/Chevy in the 80s and 90s it was more mutual. It wasn’t like 99% of drivers not giving a shit, .5% of Ford users being smug, and 2% of GMC drivers just being super mad at a product they don’t own.

I don't think you're wrong, but what's especially interesting about this is that up until just a few years ago, it was completely the opposite. Giving any criticism of Apple would get so many rapid/reflexive downvotes that it often killed the comment before many people even got a change to see it. I experienced it myself a number of times. Having been reading HN now for ~13 years (I lurked for years before starting to participate), that's been my number one dislike about HN is the complete inability to have objective discussions about Apple. At one point I even wrote a quick browser extension to filter out posts that had Apple in the title because it was so nauseating. Ideally the pendulum wouldn't swing, but instead would just settle in the middle, but alas that just isn't human nature.
> Giving any criticism of Apple would get so many rapid/reflexive downvotes that it often killed the comment before many people even got a change to see it. I experienced it myself a number of times.

I’ve never found myself in any online community that meets that description. Certainly not HN, and HN hardly seems big enough to have Apple fanboy niches that you could accidentally find yourself in.

In the heyday of Steve Jobs’ Apple there was certainly a lot of praise here, but also constant prominent complaints about Apple being overpriced, or not open enough, or too litigious, or having too many fanboys.

I’ve seen way more complaints about Apple fanboyism than actual fanboyism. I’m genuinely curious how you could find yourself in one of those communities by accident.

Same. I have always found people talking about the hoards of rabid Apple fanboys but I’ve just never seen it in the wild. That’s even having been critical of Apple countless times over the years going back to the mid 90s even before Slashdot, let alone OS X. I’ve obviously seen the odd Apple fanatic out there but less frequently than , say, Linux evangelists or zealots for any given gaming platform over the past couple of decades or sports teams or cult band followers. Maybe in, like, the Apple subreddit? Brand subreddits are always where fanboys live for everything.

I think it’s a combination of underdog vibes and confirmation bias that people have adopted as a community identity.