
Report Finds Performance of Web Apps Throttled on iOS Devices - minalecs
http://www.readwriteweb.com/archives/report_finds_performance_of_web_apps_throttled_on.php
======
geuis
No, this was NOT "The Register's discovery". This was originally discussed
here on HN last Friday, <http://news.ycombinator.com/item?id=2317804> by
marcusramberg, <http://news.ycombinator.com/user?id=marcusramberg>.

After replicating some of the tests, as I documented here
<http://news.ycombinator.com/item?id=2317975> in the comments, then here on my
site in full, [http://trending.us/2011/03/12/performance-numbers-for-
nitro-...](http://trending.us/2011/03/12/performance-numbers-for-nitro-
javascript-engine-in-ios-4-3/).

That was Friday. Then yesterday the author of the Register story, Cade Metz,
contacted me out of the blue about my blog post. I more or less told him (what
I imagine every developer he contacted about this story) was that Yes, it runs
slower in UIWebViews and that No, its not an Apple conspiracy, and that this
appears to be a bug that Apple is now aware of going by posts in the Developer
forums. I told Mr. Metz that if he can get into the dev forums, he can see for
himself, but that I could not directly provide links or anything because the
forums are confidential. I don't intend to lose my developer license, thank
you.

Then yesterday afternoon, the story was published. I was not referred to
directly (for which I am thankful), though perhaps one of his anonymous
sources was a paraphrasing of some of the things I said.

Now here we go again in the echo chamber that is the Valley, where
ReadWriteWeb is regurgitating a non-story published by The Register, that was
verified by me and others on our personal sites, that I (we?) heard about from
Hacker News, that was originally reported by someone else who first found the
problem.

Assuming marcusramberg was the original discoverer of the this, has he gotten
any credit? No.

Fucking mountains out of molehills.

------
bsaunder
So, here's the link to the actual referenced report:

