Live data from Hacker News

I shaved 187MB off United Airlines' 439MB iOS app

telkins.dev

171–180 of 452 posts

Re: I shaved 187MB off United Airlines' 439MB iOS app

#171
post #128

Earlier quoted context omitted.

It's ridiculous. The complete size of Mario 64 with all assets is 6MB.

And the whole 9front weights less than those apps. When I was a Windows user, a video player install of more than 80MB would be slightly bloated. Today my OpenBSD install uses less than 3GB and it has far more stuff than a phone install. Golang binaries are like 5-15x the size of a dinamically linked C binary, yes, but at least they provide everything and run everywhere.

I’ve built a full android IRC client in 4.1MiB. Most UI elements are custom, no web view for anything, lots of custom libraries etc. That’s > 200kLOC. I can’t fathom what you’d have to do to get to 100x that.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#172
post #135

Earlier quoted context omitted.

To add some context, Gmail also includes a lot of the core workspace apps(chat, meetings, etc) if you do have a workspace account, which most users will likely never see. All of that isn't needed on regular accounts, I guess, but it's probably easier for them to ship it as one app because people might get confused/are able to switch between their workspace and regular accounts in the app. Gmail is also supposed to be…

Isn't chat, meeting, etc all separate apps from Google (and not included in the core Gmail app). https://apps.apple.com/us/app/google-chat/id1163852619 https://apps.apple.com/us/app/google-meet/id1013231476

These are "standalone" versions, but they are also all built into Gmail if you have an account that has access to them.

They do exactly the same thing on Android - Gmail has it all by default, if you want them separate, you can get them from the play store.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#173
post #5

But even the stripped version is way way too much for an app like this. I can imagine it's layers upon layers of poor, bad and terrible architectural and organizational decisions.

I’d like to approach this differently, and think about what it would have cost United Airlines to do it “the right way”, versus what value it brings them. I’m the first to say that this utter bloat is terrible, but most people aren’t really bothered by it. And I can only imagine that they outsourced their app development completely and like to keep costs low. From that perspective, it’s probably much more pragmatic t…

"The Right Way" involves running the strip command before sending the app off to Apple for publishing. It's 5 seconds of effort and saves almost 200MB for literally thousands of users.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#174
post #135

Earlier quoted context omitted.

To add some context, Gmail also includes a lot of the core workspace apps(chat, meetings, etc) if you do have a workspace account, which most users will likely never see. All of that isn't needed on regular accounts, I guess, but it's probably easier for them to ship it as one app because people might get confused/are able to switch between their workspace and regular accounts in the app. Gmail is also supposed to be…

Isn't chat, meeting, etc all separate apps from Google (and not included in the core Gmail app). https://apps.apple.com/us/app/google-chat/id1163852619 https://apps.apple.com/us/app/google-meet/id1013231476

Drive, at least, is both a separate app and integrated - if you try and open a docx file in GMail it will invoke some of the drive code to render it.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#175
post #5

But even the stripped version is way way too much for an app like this. I can imagine it's layers upon layers of poor, bad and terrible architectural and organizational decisions.

> I can imagine it's layers upon layers of poor, bad and terrible architectural and organizational decisions. Or are they trade-offs? Do these 'bad decisions' actually impact their business or are they manageable, allowing them to achieve their mission, focusing on other things that are more important?

I've worked on one of these apps (healthcare space, just checked and the size sits at 350MB). Here's the problem as I saw it firsthand:

* Far too many hands in the pot: My rough calculation is at any given time, there are around 1000 contributors to this app, across various teams. This itself is not a problem, but leads to issues.

* Tech Debt Racks up Quick: Again because there are so many hands in the pot, tech debt racks up unbelievably quickly. And furthermore it's almost impossible to address because it cuts accross so many teams and orgs.

* The Solution? More Hands in the Pot!: With tech debt racking up quick and not being resolved, productivity grinds to a halt. App has constant errors, crashes, and things like hot reloading are just totally broken because of all the underlying issues. So what do you do when faced with this problem? More engineers! Rather than addressing the problems that face developers, they just throw more labor at the problem, compounding the previous issues.

