Q: Why Is the Facebook App So Large? A: iOS Can’t Handle Facebook Scale
quellish.tumblr.com
quellish.tumblr.com
>A: Facebook app has such different priorities than other developers, that Apple's development ecosystem has 'unreasonable' expectations and assumptions.
Facebook wants to be (and seems to like being) a "clowntown" (as the author puts it) where anyone and everyone can write up a duplicate library to anything and ship it. Any and all code will ship, it just can't make the app dip below 60fps. To meet those strange goals, they 'hacked' together their own GUIKit (at least three of them, actually), their own IDE, their own animation kit, their own debugger, etc. A general theme seemed to be that this was done in order to get everything off the main thread and onto background threads. By only depositing the very smallest amount of work onto the main thread from a gigantic soup of background threads you could keep the app snappy without needing to prune any code.
Seems to me to be a silly way to differentiate one's self.
-- Facebook dev
To be honest performance wise Facebook app is great. Butter smooth, but there is no reason a 20MB App cant be butter smooth either. Feedly App, is only 18MB.
And it seems large app isn't just Facebook, twitter is 60MB. QQ is 130MB, or We Chat, etc..... Many apps seems to be be way bloated.
So are we implying all these apps are over engineered?
http://www.koszek.com/blog/2015/09/08/copyright-screen-of-fa...
I work on a multitude of apps that have huge customer bases. Obviously no where near Facebook but, definitely a couple million users. The largest app has maybe 200K lines of code? And we are always able to find sections of the app to refactor or find dead code to cut.
I've worked for places that average 2-4 million users/per day 40+ million a day, they're an order of magnitudes different in every single way
Granted, I've had an iPhone 4 the whole time, so the experience has gotten worse and worse as time's gone on. But there's definitely been performance booms and busts throughout that time, with the performance getting a lot better whenever they release a version that's been completely redesigned.