[http://www.theregister.co.uk/2011/03/15/apple_ios_throttles_...](http://www.theregister.co.uk/2011/03/15/apple_ios_throttles_web_apps_on_home_screen/)

IMO, it doesn't add much to the discussion except for this nugget at the very
end of the article:

"This developer reiterates that if Apple didn't specifically introduce these
problems in iOS, it's aware of them now. _And he says that the Mobile Safari
team has indicated the issues will not be fixed._ "

~~~
rbarooah
Right, because Apple are generally in the habit of providing details of their
development plans to anonymous developers.

What does 'indicated' mean? Presumably not the same as 'said'.

------
rbarooah
Where 'throttled' means just as good as before.

Occam's razor suggests that they simply hadn't finished the integration work
before the ship date.

~~~
SigmundA
Exactly, UIWebView simply wasn't updated with the latest WebKit engine the
Safari app is running.

Web Clips use a special app wrapper that uses UIWebView, that is all.

This affects real apps that use UIWebView to display HTML content, which is a
lot of apps, including probably some of Apples own apps.

You would think UIWebView would share the same WebKit with Safari, but Apple
didn't do this, I doubt their reason are nefarious, probably just allows them
to try new stuff out in the browser while being more conservative for the
developer component.

~~~
dunham
I think it's the same UIWebKit. If you're willing to Jailbreak your device,
you could take a look at the files and find out.

The issue is that no apps other than MobileSafari can do JIT compilation, due
to security constraints put in place by the kernel. You can't write to a
segment of memory and later make it executable.

To pull this off with MobileSafari, I suspect that Apple put a back door in
the kernel, and requires apps to be signed with a specific entitlement to get
access to it. And I'm guessing that MobileSafari is the only app with this
permission.

For full screen web clips, it might be possible for Apple to give the wrapper
the right permissions without breaking their security model. Hopefully they do
this in the future. But I doubt that 3rd party native apps will ever be given
the ability to modify code.

~~~
semanticist
Sorry, managed to down vote instead of up vote - all the talk of Apple trying
to force people to make native apps is ignoring the key technical details you
mentioned.

------
th0ma5
A big part of me thinks that Apple doesn't quite get that both developers and
users both want the full capability of the device to be _theirs_ ... whilst
Apple still clings to the idea that they can control the line between device
and network.

~~~
martythemaniak
Well, Apple practically invented that concept in personal devices. Before the
iPhone sideloading apps and owning your device was the norm.

~~~
cooldeal
That doesn't mean Apple should get 30% of all money that flows by their
devices like Apple seems to think, enforced via DRM.

That'll be a bit like the ARPA/Vint Cerf asking 30% of all e-commerce revenue
that flows over the net and Tim Berners Lee for all things over HTTP traffic.
After all, they invented it, right?

Comcast spent the money to wire through the last mile, they feel they deserve
some of the money that Google, Amazon, Netflix are making, net neutrality
notwithstanding. Do you agree?

~~~
bradleyland
> That'll be a bit like the ARPA/Vint Cerf asking 30% of all e-commerce
> revenue that flows over the net and Tim Berners Lee for all things over HTTP
> traffic. After all, they invented it, right?

It was their decision to go open. Maybe not directly in both cases, and one
could argue that Time Berners-Lee didn't really know that what he started in
1980 would turn out to be the World Wide Web. He set out to solve a problem
that is tangential to the purpose of the WWW at large, but that's besides the
point.

There has never been shortage of companies who set out to create proprietary
network protocols and document creation/collaboration tools; and they did.
Many still exist today. The openness of TCP/IP and HTTP were prerequisites to
their widespread adoption. That is, the WWW we know today could not exist on
proprietary protocols because the very concept is built on layers of open
interchange. There are significant conceptual differences between networking
and computing platforms though. At least currently.

> Comcast spent the money to wire through the last mile, they feel they
> deserve some of the money that Google, Amazon, Netflix are making, net
> neutrality notwithstanding. Do you agree?

In order for any carrier to deliver to the last mile, they must obtain public
land-use rights (right-of-way and utility poles), and are therefore regulated
(and should be) to make sure they don't abuse public resources. I can create
an open competitor to any iOS device tomorrow without using limited public
resources. I cannot enter the carrier market without significant use of
limited public resources. There is no parallel here.

Apple created the iOS platform as a closed, proprietary, curated, walled
garden from the very beginning. Remember when you _couldn't_ build native iOS
apps? Yet this thread is opened with the argument that "developers and users
both want the full capability of the device to be theirs". I don't think you
can lump developers and users in as one. iOS devices are selling at a
startling rate _despite_ arguments that open is better. Stop and consider for
a moment that maybe we're the ones who are out of touch with what users want.
The numbers certainly appear to support that position.

The answer, in my mind, is not to bully Apple in to opening their platform.
Quite the contrary. So far, all the whining and complaining has done is push
Apple to open their platform "just enough". Just enough is figurative, because
by any literal measure Apple is killing it. They're making billions. The
answer is to leave Apple to their own devices and focus on your own solution.
If you believe Android is the solution, pick up a book on Android development
and get to work on apps that rock. Don't focus on killing iOS, focus on
killing period.

~~~
recoiledsnake
>Apple created the iOS platform as a closed, proprietary, curated, walled
garden from the very beginning.

What about this new rule about subscriptions then?

[http://www.washingtonpost.com/wp-
dyn/content/article/2011/02...](http://www.washingtonpost.com/wp-
dyn/content/article/2011/02/19/AR2011021902399.html)

[http://www.computerworld.com/s/article/9209580/Apple_s_new_A...](http://www.computerworld.com/s/article/9209580/Apple_s_new_App_Store_rules_affect_Amazon_s_Kindle)

>iOS devices are selling at a startling rate despite arguments that open is
better.Stop and consider for a moment that maybe we're the ones who are out of
touch with what users want. The numbers certainly appear to support that
position.

Same argument can be made about the Windows monopoly. After all, people seem
to buy it right?

How many users know about how and why Readability was rejected from the App
Store?

<http://blog.readability.com/2011/02/an-open-letter-to-apple/>

How many users know that the Reader feature in Safari was done using OSS
source code taken from Readability?

How many users know about Apple rejecting Pulitzer prize winning author's app?
How many users know about Apple rejected a magazine app because it was an
Android magazine?

However, the bigger failing is the failure to recognize these even among
technical people, most of whom seem to have something akin to devotion for
Apple. No wonder Gruber's posts are so popular here.

~~~
bradleyland
> What about this new rule about subscriptions then?

I think it sucks. I think it reflects a narcissistic view of the company and
their platform. I think it's bad for innovation on the iOS platform. I wrote
about it on my blog too [1], but so what? Users don't care about that either,
apparently.

Interesting that you'd say that about Gruber, because the majority of the time
I've seen his posts show up here, he gets lynched.

Please don't confuse my remarks with saying that Apple is "right" in any
greater sense than that they're making a lot of money. The problem is, users
aren't asking questions about what's right, but that's nothing new. If we want
an open platform to be widely accepted, it has to deliver what users want, not
what we (geeks) want, and it won't sell based on any higher "principles".

> However, the bigger failing is the failure to recognize these even among
> technical people, most of whom seem to have something akin to devotion for
> Apple.

You'll make as much headway fighting against this (devotion to a product) as
you will fighting religion. As one of the greatest marketers I ever met once
told me, "No one but schools and universities ever made any money trying to
teach a customer anything." His point is that buyers are just as self-centered
as Apple. They're not interested in being taught why they want something; they
want whatever scratches their itch. Some people are interested in what's
"right", but for most people, it never crosses their mind.

I also reject the notion that this is any sort of "failing" on the part of
someone who buys an Apple device. Business isn't always quid pro quo. I still
assert that Apple wears their intention on their sleeve. If you don't like
what they're doing, you shouldn't buy their products.

1 - [http://www.bradlanders.com/2011/02/21/its-not-greed-its-
narc...](http://www.bradlanders.com/2011/02/21/its-not-greed-its-narcissism/)

------
bengl3rt
They probably just forgot to rebuild the WebKit view built into the
Springboard that runs homescreen webapps with the new JS engine. I am sure
they will issue an update soon.

~~~
webXL
Is it possible that with multi-tasking, having two threads of the new Nitro JS
engine open in memory slows everything down? It's not that big of a deal with
512mb of RAM and dual core, but the iPad 1 could be sluggish. I guess it's
possible they only use one JS thread for everything (even the 9 "tabs" in
Safari), and this really is just a bug.

~~~
rahoulb
In another thread discussing this there was the suggestion that Nitro's JIT
compiler may need special privileges to mark writable memory as executable as
iOS doesn't allow that under normal circumstances.

Maybe that flag's been set for MobileSafari but not set for Springboard.

------
rektide
remember when Steve Jobs announced the iPhone, and said the only applications
for it would be web applications? [1] and how, across the next 5 months before
native apps were announced, people alternatively wondered how they were going
to possibly develop for it, or whether it was going to be a second genesis for
the web? yeah, good times.

[1] [http://www.engadget.com/2007/06/11/apple-announces-third-
par...](http://www.engadget.com/2007/06/11/apple-announces-third-party-
software-details-for-iphone/)

------
hexis
I think aside from whether this problem was intentionally created by Apple (I
don't think it was), I think it does show that Apple considers these web apps
to be second class citizens. Making sure the new JS engine worked for these
web apps apparently either was not on the list of things to test before
shipping 4.3 or it was something that was allowed to slip. Either way, web app
performance was not a release blocker for 4.3.

------
jaxn
I don't think users actually do this anyway.

I am running a twitter poll on how many web apps people have saved to their
iPhone: <http://twtpoll.com/r/g3bnth>

I have a pretty techy following and this just doesn't seem to be done with any
regularity. Maybe half of the people have saved at least one web app, but how
many native apps have they installed.

I think this tells us two things:

1) saving a web app doesn't really make it any better than just using that web
app in mobile safari.

2) apple has little incentive to prioritize the testing and developing of this
feature since so few people actually use it.

Seems like a non-issue to me.

~~~
SigmundA
This effects UIWebView which web apps, technically called web clips just so
happen to use.

However many normal apps use UIWebView to display HTML content. Any app you
use the jumps to a web page but stays in the app definitely does, some apps
you might not even know you're using HTML UI instead of Cocoa, the integration
is pretty tight, sometimes it simply easier to make parts of your UI in HTML
and embed as a resource and just point UIWebView to it.

So yes users use it all the time, but usually as part of a real app.

~~~
jaxn
Ahhh, I miseed the part about this affecting all UIWebView.

Though doesn't that really lend credence to the idea that this was an
oversight and not an intentional slight at web apps?

------
nathanwdavis
If this is a problem with the UIWebView in general, then the problem affects a
lot more than just saved Web Apps. Many, many native apps use the UIWebView.

~~~
Niten
But read the article. This specifically affects web apps run launched as
fullscreen applications from the iPhone home screen, as opposed to other
applications making use of UIWebView.

------
flashgordon
You know I would really like to see Gruber (and Siegler) defending this. yes
yes, "apple can do what it likes with its product" is a common retort, but it
would be refreshing to see a different one.

------
Relwal
This seems like a mighty convenient "bug" given that HTML frameworks like
jQuerry Mobile are just starting to be able to deliver a native-app-like user
experience.