* Code Duplication: With so many folks working on the project but not talking to one another, code duplication becomes a MAJOR issue. Say you have a "Button" component that needs to be modified. Well, modifying that component means going through 5+ teams to get approval. So to sidestep you create "Button2", and the next guys creates "Button3". The result is you pull up the fuzzy finder and search "Button", only to get 15 results with subtle differences.

This is just my experience. Currently this app is top 20 in healthcare on the Apple Appstore. The company also has a number of other apps and when I was leaving the company, there were talks to merge all the apps into the "main" app (good fucking luck).

Re: I shaved 187MB off United Airlines' 439MB iOS app

#176
post #65

You know what also have huge app sizes, it's various iOS email app. Fastmail is the only email/calendar app with a reasonable size (just 20MB) [0]. - Gmail (397MB) [1] - Outlook (328MB) [2] - Hey (69MB) [3] - Protonmail (128MB) [4] [0] https://apps.apple.com/us/app/fastmail-email-calendar/id9313... [1] https://apps.apple.com/us/app/gmail-email-by-google/id422689... [2] https://apps.apple.com/us/app/microsoft-outlook/…

> Fastmail is the only email/calendar app with a reasonable size (just 20MB) It's because it doesn't contain anything. You can't even see any UI, let alone emails without being connected to the internet.

Adding offline access would indeed be nice, but that wouldn't even add 2mb of code. I have entire native mobile games with multiplayer under 3mb.

EDIT: just realized the app is a web view. Sigh

Re: I shaved 187MB off United Airlines' 439MB iOS app

#177
It's 78MB on Android (Pixel 6 Pro). That's one of the hidden advantages of Android: much smaller apps. Makes for faster downloads, less storage consumption, and maybe even better caching / performance. It's common for iOS apps to be 4-5x bigger than Android apps.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#178
post #55
post #11

File size aside, I can confidently say - United hands down has the best app of any major airline in the world. It's better than their website and often-times even better than calling customer service on their 1K (top loyalty status) line. Many ways to make it better, but if we're comparing it to airlines & hotels, it's extremely well done.

I agree. And it used to be the worst out of any of them, so props to their dev team. The video player does give me problems sometimes though

It absolutely should know that I’m a X-elite member blahblah stop giving me ads for their credit card which I’ve had for 15 years.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#179
post #135
post #65

You know what also have huge app sizes, it's various iOS email app. Fastmail is the only email/calendar app with a reasonable size (just 20MB) [0]. - Gmail (397MB) [1] - Outlook (328MB) [2] - Hey (69MB) [3] - Protonmail (128MB) [4] [0] https://apps.apple.com/us/app/fastmail-email-calendar/id9313... [1] https://apps.apple.com/us/app/gmail-email-by-google/id422689... [2] https://apps.apple.com/us/app/microsoft-outlook/…

To add some context, Gmail also includes a lot of the core workspace apps(chat, meetings, etc) if you do have a workspace account, which most users will likely never see. All of that isn't needed on regular accounts, I guess, but it's probably easier for them to ship it as one app because people might get confused/are able to switch between their workspace and regular accounts in the app. Gmail is also supposed to be…

Gmail being a "hub app" makes some sense, actually (unless you're not using Chat or Meet, of course).

What annoys me much more than that is that Docs, Sheets and Presentations all are multi-hundred megabyte standalone apps, of which I'm guessing 80%-90% of the code is identical/pulled in from some non-shared library.

Re: I shaved 187MB off United Airlines' 439MB iOS app

#180

I once flew United and, like the author, didn't realise this until I was on the plane for a ten hour flight. Downloaded the app for Android. I opened it. I was immediately ip-blocked for having a rooted phone, which was then kicked off the network and couldn't get an IP address. United cabin crew then started trying to sell me an iPad loan for the duration. I read a book and vowed never to fly with them again.

Unrelated to their inflight entertainment, United pulled this stunt on me the other day.

- Flight at 11AM, boarding at 10:20.

- Show up at 10:25, boarding doors are closed.

- "Didn't boarding start 5 minutes ago"

- "Yeah we close the doors once 95% of people show up, sorry, you should show up when boarding starts"

- "Yeah but didn't boarding start 5 minutes ago, how was I to know"

- "You should have known, sorry"

Post reply on HN