Live data from Hacker News

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

telkins.dev

401–410 of 452 posts

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

#401

I spent the last ten years of my career building iOS apps, all but one you would likely known at the time, and whoever in charge of this app is an idiot. Shipping an app to the general public with symbols intact? Really? If they didn't know/didn't care, it tells me no one there likely cared about any other quality issue either. It's highly likely that any relevant lead person probably screamed about this daily, but h…

> At my last job our legal team would have had a cow shipping labels. Our apps are gleaned by blogs looking for scoops on upcoming features.

They don’t need symbols to find stuff…

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

#402
post #377
post #222

Earlier quoted context omitted.

Not saying it's the right decision, but probably because they don't want the liability if a rooted device allows some 3rd party app to hack theirs. Airlines can be somewhat like a small bank in this respect, as being logged in gives you access to things like accumulated loyalty points, not-flown-tickets that can be exchanged/refunded, past flight credit from earlier refunds that were eligible for credit but not a cas…

At that rate why not also ip ban any general purpose compute device from accessing their servers? I can't believe a major airline has programmers who think blocking jailbroken cellphones would do anything at all to thwart a hack. It makes me think twice about flying United certainly if these are the incompetent hands I'm placing my trust in.

Not that I agree with it, but the usual line of reasoning is that they have laxer rules on a native app. Like no captchas, much longer session timeouts, etc. So they aren't comfortable with the looser rules on a rooted phone.

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

#403
post #382
post #209

Earlier quoted context omitted.

Not defending the blocking of rooted devices, but I think it's excellent that airlines are relying on people bringing their own hardware. I think you'd struggle to find a single person in an airport who isn't carrying a screen with them today, so seat-back screens feel very redundant to me.

They aren't doing it to be green, they are doing it to save money on chair replacements. I'm surprised how rare it is even to get a seat with power hookups these days. Even in the actual airport itself plugs are still relatively rare and closely guarded, actual functioning plugs rarer still. I remember when economy meant a new set of headphones and the billboard top 20 playing from the arm rest.

And weight from the video boxes under the seats. Multiply that weight * 2-3 for every row and it adds up quickly.

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

#404

Earlier quoted context omitted.

I mean, you're supposed to be at the gate when boarding starts. For all practical purposes if you miss boarding you've missed your flight even if the plane hasn't left the ground due to safety rules about letting passengers go after the door is considered closed. There's a bit of a checklist of things that need to be completed after the door gets closed and the gate pulls away. They're often incentivized to try and s…

Luckily, common air carriers do not run on anarchy and made-up rules. United, like every airline, has a Contract of Carriage, which clearly requires being at the gate only 15 minutes before a scheduled domestic flight: > All Passengers must be present at the loading gate for boarding at least 15 minutes prior to scheduled departure. The OP was clearly involuntarily denied boarding even if it was an international flig…

Exactly. Contact United and if they push back, contact the DOT. There's a process for how this kind of stuff gets handled.

UA's team has access to exactly when the door closed and if it was greater than 15 minutes before the scheduled departure time, they owe the OP.

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

#405
post #176

Earlier quoted context omitted.

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

That was literally what the previous comment was trying to tell you.

Yeah I realized that too late :)

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

#406

Earlier quoted context omitted.

Thanks! This is very interesting to see all the low hanging fruit. Out of curiosity, could you run Emerge on a few other common apps: the United app as well as Yelp, Twitter and TikTok? Those seem to be the biggest consumer of storage for me.

I tried it out with Yelp and Twitter, both had a lot of bloat due to not stripping binaries. You can see this in the large "String Table" in both screenshots. Yelp also has a large exports section for the main app binary, that's usually a sign of a problem because the main binary doesn't need to export any symbols, only frameworks do that. Twitter has a handful of 4MB images, much bigger than images you'd expect in a…

They're probably shipping their org chat. Artists and engineers are on separate teams, and when the artists want to redesign the look of the app it is easiest to photoshop a bunch of images.

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

#407
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.

As a frequent and mostly non-loyal flier, I can say despite all its faults the United app is far and away the best airline app in the US: fast, easy to navigate, powerful, useful and often pleasantly surprising. American is the only other app that compares, I can't stand to use any other airlines' apps.

I'd agree with you. Most of the other major US carriers is just a crappy web view shoved into an app.

AA's comes to mind as possibly the worst airline app out there.

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

#408
post #159
post #123

Earlier quoted context omitted.

United Airlines is not a luxury product.

Flying anywhere, period, is a luxury

That's somewhat a different definition than the comment I was replying to. There are plenty of people who may want to fly somewhere who aren't going to upgrade their phone to the latest and greatest every two years (which is what the comment above was implying: that since flying is supposedly a 'luxury' item it can be assumed that the customers have the latest and greatest phones).

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

#409

Earlier quoted context omitted.

Oh, nobody is praising the other apps? That's true but these are very basic expectations. If you're a chef and you burn every tenth meal then either you or your management are making very bad decisions, even if the other 90% are fine. And app and website bloat seems to be significantly more widespread than that. The idea isn't that nobody ever tries, it's that the typical amount of trying is really bad.

When eating a meal, how the meal tastes (burnt) is at least #2 on my top priorities (just below whether it will lead to illness). When consuming an app though, bundle size has got to be at least #5, far below something like "Does the app do what I want?" and "Is it performant" etc. While it would be nice if everything was optimized, it's really not comparable to a meal tasting good, since that's basically the main re…

> When consuming an app though, bundle size has got to be at least #5, far below something like "Does the app do what I want?" and "Is it performant" etc.

This much space is a pretty big cost. It represents wasted dollars, or shuffling data, or not getting it downloaded in time, or not having room for the pictures you want, etc.

> Again, we really have no way of measuring just how bad it could be.

If five minutes did this much, and this is within a couple orders of magnitude of typical, then we can conclude that the typical effort is really bad.

How much worse it could be might be an interesting thought experiment, but doesn't affect the above conclusion.

It could probably get almost infinitely bad if there was zero cleanup effort. But that's the difference between 1/10 effort and 2/10 effort. If I'm demanding 6/10 effort for a professional product, the difference between 1/10 and 2/10 doesn't matter to me.

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

#410

Earlier quoted context omitted.

I've found that true of other everyday things (eg, booking a session my local gym), and find it incredibly depressing. Not only have we devised a world where impersonal, digital communication is the way things get done, but we must also buy a smartphone to even start accessing it.

I find it a great step forward in society, for every Gym in the world to not need to staff someone to sit there and answer phone call questions around (what are your hours? can I book X for Y?). Those are done much faster with robots and lower our costs.

You don't need someone sitting next to the phone the entire time to perform that service. Besides, you've swapped that perceived unpleasantness for another - some poor soul in a 3rd-world coding sweatshop has to scrape together some bloated mess of an app so we can enjoy our "hassle-free" gym sessions, etc.
Post reply on HN