Hacker News new | ask | show | jobs
by hannob 3304 days ago
I saw this yesterday on twitter and my thought was "they don't support webrtc yet?!? seriously?"

It sometimes baffles me how apple is holding up progress on the web - and that they aren't criticized more for it.

4 comments

They're not holding up progress. They have different objectives, and chief among them is power efficiency. Chrome eats up a lot more battery life than Safari.[1] So did Flash (among other conflicts), and I think we all accept now that "holding that up" was good for the web in the long run.

Apple tends to take a little longer and suffer a little short-term pain to get it right in the long run.

[1] https://daringfireball.net/2017/05/safari_vs_chrome_on_the_m...

For all the leaps and bounds we saw being made by ARkit, Safari desktop still does not support typical 360 video due to a CORS non-compliance issue. Said issue has been submitted and known for two years.
Apple has absolutely kneecapped web technologies. Mobile Safari has simple, egregious bugs that have been open for years. We're talking about things like being able to crash the browser with CSS or file selection, etc. It's impossible to make the case that Apple is just rejecting features for the sake of the user. The next question is why, and you'll need some creativity to come up with any other answer than pointing to the monolithic, money printing app store.
Any input that can crash the browser is a potential security vulnerability. Can you point me to an example of an inpatched crash in Safari that has been "open for years"?
We'd super appreciate bug reports of reproducible crashes and we definitely try to look at them. Bugs welcome at http://bugs.webkit.org/
This is just mince. There are no long-standing crashes in Safari that "crash the browser with CSS or file selection". And from a purely anecdotal point of view, I've found it the least annoying browser to use by far.
I think you missed the Mobile part. Do a search for "Mobile Safari file selection crash" – that one minor but severe example was still happening as of earlier this year and for at least four years prior. Mmm, mince!
Posts like this genuinely confuse me.

If all Apple cared about was the App Store then why do they continue to hire WebKit engineers and build new features ? It would be easier just to fork WebKit, never add anything new and deliberately make it so unusable that everyone rushes to apps.

Sincerely, what's confusing about it? There is a massive monetary incentive toward native. I don't think it's any kind of top-down nefarious decision, but is probably an emergent quality based on priority.

I worked with a group of engineers full time for years around mobile/iOS, and we were pretty amazed at how severe but unaddressed these bugs were. The move to WKWebView was helpful, but still lacking. The app store parallel that you take issue with is an easy one to make when you contrast those failings against the talent and financial bandwidth of a company that size.

> Sincerely, what's confusing about it? There is a massive monetary incentive toward native.

No there's not. I'm a web developer so I'm pretty invested in the web platform, but even I can see how incredibly naive this assertion is. Native will always win due to just having more power and capabilities. Web will always be a step behind.

Never attribute to malice that which is adequately explained by apathy or lack of resources.

Did you read the next sentence after what you quoted?

Because Apple has always shaped so much of our development environment, it's easy to take these things as natural law. I'm assuming you're a younger developer based on your assertions – I would probably even agree with those suppositions based on the tone of posts like mine that seem anti-Apple. But the history of these technologies is glaring, and native/web/hybrid apps have never been given equal footing.

Nothing you said refutes a financial incentive in the app store, and most apps don't need "more power and capabilities", they need access to a basic API that isn't randomly crippled.

If you care about this subject, read about the history of UIWebView, WKWebView and hybrid apps, you will see how uniquely broken the platform is. Android doesn't suffer the same problems for a host of reasons, but that makes sense given Google's incentive for web. Hybrid and web apps are then not terribly appealing since they're only effective on one platform, so the ecosystem stagnates.

Here's a post I saw a few days ago, by coincidence: https://hackernoon.com/if-it-werent-for-apple-hybrid-app-dev...

As long as we get there eventually, I will always side with taking the time to do it right. There is room in the world for both a highly advanced browser, with the sacrifices that come with that, and a workhorse. Nothing is stopping you from having them both installed (except, well, on iOS).
> Nothing is stopping you from having them both installed

Sure, but it stops your site from working cross-browser.

Even with both installed on iOS WebRTC doesn't work
Maybe you were still in middle school but there was a time when the web was dead and IE killed it. Mozilla and Apple resurrected the web.

Apple famously refused to allow Flash on iOS and in doing so single-handedly did more to push HTML5 standards than anyone else. I'll also point out that WebRTC has gone through numerous iterations to such a degree that a lot of WebRTC sites don't work with Safari 11 because they're using old non-standards-compliant variants of the API.

The typical HN web dev seems to load their site in Chrome, click around a bit, and call it a day. That's not healthy for standards or the web, but it sure is lazy and expedient for a very narrow group of people.

Chrome is not the web.

I agree in essence, and I personally hate how they tend to handicap mobile Safari, but the recent announcement of WebRTC and WebAssembly support (including mobile!) means they're catching up fast, and maybe changing their approach to web technology.
I believe that’s a short-sighted view. The past year or so, the Safari/WebKit teams have been killin’ it. I use Mobile Safari a lot each day and I can tell you it’s not handicapped.
I'm curious if you do Mobile Safari development, however.

I don't believe it's a short-sighted view. I think it's quite the opposite; my opinion comes from from spending years doing (web) development for it.

Their focus has always been on things that matter little (they were by far the first to implement `backdrop-filter`) while still keeping important things severely broken (as `position: fixed`) and messing with things that should work in a pretty obvious manner anywhere else (like overflow scrolling).

WebAssembly and WebRTC are the opposite of it. "Last year or so", maybe, but it'll take more than one year of good work for me to look at the team at a good light.