22 comments

[ 6.6 ms ] story [ 114 ms ] thread
Interesting, but it seems to ignore that there is quite a stiff competitor in Android, yet Apple users are not exactly jealous of their Android toting friends. No killer apps taking advantage of next generation html5 APIs. That's the real problem in my opinion. When that changes, then Apple will follow suit.
One doesn't put the effort into building a website if it will only work on Android: you sigh and use a framework like Cordova that provides not even just the same functionality across platforms but with a consistent API, which you then compile into two applications. Even if all Apple did was support their own web push notification system from Mac OS X on iOS I imagine you would see many many more web apps instead of native apps.
Ah, yes, the web - the platform of tomorrow, but never today. I personally don't like the idea of running insecure/inefficient code, which is the current web situation. Web developers can change the code at any time without me knowing. Why must I agree to allow random code to run on my device?
To say that a company with 13% (down from 16%) market share is holding an entire industry back is laughable on it's face. The thing holding web apps back from widespread adoption is the fact that web apps are by and large awful to use, slow, and completely 100% dependent on your Internet connection at all times by their very nature.

I have a strong feeling the future is indeed in web apps, but first they need to stop inventing a Shiny New Thing every 2 months and actually fix some of the crap out there now, and then we need a stable Internet infrastructure upon which to rely on.

Edit: Thought of this later on, ironically enough the only machine I will use any web apps on (and have to actually) is my Macbook, seems to be the only one that can run them in a pleasant way.

(comment deleted)
Security is completely ignored here. Is a web app controlling your microphone or camera a Good Thing? Maybe yes, maybe no.
In what way? As with the microphone and GPS, chrome prompts the user with whether they want to give the website access.

I could see a need to be able to run a web app in a sandbox mode though, where it has only ephemeral access to storage and no access to the Internet.

Good. The web is for documents.

Please keep apps away from it.

That ship sailed a decade ago.
I'm starting to be pessimistic on iOS. At first there was so much innovation in games but now developers are finding it hard to deliver compelling non-freemium games with buyers not willing to pay much money up front. Infinity blade didn't usher in a whole generation of AAA games. The nvidia shield looks like it's doing a better job of that. And doing some web development now, I'm really annoyed by ios lack of microphone support in webkit.
Apple has to maintain a balance. High iPhone sales times high margins per phone are the future of Apple for years to come. Their other businesses, large as they are, are mere sideshows for now at Apple, because of the outsized success of iPhone. The only competition to iPhone now is Android, and Android margins are generally dismal. Apple has to somehow hold out against that competition without resorting to lowering their own margins, and the only thing that makes that possible is a reputation for being "so much better".

The Web's importance as a platform is high, so the reputation of iPhone as a Web client is part of the reputation that supports iPhone's excess margins (over Android). They must maintain that reputation in the general consumer market. Consumers have a sense of what the Web currently can do (things based on older features), and iOS Safari needs to be rock solid at supporting that, but it doesn't have to support things the Web could potentially do as long as the market isn't even aware of that potential.

And how would they be? We developers won't build anything that won't work in an iPhone. Apple knows that, and they put their what could be done mojo into their native APIs, showing off how much better it is than the limited features of the Web. And Safari can limit what people think is possible on the Web as a whole by limiting browser capabilities on iOS, confident that developers wouldn't dare use any Web feature that wouldn't work on iOS.

But if developers started building things at the margin that had more powers on an Android phone than on iOS without committing business suicide, the perception in the market could begin to be affected: "Android browsers support all of our features, and iOS users can either use the features supported by Safari or download our native app from the App Store to get full support for all the features [...that Android users get automatically from a better browser...].

After seeing a couple of those messages, the mainstream media might start picking up the sense that iOS Safari is not delivering on the full potential of the Web and spread the word, which Apple would have to counteract.

Of course, for this "counteraction" to come in the form of additional feature support in Safari, Chrome browsers on Android really would have to be better, and there is some reason to believe that they aren't yet. In other words, maybe they "support" more features than Safari but the features they "support" don't work very well. In that case, it would make sense for Apple to fight back using their own Web apps demonstrating (on stage) the "superiority of iPhone for the Web" instead of improving Safari.

