Are App Sizes Out of Control?
In a blog post, Trevor Elkins points out the large sizes of common apps like LinkedIn and Facebook. "I went to update all my apps the other day when something caught my eye... since when does LinkedIn take up 275MB of space?!" Elkins wrote. "In fact, the six apps in this picture average roughly 230MB in size, 1387MB in total. That would take an 8Mbit internet connection 24 minutes to download, and I'd still be left with 27 additional apps to update! More and more companies are adopting shorter release cycles (two weeks or so) and it's becoming unsustainable as a consumer to update frequently."
Should Apple do something to solve this "systematic" problem? Elkins writes, "how does an app that occasionally sends me a connection request and recruiter spam take up 275MB?"
Further discussion via Hacker News.
Should Apple do something to solve this "systematic" problem? Elkins writes, "how does an app that occasionally sends me a connection request and recruiter spam take up 275MB?"
Further discussion via Hacker News.
Large size app packages are invariably caused by sizes of assets, not code. In the case of games that's usually inevitable. But for most other apps, it usually means that no engineer has bothered to look at what assets are shipping, and get rid of the ones that aren't used, and think of ways to save space on those that are.
...on my Android phone. Except my phone is full, so every update... I have to delete another app, or clear the cache for it to download.
It's !#@$!ing pathetic.
I've got maybe 4 apps that aren't stock on my phone. It runs slow as piss compared to the two years ago when I bought it used. A freakin Samsung S5. You know... an "enterprise model / top-of-the-line" phone when it came out. No Facebook. Nothing. Just Google's, T-Mobile and Samsung's defaults.
"Maybe you just need to upgrade."
Bull. Shit. It's got a quad-core CPU and a GPU that would make my netbook cry, and yet... somehow... my Linux laptop sits there, every day, just as fast. And my phone keeps getting slower. Same websites. Same hardware (from purchase date). And yet... mysteriously... it keeps getting slower.
I would not be surprised at all if there's some planned obsolescence at play. I've seen countless stories of people "reseting to factory default" their phone or tablet, and then once it installed all the normal updates... it's slow as mud again. It shouldn't take me 7+ seconds to load my bloody GMAIL app on a quadcore ghz CPU. It's _e-mail_. It's practically a word processor without the word processing.
Then again, it's probably just a conspiracy theory. It's not like large corporations have ever colluded to bypass things like environmental regulations to increase profit.
Most Apps are not really made by professional software developers. It reminds me back in the early desktop era, where most applications were made by people who had their own problem to solve. Without actual practice in coding, they wrote a program to do what was needed, but without much planning or for-site. Being these computers did one thing at a time, if it took 0.5 second vs 0.01 second wasn't a big deal, because it didn't affect other systems. So if you wanted a pause you can figure out the speed of your cpu and just loop x thousand of times. Moved to a multi-tasking system, that is great way to kill your jobs.
Now companies are trying to race to Device Apps. But except for bringing in the old developers and get them to learn the new software, they hire flashy new App developers, who have Objective C and Swift and all the buzzword systems on their resumes, but not people with experience with coding, and for these new devices, which are relativity low powered, the talent to think about system resources.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
Actually, they ARE re-using code. These days every schmoe has a library that is "built on" some other schmoe's library. You can't even flush the urinal without going through 99 million layers of schmoe software. It's schmoes all the way down.
These clowns are worried about size -- frankly, it's a damn miracle that any of it even functions at all.
Actually, that's not true. Facebook for example is huge because of code size, not because of asset size.
They have literally thousands of classes for a super simple application. In fact, their code is so large, unwieldy and complex that they wrote an entire IDE, because the traditional IDEs couldn't deal with the sheer amount of code they have.
I don't know why it didn't occur to them to just write better code, but apparently it didn't.
OK, the numbers are "real" in that "that is how much space the app is taking on Apple's server". It is not real in that "this is not the size of the files being moved to your device."
What those numbers include: Multiple assemblies for different architecture platforms. The whole 32/64 bit thing is rearing its ugly head. There are also shared assemblies, not all of which get sent to your device (because they might already be there).
Source: I'm an app developer who has had to explain this a few times as well.
Bad User. No biscuit!
I don't miss the size constraint nature of floppies, but I do miss the portable environment nature of floppies.
It was awesome to have my own little box of 5.25 floppies that I could bring from home and then in computer class, boot the Apple ][ with my own disks and utilities.
I kind of wish it was more practical to do this with Windows. Of course there are close workalikes, (RDP, web based environments, Windows to go, etc) but nothing with the elegant simplicity of just booting the dumb thing from a 128 GB USB stick and using it as normal, and then carting it off.
The writers of the Halide app also went into this:-
One Weird Trick to Lose Size.
psst:
The base size of a class is 0 bytes.
The number of classes is irrelevant. Even if each line of code produced 100 bytes of binary which is a very generous to your position value, and the software is 200 MB binary, that still means 2 million lines of code, right?
Why does facebooks app have 2 million lines of code?
The answer is: IT CERTAINLY DOESNT
The answer is also: YOU DONT KNOW WHAT YOU ARE TALKING ABOUT
The answer finally is: STOP MAKING THINGS UP
My guess is crap like a language support pack is done poorly using grossly inefficient data hierarchy format(s) and that these language support packs just keep growing in size and number and that the whole language support monstrosity is shipped to everybody.regardless of what language they speak.
"His name was James Damore."