5 ms·
Safari hasn't actually been particular far behind implementing industry standards. As far as I can tell, it's more that people seem to believe that Google dicta
by Aloisius 2y ago
Safari hasn't actually been particular far behind implementing industry standards. As far as I can tell, it's more that people seem to believe that Google dictates industry standards and base everything on when Chrome supports it as opposed to when it actually gets standardized.
SSE's
W3C draft standard in 2012. Supported in Safari in 2010.
web sockets
This one is true. IETF standard 2011. Supported fully in Safari 2013.
IndexedDB API
W3C recommended standard in 2015. Supported in Safari in 2014.
animations
If we're talking the Web Animations API, it hasn't been standardized yet (W3C working draft) and level 2 isn't even that far.
relative color syntax
Not standardized yet. It's currently a W3C working draft.
container queries
Not standardized yet. It's currently a W3C working draft.
a bunch of <video> stuff
Need specifics.
flexbox
W3C candidate recommendation 2018. Supported in Safari 2013.
- afavour 2y agoI feel like you’re putting the cart before the horse there. The W3C takes existing implementations into account before issuing a recommendation.
- fellowniusmonk 2y agoThis is very misleading, compare implementation timelines between browsers and you'll see that Safari has implemented many of these things year(s) after chromium, firefox and even opera. This of course was because they have tried as much as possible to push people to closed source/walled garden apps.
- Aloisius 2y agoI'd argue calling non-standard chrome/firefox/opera features "standards" is misleading.
- deleted 2y ago[deleted]
- burnerthrow008 2y ago+1, and I'd argue that calling non-standard chrome features "standards" is what makes it the new IE.
- fenomas 2y agoThis is plain bad faith. If you know anything about web standards, you already know the W3C process requires candidate implementations and interoperability before a standard reaches its later stages. Other browsers implemented the standards earlier because they participated in that process; calling those implementations "non-standard chrome/etc features" is absurd.
- Aloisius 2y agoLater stages? These features often get implemented at the working draft stage - a stage where major changes can still happen, it has no consensus or even wide review. Google implementing a draft they themselves authored with minimal review doesn't make it standard just because w3c publishes the draft.
- fenomas 2y agoWhen chrome/firefox/opera all implement a working draft and demonstrate interoperability, they are participating in the standards process. Trying to make it sound like they're doing something non-standard when they do that is simply dishonest.
- aalimov_ 2y agoI still don’t understand what you’re trying to say about Safari. After reading the response (outlining draft vs support dates) to your initial comment it seems like the reality is that your primary complaints dont make much sense. Maybe there are some other features that they were late to start supporting. Seems more like other browsers jumped on new features before they were standardized, and maybe that is at the heart of your original complaint? Safari taking “too long” to support things that dont have a standard?
- spartanatreyu 2y agoIt *is* misleading because Apple saying that Safari supports a feature doesn't actually mean that the feature in question actually works. Rather than go through every single point (because I don't have all day), I'll just pick one: > IndexedDB API > W3C recommended standard in 2015. Supported in Safari in 2014. No. It didn't work in 2014, it wasn't working until 2016. (see: https://gist.github.com/nolanlawson/08eb857c6b17a30c1b26 https://gist.github.com/nolanlawson/08eb857c6b17a30c1b26) So what? It was recommended in 2015 and was working in 2016, what's the big deal? The big deal is that if you tried to see if you could use it at all, you would get false information: ```js function indexedDBOk() { return "indexedDB" in window; } ``` This returned true on Safari, all of the functions did, and a bunch of them looked like they worked too, until they completely bugged out. So we couldn't use them until it was fixed, *and* because you can't reliably use features until the last two major versions of a browser support those feature and because Safari releases updates locked to OS updates, that means that it wasn't what most would consider "supported" until nearly 2018. That feature that every other browser had working since 2012 wasn't "working" until almost 2018, for Safari, and worse than that 6 year difference, they lied about it working. So you could spend 6 months working on a project, release your product, then get inundated with bad reviews because it didn't work for half the population with iPhones. And instead of improving your project, you have to either try to retrofit the base storage layer of your app, or build a new product based on a different tech. That's assuming you were lucky enough to have the runway to continue and not just have your project fail. They weren't just late, they lied and those lies harmed developers.
- 2y ago
- j16sdiz 2y agoSafari use open sourced webkit, just like Chrome use open sourced chromium.
- realusername 2y agoAs usual, there's supported and "supported" with Safari, nobody could build an IndexedDB app in 2014 supporting Safari, I've been there. It's only been really stable through the past 3 to 5 years max.