Facebook is a really, really popular app. They cannot get away with good effort alone. They must make their mobile app flawless and reliable, because if only a couple of users out of hundreds of millions publicly criticize their app, this hurts their reputation badly.
I do not agree with what most people are saying. HTML5, CSS, Javascript are already good enough standards for 99% of all apps.
The real problem lies with the popular mobile browsers. Anybody who ever tried developing a rich interface for Mobile Safari and for Android knows just how bad things are - and some people think having to support IExplorer 6 was painful.
Also, at least on iOS, the browser has better performance than a WebUI embedded in an app. From what I know the web component doesn't use the same Javascript engine for instance. Also, not sure if this changed, but on iOS 4 you couldn't upload files from the mobile browser (file fields in forms were deactivated). You also couldn't automatically place the focus on a form field, to force the keyboard to pop, because you couldn't trigger any mouse/keyboard event other than in response to a physical user action (I think this was a problem with mobile WebKit in general). And I also experienced many problems with Android's browser. I can't even remember all of them.
I believe webkit (either in safari or UIWebView) should be able to run JIT, while your custom engine can't.
Vehemently disagree. I know very few apps that are flawless and reliable, including Apple's native apps. A couple of users have already publicly criticized the app for YEARS now and it hasn't hurt their reputation to the point where they are losing users. Facebook has power because of the network effect. People are willing to deal with a flawed experience as long as the network effect is left in tact. Facebook will need to worry about a flawless app experience when the network effect diminishes.
What I don't get is why facebook has to be an app at all. If you build it as a purely browser-based app, you can get better performance than running it in a UIWebView, and updates can be pushed out without anyone's permission. With HTML5 app cache you can get the "instant launch" experience that a native app gives you. For interacting with the camera they could have used a helper app.
Why are people so desperate to put their free non-ad-supported apps in apple's app store? It doesn't make any sense to me. I recently built an offline web app using sencha touch, and it works great. No install necessary, just "add to homescreen".
Apps get notifications.
Apple, Google and Amazon are years ahead of Facebook at this point and they have a tremendous upper hand right now. I don't see how Facebook can continue their growth in the current post-PC world. They've basically peaked at this point with their facebook.com site, and for future growth my bet is that they'll start growing through acquisitions. Sounds like yahoo.com to me.
I don't. Absolutely not. I have a confidence HTML5 will fail in the end.
> Hardware gets better at a rapid rate
Moore's Law is about to over. We have no free lunch anymore. The next Intel CPU (Haswell) gets only 10% performance improvement at the same clock.
And don't you hear our consumers complaining the battery life and the heat problem of their mobile devices? Things become worse on the coming wearable computers.
I can't understand why HTML/CSS/JavaScript advocates are so optimistic about this point. And looks like people completely forgot the buzzword of a decade ago, "green computing".
My simple question is, "Are you really a SOFTWARE engineer?" HARDWARE engineers will solve the problem. Hah!
> HTML5 (CSS, Javascript, etc) is still improving.
Yeah, at a deadly slow speed. There are many critical bugs which has been stuck for several years. I'm tired to wait them fixed. Apparently web standards became too complex and about to collapse. Many programmers completely forgot the KISS principle. Very sad.
When is the end? What will replace it in the browser? Will people stop using browsers? Why do you have confidence other than things are not perfect now?
>optimistic
Being optimistic makes people want to solve problems. Being pessimistic makes people think defeat is 100% likely so they never try to solve anything.
Our games already work very well in HTML5. They "work" on an iPad 3, but we still make native versions because the technology we use, Monkey, allows us to very painlessly do so.
On desktop, Chrome, Firefox, and IE all run the games perfectly on a now 4 year old computer build.
I'm not betting everything on HTML5 but to me it already is succeeding and I am confident that consumers will drive demand for it, vendors will produce and release devices which support it. Even if Apple, or the other big sellers don't support it there will be those who do and the great support will sell units and make anyone who doesn't support it well look bad.
Hardware is only improving as fast the vendors see a need to. If the ARM chips in a smartphone suffice for say 90% of the games produce on a iPhone, why on earth increase it's power? We all know (hopefully by now) that the HTML5 spec chews through CPU, especially when called in parallel requests. It's not advantageous for Apple to optimize the HTML5 spec, otherwise it decreases lock-in.
Also, this is the same argument that happened in the 90's with desktop/laptops and only really has progressed now with the existence of modern browsers. The only way that this was possible was when telecommunication infrastructure was able to support always connected devices, which the late 90's and early 2000's has proven. We are almost there, but considering 3G (4G, LTE, or whatever) is still not 100% reliable, I don't see this happening anytime soon. I really think we are less "connected" (technologically speaking) than the general public gives us credit for.
http://blogs.msdn.com/b/ie/archive/2012/06/13/advances-in-ja...
You can verify that this is correct by looking at any benchmark.
There are people working on changing that, for what it's worth.
Disclaimer: I wrote Blossom.
Blossom sounds pretty neat!
You say HTML5 could deliver a unified UX. I disagree. If the problem is the need for unified visual environments then HTML5 is the wrong answer to this problem - CSS is more close to the answer. HTML5 was supposed to be that kick-ass solution for delivering a more robust development platform for the web that could reduce the need for third-party plugins like Flash or Silverlight.
I won't argue that what HTML5 has achieved is no small step. But I wouldn't have high hopes of it ever manage to compare head-to-head with a native app, no matter how mature it would become-and that last part takes a lot of argument since evolution of HTML takes ages.
Me too, I never said that. I said that, using Yahoo Mail as an example, users are willing to sacrifice some integrational purity when ease-of-use and portability are so compelling. Today that balance hasn't been tipped on mobile. I'm willing to bet it will be, eventually.
Could you explain why?
You seem to think Twitter has a strong reliability record.
No-one cares if vital utility x is working. It's not like they are texting their friends, about x being 'up'.
But if you take away x, often it highlights just how important it was, and it becomes relevant to them.
It reminds them just how much x, means to them.
Then, if x reacts to the adversity in a crowd pleasing way... instant karma and mindshare.
cf. new coke as well.
(speaking from experience in the hosting industry)