Live data from Hacker News

App sizes are out of control

trevore.com

321–330 of 455 posts

Re: App sizes are out of control

#321
post #78

Earlier quoted context omitted.

Well that's your answer to your question. You forgot to optimize the images, because with your test environment, you don't notice it. If you were testing over a dial-up connection, you would notice it. Same with app writers. They forgot to optimize their app because they're testing it on the latest and greatest phones on their home network (or a corporate network which is blazing fast). If they tested on a low-end ph…

I used to work at a shop that ran a 1.5 mbps dsl line, and a ~5 year old, cheap, slow computer. If their code worked on that, it would work on any of our customer's machines. I wish devs would still test like that. Sure, your app works fine in downtown SF on the newest phone, but try using it in Nowherseville, TN, on a phone that is more than a couple years old. I bet a lot of user frustration comes from dealing with…

> Sure, your app works fine in downtown SF on the newest phone, but try using it in Nowherseville, TN

Granting that you heavily imply a 4G connection, the choice of "Nowherseville, TN" is extremely interesting: Chattanooga, TN — which as a Tennessean I feel is essentially "Nowheresville" to most non-Tennesseans — has Internet service multiple orders of magnitude better than most of the Bay Area[1]…

[1]: https://www.washingtonpost.com/news/the-switch/wp/2013/09/17...

Re: App sizes are out of control

#322
post #147
post #26

Earlier quoted context omitted.

Could it be that whenever coders today need some fairly trivial functionality, they tend to go out and find a library that contains it. So you end up with lots and lots of libraries where only a tiny bits of them are used. Just a hypothesis though.

This happens a lot, especially with dynamic linking. I have a project that uses Qt, OpenCV, CUDA, PCL and VTK - fairly standard stack for 3D imaging and visualisation. Since you normally need to bundle dependencies to account for different versions, this adds up quite fast. Qt adds 20MB for OpenGL, 15MB for the VC++ redist, about 30MB for other core libraries. Some stuff in OpenCV requires Nvidia's performance primit…

I had a fun time with this once. The Jetbrains Toolbox app is written using Qt and is 150mb. I opend the .app package on mac, deleted the frameworks directory, and symlinked it to my system's Qt install.

It's now 6mb.

Re: App sizes are out of control

#323

Earlier quoted context omitted.

Do you have a lot of space on your phone, or just not use a lot of apps or media? People might not have the same situation as you.

I have a 64 GB phone with a fair amount of apps and media. I don't know if it's more or less than average.

64GB is huge. Many common phones only have 8gb. Inexpensive phones these days have 4GB. Super cheap phones for developing nations may try to sneak in with less. When your phone is full, you generally go to the installed app list, sort by size and kill the biggest thing you can't live without. Eventually you get to the point where you have to delete app A to run app B, and then delete B to run A. If your app is smaller, it'll stay installed longer.

Re: App sizes are out of control

#324
post #191

Earlier quoted context omitted.

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 guessing but it seems logical that phones are not the place you want to do extra graphics rendering if you don't have to.

Rendering svg icons sounds like a non issue for any "smartphone" made possibly ever.

Re: App sizes are out of control

#325
post #304

Earlier quoted context omitted.

It's not that Devs don't care. It's because every metric anyone has ever gathered says that users don't care.

It's not that users don't care, they just don't know it's an issue or who to blame. When they're out of space on their phone the blame whatever company logo appears on the phone, they don't blame the authors of a dozen bloated apps they installed.

This. People blamed Apple for them running out of space on a 16 GB phone. I agree photos, videos, and music take up space, but the first iPhone had 4 GB of storage. The iPod Shuffle had 500 MB. Not exactly apples to apples comparison, but Snapchat used to be about 5 MB, and now it’s over 100!

Re: App sizes are out of control

#326
post #34

Folks: there's a built-in technology on your phone that allows you to load and run an app on-demand over the internet without dedicating any internal storage at all! It allows clean integration with many of the "native" features you expect like camera and notification and timers and stuff. And it's based on completely open standards with multiple, competing open source implementations. No, seriously: uninstall that j…

What is it that keeps online web apps from turning into the bloated monsters that Electron apps are on the desktop?

Re: App sizes are out of control

#327
post #235
post #217

Earlier quoted context omitted.

That's like saying shooting yourself in the foot only hurts the first time. But, it's probably not a major performance issue in practice.

The interesting part of this is that all this dynamism and dependence on runtime actually improves performance in comparison to C++. For example it is perfectly possible to implement objc_msgSend in portable C such that it is on modern superscalar and heavily cache dependent CPUs on average faster than C++-style virtual method call.

Really? That seems highly unlikely, and doesn't match with any of the speed testing I've done.

When you get down to it, an ObjC message send performs a superset of the work of a C++ virtual call. A C++ virtual call gets the vtable pointer from the object, indexes into that table by a constant offset, loads the function pointer at that offset, and calls it. An ObjC message send gets the class pointer from the object, indexes into that table by a constant offset, loads the method cache information at that index, uses the selector to look up the entry in the cache's hash table, and then if all goes well, it loads the function pointer from the table and jumps to it.

Re: App sizes are out of control

#328
post #218

Earlier quoted context omitted.

Modern smartphones have quite competent GPUs. They can run 3D games at 1080p/60fps. They could raymarch circles around an svg icon. And if it wasn't enough, the renderings could be cached for later use.

GPUs do not like SVGs. They don't handle them well at all. Most SVGs are CPU-rasterized as a result.

So you just CPU-rasterize out to a buffer, and blit it to the screen. After the initial render, it's equivalent to the PNG. The application essentially decompresses its assets on launch.

Re: App sizes are out of control

#329

In several interviews I've been questioned about the importance of my contributions throughout my entire career because the apps sizes were so small (typically 8 - 12 mb) When asked it was clear they'd already made up their mind, and discussions about optimizations, how the app actually did anything, MVC, MVP or SVGs didn't change that. And thats how you have large apps!

To paraphrase Bill Gates, that's like measuring an aircraft designers skill based on the final weight of the aircraft.

Any idiot can create something bloated and complex, creating something small and simple requires much more effort.

Re: App sizes are out of control

#330
post #271
post #96

Earlier quoted context omitted.

Except they have been working on it, by repackaging apps to strip out unneeded assets. And it is in Apple's interest to have smaller apps, because then people will be able to download more apps. They'll be willing to try more apps, because there will be less of a barrier between seeing the download button and being up and running.

Plus Apple likes shipping lower end/cheaper devices to people who won't buy the high end. When your low end configuration is hard to use because Facebook takes up 29% of the storage... that's a problem. Customers get mad. When they can't update Facebook because it wants more space and the device is full and now the user is locked out from their friends... customers get mad. When updating a handful of apps uses up 70%…

[deleted]
Post reply on HN