W3C home > Mailing lists > Public > www-style@w3.org > November 2012

Re: Request for Comments: Proposal for Touch-Based Animation Scrubbing

From: Tobie Langel <tobie@fb.com>
Date: Fri, 30 Nov 2012 15:12:10 +0000
To: Dean Jackson <dino@apple.com>, "Tab Atkins Jr." <jackalmage@gmail.com>
CC: Simon Fraser <smfr@me.com>, Rik Cabanier <cabanier@gmail.com>, "www-style list" <www-style@w3.org>
Message-ID: <F9981AFB970564408FEB7DFCF62D4408436C29F8@PRN-MBX01-4.TheFacebook.com>
On 11/30/12 1:13 PM, "Dean Jackson" <dino@apple.com> wrote:

>But mostly, I really don't think this is important to the Web and
>the CSS community right now. We're having to conduct polls of the CSS WG
>members to decide which small subset of the huge amount of work that
>needs to be done will actually get any attention. Is this more important
>than everything we won't get to?
>
>I'd like this group to focus on
>
>(a) things that can't be done but are necessary/highly-desired (responsive
>    gradients is a good example), or
>(b) fixing the existing things that people are using
>
>Compare your proposal to the position:sticky one. This is something
>related
>to scrolling that was addressing a clear need and helped both users and
>developers.

We haven't looked at the proposal deeply enough to see if it a proper fit
for the use cases we (Facebook) are mostly interested in (momentum and
infinite scrolling on touch devices), nor whether it is indeed the most
appropriate solution. However, I would like to react to your statement
that solving these use cases is not important for the Web and the CSS
community right now.

Momentum scrolling is a key part of the user experience on touch devices,
in both native and web applications. Internal experiments we carried out
show a direct correlation between smoothness of scrolling and user
engagement. Not only did users who suffered a degraded scrolling
experience engage less with the app during the experiment. Once the
experiment was finished and their scrolling performance re-established, it
took weeks for them to get back to their initial engagement levels.

Poor scrolling performance is the first stated reasons why we
reimplemented our iOS app to use native technology rather than embedded
Web views[1]:

    "One of the biggest advantages we've gained from building on
     native iOS has been the ability to make the app fast. Now,
     when you scroll through your news feed on the new Facebook
     for iOS, you'll notice that it feels much faster than
     before."

Not surprisingly, it is one of the key issues I mentioned in my email to
the Coremob mailing list[2].

The performance enhancements made to our mobile app improved our App Store
rating from 1.5 stars to 4 stars in three weeks, with user engagement
approximately doubling[3]. While a number of perf issues were improved in
that release, scrolling performance (while browsing the feed) is
prominently mentioned in that article:

    "But until the relaunch, the HTML5 slowness of launching
     the native iOS app, browsing the feed, and viewing photos
     was dragging down its review []"

Currently, the lack of events on which to prefetch and append new content
while scrolling makes it impossible to implement infinite scrolling
without re-implementing everything in JavaScript. Other UI refinements
(pull to refresh, etc.) suffer from similar issues. Re-implementing
scrolling in JavaScript prevents the browsers from carrying adequate perf
optimization, yields sub-optimal experiences for the users and is
extremely costly in engineering resources.


This is why I applaud this effort and hope it will help enable the smooth
scrolling experience users have come to expect on touch devices.

Sorry for the sales pitch, folks, but this is important. Please bump it up
your priority lists. :)

--tobie

---
[1]: 
https://www.facebook.com/notes/facebook-engineering/under-the-hood-rebuildi
ng-facebook-for-ios/10151036091753920
[2]: http://lists.w3.org/Archives/Public/public-coremob/2012Sep/0021.html
[3]: http://techcrunch.com/2012/09/13/facebook-for-ios-review/
Received on Friday, 30 November 2012 15:12:47 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:21:03 GMT