As an Android user, I can assure you the android facebook app is just as bad, if not worse. It seems the cross platfom support allows the same horrible issues to exist on all devices. For example I see the same buggy timeline [1] that he shows, on an almost daily basis.<p>I'm sure FB could increase their engagement by having a better mobile app. Often I want to see what my friends are up to, but just give up in frustration after waiting literally minutes for the timeline to display. I guess with such a large market share, they see no need to improve.<p>[1] - <a href="http://blog.mobtest.com/wp-content/uploads/2012/05/facebook-buggy-timeline-200x300.png" rel="nofollow">http://blog.mobtest.com/wp-content/uploads/2012/05/facebook-...</a>
Wait, the Facebook app is bad? I honestly hadn't noticed these nitpicks until I read the article, and even now they don't really bother me. I'm convinced that the only people who can tell and even care about the performance difference between Path and Facebook's native apps are software developers. My wife was using the web version of Facebook's mobile app for months before she discovered she could download the app, and she's never complained about either.<p>If I'm right and most people don't care, then it's a huge win to mix in HTML when convenient for the same reasons mentioned in the very article this thread is linked to that's lambasting Facebook's app.
Lets cast our minds back to when Heelys were popular and iOS had opened the app store, everyone collectively held their breath for the Facebook app. And it was good. In fact it was a shining light of why native apps were so good, it was smooth and fluid. There was bugs, it was a new thing without a lot of time in the field but they improved with every version.<p>Skip forward 3 years and remove Joe Hewitt, in an attempt to simply their development portfolio the Facebook app is everything it shouldn't be. It's slow, it's glitchy, occasionally when you tap something it'll decide that you've requested something completely different. At the end of the day a company needs to simplify development eventually, but not at the expense of crippling their application.
Although I agree with the Facebook App sucking (and seeming to get worse and worse), I do feel like the article is a bit misguided. I don't give 100% blame to UIWebView and no-Nitro simply because the entire way Facebook has developed the mobile app has been hacky and misguided.<p>The code itself is poorly designed, the API's are all over the place, there are inconsistencies everywhere and the performance is clearly lacking. On the flip side, take a loop at the LinkedIn app for iPhone. It's super slick, easy to use but still has a ton of features and the performance is far better. Yes, it's not as slick as Path but its miles ahead of the Facebook app.<p>So if I were Facebook, I'd rely a bit less on the 100% platform agnostic approach, take it back a bit and build the things that make sense cross-platform with HTML and build the parts separately that make sense to build using native code. This approach to me accomplishes much of the same cross platform success without creating such a crappy and laggy app.
The question is: why even bother, when they have the mobile HTML version?<p>Probably just to cross a bullet point somewhere. Still, with their warchest, they could easily dump money on a small company and get it over with. At least something basic, but usable.<p>Say, timeline plus chat.
I have always assumed they don't put the time/engineering into the mobile apps because it is much harder to monetize. Where do you stick the ads so that they don't completely ruin the experience? Nowhere, that's where. Why provide an app that draws people away from your web app (the one covered in ads) when you can frustrate them and keep them where you can monetize?
Some relevant interesting threads on reddit by the devs for Facebook for Android<p><a href="http://www.reddit.com/r/Android/comments/h7nx1/we_are_the_dev_team_for_facebook_for_android_help/" rel="nofollow">http://www.reddit.com/r/Android/comments/h7nx1/we_are_the_de...</a><p><a href="http://www.reddit.com/r/Android/comments/n5my6/we_are_the_dev_team_for_facebook_for_android_help/" rel="nofollow">http://www.reddit.com/r/Android/comments/n5my6/we_are_the_de...</a>
"there are no other iOS FB apps out there" is completely wrong actually, there are tons of alternative Facebook apps. Most were created mainly because of Facebooks' long delay in creating the iPad app. However, they're all worse than the official app though.
I was always under the impression that the delay in push notifications (which you also see with Twitter for iOS, even in the Tweetie era) was a result of NoSQL databases used for notification points. I know Facebook is MySQL, but it would make sense that they might use a non-traditional database for push points.
Nitro is available in UIWebViews now.<p><a href="http://www.theprintlabs.com/with-ios5-the-faster-nitro-javascript-engine-comes-to-the-uiwebview-used-in-html5-magazines/" rel="nofollow">http://www.theprintlabs.com/with-ios5-the-faster-nitro-javas...</a>
<a href="http://www.readwriteweb.com/archives/redux_how_facebook_mobile_was_designed_to_write_once_run.php" rel="nofollow">http://www.readwriteweb.com/archives/redux_how_facebook_mobi...</a><p>This was how app was designed. With so many technologies involved things are bound to go wrong