But if Chrome could get its act together and developers would push the edges of features that were supported everywhere on the Web but iPhone (and required native in iPhone), it could cause enough of a change in perception in the market to get Apple to incorporate more Web features into Safari, enabling the whole Web platform to move forward.

Just as market changes forced MS to initially create a great browser to compete with Netscape for "best Web support", then let them use later versions of IE to put their foot on the brake, and then were forced to let go of the brake and compete again, the same market forces seem to be driving Safari and can be used to get Apple to get off the brake and back onto the accelerator.

What if I told you there was a valid technical reason not to allow alternate browsers on iOS?

If you're on a Mac, paste this into Terminal:

    find /Applications/ -perm +111 -type f |while read fname; do otool -L "$fname" | grep WebKit && echo "$fname"; done
With those results in mind (500 binaries for me, if you're not in the habit of blindly pasting things into terminal), ask yourself the following questions:

1. What percentage of these vendors do I trust to rapidly respond to zero-day attacks in their embedded browsing engine?

2. What percentage of these applications have I updated in the last year?

3. What percentage of these vendors do I want to grant the authority to download arbitrary untrusted internet code, compile it to machine code, and jump to it? This is what all modern JS engines do, and (other than system WebKit) absolutely forbidden on iOS.

4. Given that applications can ship "homegrown" WebKit on OSX, what percentage of programs I have installed actually do so, instead of linking /System/Library/WebKit.framework? And what does that say about the real demand for special browsing engines?

Every rant I read about how "the web is in bad shape" jumps straight into conspiracy theories about Apple the monopolist (somehow with 30% US marketshare) without solving, addressing, or even mentioning the actual technical issues.

If you're a person who does not like the way things are going, you should A) talk to people on the other team to discover what is the real, legitimate, technical concern behind our position, and B) work with us on finding solutions to that issue, and C) go out for beer afterward.

Characterizing Apple as some villain "locking up untold billions in economic value" for prioritizing security over software freedom accomplishes nothing beyond creating animosity between engineers who share many of the same goals.

This is the correct answer. Whereas Android is a malware cesspool and 0-days are de rigour on general purpose machines, Apple's managed to have about as secure an ecosystem as you can hope to get to (bugs happen. architecture is what matters)

If we want common people to use their devices and not get ransomware'd to death, the iOS model is the way to do it.

What if Microsoft had "valid technical reasons" not to allow any other browser on windows besides IE? Villains? Heroes?
The situation with Microsoft in the 90s was substantially different. Go read all of https://www.justice.gov/atr/us-v-microsoft-courts-findings-f..., but here's a random paragraph:

> 35. Microsoft possesses a dominant, persistent, and increasing share of the world- wide market for Intel-compatible PC operating systems. Every year for the last decade, Microsoft's share of the market for Intel-compatible PC operating systems has stood above ninety percent. For the last couple of years the figure has been at least ninety-five percent, and analysts project that the share will climb even higher over the next few years.

Other than the surface similarity that they both involve browsers, the situation in that order and the present day could not be more different.

Thanks for the link. I only see two different approaches to the same goal.
It appears these restrictions haven't done a great deal to stave off exploits.

http://venturebeat.com/2015/12/31/software-with-the-most-vul...

The citation doesn't shed any light on whether the restrictions have been effective.

It does shed light on Darwin having more overall vulnerabilities than Linux and less overall than MS, but unless you believe that browser policy specifically dominates These figures, (and can support that view) the overall vulnerability count is not relevant to browser policy.

Also wanted to come back and note that this data doesn't indicate whether bugs were found and patched internally, or were actually exposed first by malware.

I was wrong to make a judgement on it.

I don't mind being stuck with WebKit, but what I do mind is being hold back by limiting browser features and not implementing APIs that other engines already provide for a long time. Currently our biggest issue is not being allowed to play videos inline on a page. But the missing Fullscreen API also costs us additional development time.
Sounds like safari on iOS is the new internet explorer.
Really just Safari in general.

Apple has show some progress lately though so I'm just hoping that they were caught sleeping with the forking of Blink.