9 ms·
As others have been pointing out feverishly on Twitter: the problem wasn't them betting too much on HTML5. Their problem was developing piece of shit apps that
by Pewpewarrows 14y ago
As others have been pointing out feverishly on Twitter: the problem wasn't them betting too much on HTML5. Their problem was developing piece of shit apps that happened to use HTML5. They tasked amateurs who didn't know what they were doing into building a hybrid native app container which in turn embedded HTML5 content. Plenty of other developers (Instagram and LinkedIn come to mind) have figured out how to do that right, and in a way where it is seamless to the end user and for all intents and purposes feels exactly the same as a native app.
I'm not saying that it's an easy problem. You have to find the right balance between which components should be native or not. It's clear from the other problems that Facebook's been able to solve that they know how to hire top-notch developers. They just failed to do so for their mobile efforts, which just reinforces the stereotype that they don't "get" mobile.
- baddox 14y agoWhere does the Instagram app use web views and/or HTML 5?
- batgaijin 14y agoBut why did Facebook get away with it for so long?
- gavinlynch 14y agoBecause people really, really like Facebook apparently...
- flyt 14y agohttp://www.quora.com/Facebook-Engineering/Why-does-Facebook-not-need-to-produce-particularly-high-quality-software/answer/Evan-Priestley http://www.quora.com/Facebook-Engineering/Why-does-Facebook-... Why does Facebook not need to produce particularly high-quality software? By paying less attention to quality, Facebook has been able to focus on other things, like making the company a fun place to work at that can attract and retain talented engineers. Facebook would probably be less fun if it cared more about quality. Facebook's product is a website, so it can fix things quickly. It has a process which permits rapid deployment of new code, and rapid rollback of buggy changes. This reduces the cost of recovering from bugs. Facebook's product has a lot of momentum and lock-in. The barrier for users or businesses to move off Facebook is very high. This gives Facebook a wider margin of error to ship glitchy software. If Google was broken for a day, you'd probably go to Bing and might not come back. If your iPhone pissed you off all the time, you'd probably buy an Android when you're faced with the decision in a year or two. If you can't order something on Amazon, you can order it from somewhere else. If Facebook is broken, you keep coming back until it works again.
- EvanKelly 14y agoI'm not sure I 100% buy into the first statement. Why are fun place to work and quality products mutually exclusive? I'd say that Facebook's acquisition of top talent has much more to do with them having huge pre-IPO monetary incentive and less to do with being a "fun place to work".
- TylerE 14y agoBecause quality either means writing tons of test code, or having lots of process and manual regression checks. Any impediment to shipping code makes things less fun for many developers.
- batista 14y ago>* Why are fun place to work and quality products mutually exclusive?* Because "fun place to work" obviously means beer and bongs passing around, in-office swimming pool, bikini models, pool and air-hockey tables, and Futurama watching marathons. Which doesn't result in the highest quality products, if any products at all.
- eli 14y agoIs that really what's it's like, or is that just what it looked like in a movie about its early days?
- chii 14y agoOr would you rather work at a place where every little change you want to make needs to be "approved", and any new ideas you wanted to try needs to be checked off by a manager, who may or may not want it implemented depending on the political situation?
- kelnos 14y agoNo, because "fun place to work" means your #1 focus on building new features and getting them out to users as quickly as possible. Building quality products means the tedium of writing test suites larger than the rest of the code base, fixing them when they fail, and a sometimes-lengthy review process before pushing things to prod. Not saying the stuff associated with quality is bad -- quite the opposite -- but (at least to me) that part isn't particularly fun.
- ajross 14y agoOr they simply don't prioritize mobile. As has been extensively documented, they make virtually no revenue off of mobile use and see no easy way to improve that situation in the future. They're stuck in a situation where a great mobile experience is a near-term harm to revenue.
- cgil 14y agoThat doesn't seem right. Facebook has an increasing user base focused on mobile, their main priority for the moment has to be monetizing mobile. It's not a simple solution but it's a long standing problem that they've recognized. Mark Zuckerberg notes the huge potential in revenue from mobile here: http://techcrunch.com/2012/09/11/zuckerberg-says-on-mobile-we-are-going-to-make-a-lot-more-money-than-on-desktop/ http://techcrunch.com/2012/09/11/zuckerberg-says-on-mobile-w...
- ajross 14y agoI don't think those arguments contradict. I'm saying that in the short term, more mobile users means less money for the simple reason that mobile users aren't checking Farmville or reading ads. Zuckerberg might note a "potential" for revenue in mobile but he's not getting any today. (Quick google turned up this link to that effect, there are lots of stories like this: http://www.forbes.com/sites/greatspeculations/2012/07/27/facebook-struggles-with-monetizing-its-mobile-users/ http://www.forbes.com/sites/greatspeculations/2012/07/27/fac...) So in the short term, a better mobile experience hurts, not helps, FB's bottom line. So they'll likely be looking at spending their development resources elsewhere.
- sil3ntmac 14y agoYes, yes, a million times yes. Facebook is very resource intensive (in terms of data+media loading over the wire) but there are certainly ways to work around this. Yahoo mail's mobile site (at least on my iPhone 4 with ios5) is a good example of this. The main problem with HTML5 media apps today is that they must be developed with a primary focus on optimization from the start. This is unfortunate, and will hopefully change, but it is possible. But seriously, saying "HTML5 failed you" when you don't even compile your scripts and initial resources to require a minimal amount of requests is just ludicrous. To clarify: I'm not saying that facebook's HTML5 developers can't hold their own -- they produced a great looking mobile app with a truckload of functionality (and believe me, I understand code bloat). Maybe someday it will run flawlessly on mobile. But right now to produce a nice experience in HTML5 you must optimize from the start. Run your code on the device from day 1, not in Chrome with the vertical web inspector! Host your scripts on dev servers with artificial lag. Figure out what's slowing you down on day 1 and work around it! And one day you won't have to :)
- batista 14y ago>Yahoo mail's mobile site (at least on my iPhone 4 with ios5) is a good example of this. An app which all of 50 people use --and many of them curse while doing it.
- TallGuyShort 14y agoOn the Kindle Fire (and my Android phone) at least, their mail app puts most others to shame. It's one thing they've done extremely well.
- rodion_89 14y agoAccording to comScore, Yahoo Mail is the third largest mail provider with over 300 million users. Kicker: > in the U.S., Yahoo is No. 1, with 96.6 million active users http://news.cnet.com/8301-13772_3-20114975-52/microsoft-aiming-to-clean-up-hotmail-users-inboxes/ http://news.cnet.com/8301-13772_3-20114975-52/microsoft-aimi...
- arrowgunz 14y ago
- antirez 14y agoI think your reasoning is flawed here, what is in the good side of HTML5 to develop a mobile app for Facebook, even assuming good HTML5 developers VS good iOS/Android developers? HTML5 is not faster to develop in environments like iOS that provide good API and tools, and the stuff you can't do in HTML5, you have to find a glue between the native side and HTML5 that is non optimal. So anyway, if you put X efforts, the native app will always win, because it can do all the stuff the HTML5 app can do, but also more, faster, without intermediate layers, in a more native way and with more native look & feel. Without to mention that for Facebook to use 2x resources to develop the application would be not an issue. The current Facebook app, if developed by competent guys, is a 3 months project by 2 people, per platform. A joke for FB. (Note: I'm talking only about the app itself, not the backend that is an invariant).
- Pewpewarrows 14y agoExcept that, once you're done developing a hybrid app, you now have a giant chunk of reusable code. Facebook simultaneously supports several different platforms (normal website, mobile website, iOS app, Android app, Windows Phone app, Blackberry app, etc). Any amount of code reuse is a huge win when you're trying to maintain feature parity in many different directions.
- cameronh90 14y agoHow re-usable is it really? The bulk of the work is being done at the server in this case, and the app is mostly UI code. UI code is very platform dependant. I think that HTML5 is probably the future, particularly if things like Firefox OS take off, and it's probably fine for a MVP mobile app (possibly combined with something like PhoneGap). Currently though, native apps definitely provide a better experience, and you should probably do it if you have the resources... and this is from someone who really enjoys web dev and dislikes iOS dev.
- markmm 14y ago+1 The whole reusability thing is a red herring, it's like the whole Java run anywhere thing, it might save you duplicating UI code but the apps will look crap and run like a dog.
- tptacek 14y agoJoe Hewitt isn't an amateur.
- teej 14y agoNo one said that. Everything post-Joe Hewitt and pre 5.0 was amateur.
- tptacek 14y agoThey tasked amateurs who didn't know what they were doing into building a hybrid native app container which in turn embedded HTML5 content. Am I wrong that this basic design is Hewitt's?
- teej 14y agoI can't speak for him, but I do believe that was his vision for the future. However, what he shipped (Facebook 3.0) was native. He was long off the product before the frankenstein HTML5/Native Facebook app shipped.
- tptacek 14y agoGotcha. Thanks for correcting me.
- wsc981 14y agoYou might have been right about his vision for the future of the Facebook app. I do recall a blog post by Joe in which he mentioned something like that he didn't like developing native apps for iOS anymore due to certain policies by Apple. A relevant news item here: http://techcrunch.com/2009/11/11/joe-hewitt-developer-of-facebooks-massively-popular-iphone-app-quits-the-project/ http://techcrunch.com/2009/11/11/joe-hewitt-developer-of-fac...
- melling 14y agoHow can you make your HTML5 code as fast as native? Apple provides great tools to help developers optimize native apps because there are times when native needs to be tuned. Maybe HTML5 can be good enough for some apps, but if you're competing to win, I'd suggest that you offer the very best app for each platform.
- wickedchicken 14y ago> How can you make your HTML5 code as fast as native? https://developers.google.com/native-client/ https://developers.google.com/native-client/
- asadotzler 14y agoNative Client apps are no more HTML5 than Flash is HTML5.
- willvarfar 14y agoThe key thing is that FB when the HTML5 route because they wanted to side-step Apple's signing process. They wanted to roll out updates on the server that downloaded to them without redistributing the app. HTML5 webviews helped them do this, and worked on both android and iOS. NaCL would, like java applets vs java apps, or flash, have let them do this too.
- JoachimSchipper 14y agoLots of fetch-stuff-from-the-network-and-show-it apps spend 99% of their time waiting on the network anyway; optimizing the last 1% isn't really worthwhile. (Of course, this depends heavily on the app.)
- emehrkay 14y agoYeah they could had focused on a mobile-first mobile site, but to be fair, if they didnt make the iso app how were they going to get a copy of your address book?
- fragsworth 14y agoMaybe amateurs got assigned to it because it's hard right now to find HTML5 pros. And the problem is then HTML5.
- Evbn 14y agoLnkedin's fancy HTML5 mobile website sits and fails at the spinner on the splash page when I view on Android. That is one of the main reasons I gave up on LinkedIn. Hat and its devolvement into a sourcer spam haven
- thekingshorses 14y agoLinkedin's android app is 85% native and only 15% HTML5 :(
- goggles99 14y agothe problem wasn't them betting too much on HTML5. Their problem was developing piece of shit apps that happened to use HTML5. Yeah, MZ is not smart so it is not surprising that he would say not correct things... Heh...