People say this all the time, have you ever actually used Safari? I use it daily and it’s rock solid, I have zero complaints.
People say this all the time, have you ever actually used Safari? I use it daily and it’s rock solid, I have zero complaints.
From a developer point of view, Safari is widely lagging behind other engines in terms of features, and has been rigged with hundreds of show stopping bugs for years, including relative to very basic features like scrolling. As an example, as of today, it is still impossible to reliably prevent page scrolling in Safari on iOS. Don't tell web developers "Safari is rock solid"; for us it's the bane of our existence.
I must have missed the implied “for developers” preface there
IE 5 was a buggy browser lacking a lot of features, but was used often by people not building things online. And forced on people by bizarre site requirements. Though this came worse with IE6.
Microsoft was embroiled in legal issues of their browser at this time, and anyone with a sense of logic (most programmers) could see being locked into one piece of software instantly degrades the value of that software.
Sept 2002 was when Phoenix was released.[0]
IE 6 came out only a year before Phoenix.[1] And you if you were involved with Slashdot back in the day you were tracking browser usage as a daily trend. Phoenix was doing well.
https://caniuse.com/?compare=chrome+106,safari+16.0&compareC...
I really don't see how that translates to "Safari and Chrome trading blows" and Safari taking over Chrome by "50%"?
Also, here is more representative dataset, where you can see that Safari has more than 5 times the number of API failures compared to Chrome, and 3 times compared to Firefox (in the stable channel): https://wpt.fyi/results/?label=master&label=experimental&ali...
Interop2022 is probably what your referring too but that’s just a small (but still important) functionality that the browsers have agreed to focus on. Interop is great, but using it as the primary metric for your browser is very dishonest. Apple tried to do this in their regulatory filing but every other vendor and developers said that the overall stats are much more representative.
not sure what your scrolling issue is, hidden overflow and blocked pointer events have always worked just fine for me. typically when someone gets scrolling wrong they're using 100vh instead of stretch and/or not scoping overflow correctly
It would have been much wiser for Safari to catch up on the dozens of features they don't support that both Chrome and Firefox do, or to focus on bug fixes for the most basic features that's been broken for years. Instead, they chose to ship shiny new ones to try and convince both regulators (from the EU, UK, US, etc) and web developers that they are leading the way in feature adoption. Unfortunately this seems to be working to some extent in the web devs community. Regulators are unlikely to fall for it though.
Here is the 7 years old scrolling bug I'm referring to, which prevents any decent implementation of modals in Safari on iOS: https://github.com/web-platform-tests/interop-2022/issues/84
Here you can see that Safari has 5 times more API failures (representative of both missing features and bugs) than Chrome, and 3 times more than Firefox: https://wpt.fyi/
https://chromestatus.com/feature/6525308435955712
Subgrid is progressing thanks to engineering from the Edge team, and I expect it to land this year.
Until m1 I am not sure apple has the intel experience considering the hackintosh. But apple dominate for a while the developer market.
The question imho is whether apple provide a good enough solution for its users. And for monopoly I am not sure why os pre-installed browser is that relevant. Remember why edge exist. Just to download chrome.
Btw I use both as there are things can be easily done by one cannot by the others. I hope we have more. Not less.
Safari offers the most refined developer experience for web dev and testing (my favourite are the automation capabilities which are incredible and private as it separates my data from test data during a run). With technology preview updates delivered directly in macOS, I'm always confident I have the latest setup to test my web apps...
I really like Safari but no, they are definitely not "leading the gang" in adopting features.
At the bottom right there is a chart and Safari is in 3rd.
I built a company based on browser testing and Safari in general was/is always behind.
They have hired some good people so maybe that situation will change but in general Safari is the currently the boat anchor of browsers. Hopefully the situation will change over time.
1. Safari, performs worst on wpt.fyi by a VERY wide margin 2. In State of CSS last year had the most number of complaints in relation to bugs. 360 related to Safari, compared to 30 for chrome and 10 for firefox. 3. In the MDN developer Survey developers ranked Safari as the second biggest problem after IE. A browser that's no longer supported. 3. Doesn't really support Web Apps, no user findable method of install (install prompts), no push notifications. 4. Huge numbers of bugs (some of which haven't been fixed in over 7 years) 5. and the devtools are still far behind chromes. 6. and missing all of these: Notifications / Push API No AppStore Support App Store Support for Web Apps Fullscreen API Badging Deep Links Screen Orientation Lock Bluetooth NFC Web Share Target Screen Wakelock Keyboard Lock and Keyboard Layout APIs getInstalledRelatedApps() Background Fetch API Background Sync API WebGPU WebXR Offscreen Canvas Declarative Shadow DOM SQL SIMD WASM Threads Shared Array Buffers AV1/AVIF and VP8/VP9/WebP (Open Media Codecs) Compression Streams Scoped Custom Element Registry ElementInternals
Chrome-only non-standards that both Firefox and Safari are against.
> Declarative Shadow DOM
Actually proposed by Safari, and stalled for multiple reasons. Moreover, at the start of the whole web component brouhaha Safari wanted to have declarative ways of specifying Web Components, but Chrome said "no, we want to move fast and break things"
> WebGPU
Proposed by Safari
---
Can't be bothered to check others, but off the top of my head, but most of other standards that you just dumped without understanding fall under the following categories:
- Chrome-only non-standards with multiple issues that have multiple objections from both Safari and Firefox
- Originally proposed by Safari
- Have specific technical objections from Safari, and specific reasons for not implementing
- (very small minority of specs) No idea why they haven't implemented these yet
- Install Prompts 7 Years behind. Many thousands of requests. - Notifications 7 years behind. - Fullscreen API 11 years behind. - Badging 5 years behind. - Deep Links 7 years behind. - Screen Orientation Lock 10 years behind.
and what's your excuse going to be the myriad of bugs/stability issues?
1. This is clearly moving goalposts
2. Why would Apple or Firefox provide you with an "alternative implementation for access bluetooth / nfc"?
> Instead they offer for you to install
No. Instead both they and Mozilla consider these non-standrads harmful and have no intention of implementing them. Or are you going to pretend that Mozilla is in Apple's pocket and does this to enrich Apple?
I'm not going to react to yet another mindless list of things that you have little knowledge of.
2. Neither Apple or Mozilla have described in detail what they think the harms are and why the specs do not cover those harms. But Mozilla is not a gatekeeper and doesn't ban the competition from 50% of mobile devices, so IMO they should be free to decide to do whatever they want even if I disagree with their decision.
Apple on the other hand not only doesn't describe the security issues in ANY detail, or outline why the specs don't cover them, it bans the competition from bringing any solution to the problem while at the same time providing a significantly insecure solution on native which is widely used to track and surveil users and for 9 years didn't even require a permission prompt.
As for resorting to insults about mindless list of things, have you even attempted to build a web app for iOS?
In every single case of the most ardent Safari defenders the answer is no. Unsurprisingly the people that care about the issues in Safari are the ones with the most knowledge that have to work with it daily.
They did
> Neither Apple or Mozilla have described in detail what they think the harms are
They did
> As for resorting to insults about mindless list of things, have you even attempted to build a web app for iOS
Doesn't explain why you keep dumping these lists without thinking and parroting Google's talking points
You can see other replies for details lists of functionalities and capabilities often pioneered and supported by Safari long before other browsers (even Firefox).
Some loud voices from the community have very selective memory, and they momentarily forget all the evilness pumped into Chrome regularly. (remember FLoCs? Advertising API? AMP?)
All that hate for Safari can be much more productive if channeled as constructive feedback on browsers' bug trackers and governance discussions, improving the ecosystem as a whole (which is what you want if you care for the web). Such conversations can even lead to the natural evolution of standards and implementations towards more refined engine customizations on each platform.
Today, iOS allows for open browser choice on iOS, so any technical requirements for the implementation are of no meaningful consequence to iOS users. Everyone can get the look, feel, and service integration with their preferred vendor's ecosystem. Consumers and developers also get a consistent experience throughout the entire operating system - a piece of content will appear the same in any context. Simple, efficient, and reliable. All this will be lost the moment someone decides to prop a "To view this website, download browser XYZ." Imagine you are faced with this in a stressful situation when you need your phone to work the most.
Says who?
Mozilla, Google, Microsoft, EFF, the uk regulator, the Japanese regulator, the EU and most importantly the group of people who actually build web software on iOS.
Hell, remember logging users into Chrome without permission because they logged into a Google website like Gmail and then "accidentally" synching all the user's bookmarks and browser history to Google?
i've been a web dev for 20 years. safari is rock solid but has quirks, yes.
iOS/Safari is worse than IE because it's exclusive. At least with IE/Windows you could install something else.
OS lock-in and slow adoption of new web features is perhaps lame but Safari doesn't have anything even approaching it's own box model, or `-ms-filter` equivalent, or quirks mode... the list approaches infinity.
Also, "install something else?" Do you know what the browser landscape looked like back then? IE had >80% dominance for years, and your other option was Netscape, which lacked huge swaths of custom features in IE.
The expectations and businesses relying on browser functionality back then is minimal compared to today which amplifies the core issues at hand.
Try building an PWA with offline capabilities (trivial in modern browsers) that's your core of your business, and you will see what I see. Apple is _trying_ to strangle non-app store apps. Where IE was just a dumb lumbering problem by comparison.
I have, for one of the world's largest companies. You're missing the forest for the trees if you feel PWAs are this much of a linchpin to the broader conversation.
So if your PWA works on iOS/Safari, great for you, but it doesn't mean everyone's does.
Maybe, just maybe, people should stop trying to develop webapps and instead make websites that just work without javascript. Like this one.
1) I agree. Apps have maps, but most websites?
2) Zooming and panning can be done without WPA. At most some basic JS, although I think you can do the same via HTML+CSS.
3) The old way of zooming panning was buttons for zooming and panning. Those worked fine. In face ,they worked better than zooming and panning buggy implementations.
why would it?
it's a USER-Agent after all. if there is something to scroll, the user probably wants to and should be able to.
I don't trust Chrome. When I went to App Store to get it, and the data Chrome gathers that is linked to your identity is: financial info, location, contact info, contacts, user conten, search history, browsing history, identifiers, usage data, diagnostics and other data. Safari also collects browsing history and location information, but they don't link it to your identity.
I would honestly not care if Chrome was 100% faster, because Google is severely lacking in their privacy policy.
Why do I have a work iPhone? Because Safari is the one browser that you can't just assume things will work for so I need to occasionally use it before pushing website changes.
They have to declare everything they might use, but everything is still subject to the various Chrome privacy policies. I can guarantee that if Chrome were found to be violating those policies, people would sue.
And this is so much better than the alternative which is a 500 page legal document.
When you install the app you see what data can be collected and decide if you trust the provider of the app with that data. And for that you don’t need any context. Because you don’t know what the code in this app does.
Say what you want but it is so frustrating when you run into problems like this. It does remind me of old IE days where we had to produce one gazillion hacks for IE.
Is it really as bad as the IE days though? I didn’t work on web back then, but these days if I run into a safari comparability issue, the workaround is usually pretty painless.
But it's not really a polyfill, just a library.
At least in the IE days everyone _knew_ IE was a problem, so we were looking for a solution as a community. Now? We comments that are dismissive of crap instead of inspiring towards quality.
And in Safari there's zero visibility into why things break, they just silently don't work. At least Chrome is pretty good (in my experience) about throwing an exception or at least logging warnings to the console
Personally I find Safari a great browser on iOS and prefer not to add to the test matrix burden with different browser engines on iOS. Also this restriction is the only thing keeping Chrome from dominating the future of Web, who can't be trusted to not use it as an anti competitive weapon as we've seen with AMP.
People have different priority, most end user gives no fuck about the pile of garbage APIs that just keeps growing in modern browsers, they just wanna read some stuff. When developers cry about their "api", some kid in africa isn't able to access knowledge on ther internet because sites have to use look behind or whatever.
Safari is the modern IE in this respect.
- CSS outline not being affected by the border-radius property.
- Drag images being completely screwed up if the dragged element, or any of its ancestor, has a CSS transform.
Both of these problems have workarounds (insanely ugly hacks would be a better term), but they shouldn't have.
- Regular expression lookbehind
- overscroll-behavior
- Web push
- SVG favicon
- Web Bluetooth (haven't run into this personally, but someone complained about this)
- Nice to have - Problem - Don’t want it, will never allow it - Nice to have - Don’t want it, will never allow it
Of the five items you list, I only see one as a real problem. Two of them are privacy misfeatures that have no business being on the web platform. The other two are annoying and would be better to have than not.
For example, taking web push notifications, you and many others may not want it, but someone else and many others too may want it for whatever reason:
- maybe from a developer perspective because they're a hobbyist and don't want to create an app instead of a website just to get notifications, but would be happy if they had the option. And before you say you don't need them, you DON'T know their use case, e.g., if it's a chat web-app it's going to be pretty damn useless without notifications.
- maybe from a user's perspective because they're not happy granting additional permissions (or making it harder to use an ad-blocker) that could be required by an app from the store, they just need the push notification to get some alert, but don't want to give up access to their photos, files, or contacts too.
In any case, it's about having empathy towards allowing others to have wants/needs different from yours, and if you do that and put yourself in other people's shoes, you should be able to see that Safari is clearly lacking in implementing a bunch of features (or delivering them several years after every other browser).
Finally, all that doesn't take away the fact that Safari does some things better than others, and that other browsers do things worse or push features that are in line with their own agenda or monetisation strategy.
If you’re just building a standard body scroll website with a simple ui/ux you’ll likely be ok. As soon as you start doing complex stuff with pinned panels, or gestures, animations, drag and drop then you’ll hit the bugs.
Some of the bugs developers have been complaining about for 7 years.
Every browser we develop has bugs, Safari just has 10x as many.
Multiple times I've hit issues with things that I would have expected to be 100% complete, like SVGs not being able to properly transition animations in certain cases.
On mobile platforms that's a pretty major feature to brush aside.
As a user I don’t care nearly as much if my browser supports WebOnions v2 or whatever feature-du-jour as I do that it’s not wantonly burning through my battery just doing basic browsing.
I find Chrome absolutely murders the battery life of my work 16" MBP, though.
I never used Safari as my main browser nor I hate it as a developer. I'm just talking about the argument here.
At the same time by lacking features it becomes the lowest common browser api target blocking progress.
Because, perhaps, the main one of those "other browsers" is widely considered to be a surveillance tool first, browser second, for a surveillance company and one of Apple's main current marketing thrusts is "we help you avoid people spying on you on your phone"?
...yes? Who are people going to complain to when ANOther browser leaks their PII from an iPhone? Who will get the bad PR? It won't be ANOther browser because lord knows they've been getting away with it for years with little to no consequence. Why would Apple put themselves - and their customers given their marketing claims to care about their privacy - in a position where that privacy can a) be compromised and b) reflect badly on Apple?
This argument falls over when the most popular apps on their store are YouTube, Google Maps, Instagram and TikTok.
They’re fine with “surveillance tools” if they get a cut.
Unless you consider the minimal $100 / year that Google has to pay to be "a cut".
Definitely should be getting a cut of the ads too.
It is astonishing reading like Safari is some derelict junk when the edges are laughable trivial stuff. "But it doesn't support some random, irrelevant standard Google tried to railroad through last month..."