Live data from Hacker News

App sizes are out of control

trevore.com

421–430 of 455 posts

Re: App sizes are out of control

#421
post #359

I am surprised at all of the app developer shaming in this thread. Is it really likely that every developer working on a popular BigCorp app is an idiot who imports 10MB libraries every time he/she faces the slightest challenge? It's much more likely that app developers are optimizing for many things, including app size, but reducing app size has a bad cost/benefit ratio. Here are some decisions that may bloat your a…

Is it really likely that every developer working on a popular BigCorp app....

Not to mention, rarely does app size register to clients, PMs, bizdev in terms of a worthy task. Only when you end up at the top of the app sizes list is time given to optimize.

We work to keep down app sizes and offer line item tasks for app size optimization on updates, noone finds it needed until they start to risk being near the top of the app list on a users device when they want to delete some apps.

In games, many toolkits/engines like Unity and Unreal in mobile also add quite a large chunk. Building your own engine is rarely an option anymore in terms of competitive launch. Many games built with Unity/Unreal even with moderate assets can reach 200-300MB easily and easily creep up further on updates.

Re: App sizes are out of control

#422

I remember when apps used to take less than 4k of memory, because 4k was all the RAM in your computer. Then I remember downloading a 3 MB mp3 on my 9600 baud modem and being amazed at how much space was taken up by music that sounded realistic and not like just a bunch of beeps out of speakers that could only make beeps. Then came the old joke about EMACS standing for "Eight Megs and Constantly Swapping". Then I reme…

Right? I just got a new phone that has 128 Gb of internal storage. 334 Mb app? no problem.

That's cool that you can afford $500+ for a phone.

But the rest of us just want to use a phone with a couple apps. We can't afford phones like that, and high market-share apps shouldn't be designed for the top 1% of phones owners.

If Facebook wants people to use their shit, they can't design it solely for early-adopters.

Re: App sizes are out of control

#423

A major culprit of the bloat is the monolithic 3rd-party libraries/frameworks. You have to import the whole thing, even if what you need is just one simple function. Of course, you have the option of carefully studying the code, and hand-pick the part of code you need, but most developers will not do this, due to poor ROI. One way to solve this problem, is to promote modular library structures, and package management…

Everyone keeps saying this, and it's probably true. What I don't get is... why the hell these libraries everyone is using don't support MODULAR compilation. Why are they including stuff people aren't using?

I'm not an app developer. But I've known about libraries that section off lesser used code as "addons" since... well... since I started programming. This seems so fundamental I don't understand why everyone isn't doing it. Especially considering the gains are far greater in the mobile and web world than desktop.

Re: App sizes are out of control

#424
post #209

Earlier quoted context omitted.

This absolutely. I wouldn't be surprised if half of the outrage about file sizes simply comes from the fact that there are people who remember what software was like before all of this "technological supremacy" was a thing. People joining the workforce today didn't grow up with the experience of installing something off of seven floppy disks, which would have been considered an emormous program before the CD-ROM driv…

OT but not much, and JFYI, I started using an alternate unit of measure for web page sizes, the Doom: https://twitter.com/xbs/status/626781529054834688 https://pbs.twimg.com/media/CLLGenwWgAAZAVv.png Like: Hey, nice home page it is only 3 Dooms ...

I've watched entire episodes of anime in RM format in highschool that were smaller than the majority of apps these days. Not just smaller, but like... a 4X smaller or more.

Re: App sizes are out of control

#425
post #395
post #375

Earlier quoted context omitted.

If you've had to look at a pcap from what the android standard libraries do for https chunked upload, you would cry. One tls packet for the per chunk header, one for the chunk of data, and one for the carriage return newline. I've thankfully forgotten if these managed to also be separate tcp packets. Given that, I don't think it's unreasonable to consider using a library to do it better, although you have to weigh th…

Except the standard library will be updated if this actually became a problem, whereas you might choose that the cost/benefet ratio to updating your library is not worth it.

To a first approximation, the standard library on deployed Android phones is never updated.

Re: App sizes are out of control

#426
post #405

Earlier quoted context omitted.

I can say that I use it accidentally without realising(at first) it was a PWA website. So, Im just gonna tell it in layman term. From what I can tell, its a website, but definitely felt more like an app rather than a website. the best way to understand it is just to try it. Its just a website(PWA) pinned to your homescreen, so theres not much cost to try it.

Sounds very diffuse. I can pin any mobile website to my homescreen but I presume that alone doesn't make it a PWA.

PWA apps can run from home screen without address bar, with splashscreen and you can use things like ServiceWorkers (some things can run in background, better caching/storage, you can even run your app offline showing information/data/whatever from last time you synced with backend server).

Re: App sizes are out of control

#427

The situation is messy. Take Facebook.app. The reported size on the App Store is 377MB, the distributed .ipa is 241MB. But it is a universal app which includes fat binaries arm_v7 and arm64 and all the graphics 1x, 2x and 3x. App Thinning halves that size for end users. Yet the App Store reports the full size. There's more. App Store also provides some sort of delta updates [1], which save a lot bandwidth, but failin…

Wild guess, but presumably file size was not Apple's only or primary consideration on image format. Rendering performance, app load times, and power conservation all likely rank higher in Apple's priority list that raw disk space used.

I don't think that's true. Having unused icons on the device has negligible effect, if any, on performance, load times, or power usage (they never are loaded into RAM)

App thinning, as they call it (https://developer.apple.com/library/content/documentation/ID...) almost solely is about two things: download time and disk space.

Re: App sizes are out of control

#428

The situation is messy. Take Facebook.app. The reported size on the App Store is 377MB, the distributed .ipa is 241MB. But it is a universal app which includes fat binaries arm_v7 and arm64 and all the graphics 1x, 2x and 3x. App Thinning halves that size for end users. Yet the App Store reports the full size. There's more. App Store also provides some sort of delta updates [1], which save a lot bandwidth, but failin…

I was wondering why not use SVG (or any other vector file format) files and render all the graphic on the device, instead of including tons of PNG at various resolutions.

I'm not sure about iOS, but on Android the reason is the cost penalty of rasterizing larger icons and images on the fly. There's also some fragmentation with differing levels of SVG support on different OS levels. As a result, SVG is limited.

Re: App sizes are out of control

#429
Pile on the frameworks to speed development and to make mobile development more familiar-feeling for non-mobile coders. Instrument every user interaction. Use a cross-platform SDK. Squeeze every penny out of every ad network. Whoops! Bloated.

Re: App sizes are out of control

#430

Earlier quoted context omitted.

It varies, but for most apps I'd wager it's library bloat, but in my experience doing iOS dev here are the common culprits: - For games assets are a big issue. Some do not compress their assets, and unfortunately most image-authoring tools make it easy to output PNGs that are much larger than they can be. I think a lot of people by default assume bloat comes from images/icons/etc, but IMO this is a red herring for mo…

Congratulations, now you cannot use any app on an intermittent or slow network connection. This "cure" is worse than the disease.

How so? The scenario being modeled here is a user who wants to use an app but does not already have it.

The status quo is that they must download a 150MB bundle before being able to proceed.

The proposed app slicing will allow them to download maybe 10-20MB before being able to proceed, with additional components (up to the 150MB total) downloaded on-demand.

If the user is on an intermittent or slow connection this is still a significant improvement over the status quo: the user gets into the app much more quickly.

Additionally, if the user only uses a small slice of the app's functionality (which is the 90% use case), additional downloading can be deferred until the user connects to wifi, at which point the rest of the app can be downloaded over a fast and reliable connection, all seamlessly without the user having to worry about it.

Post reply on HN