29 ms·
I shaved 187MB off United Airlines' 439MB iOS app
- kloch 5y agoso that is why they say before every single flight "Make sure you download the United app before takeoff as you will not be able to download it in the air".
- Danborg 5y agoMaybe Apple wants you to use up all your space with fat Apps so you have to upgrade to a bigger iPhone. ;-) (Tim, if you’re reading this, I’m just kidding. Please don’t delete my iCloud account.)
- jrc2022 5y agoNicely done! Someone should send this to UA...
- jeffbee 5y agoThis is the kind of thing the App Store review process should be flagging.
- Scoundreller 5y agoWhy? Bloat drives sales and upgrades.
- memco 5y agoSo does optimization and efficiency. Apple can add this in at some point and say they reduced App sizes by X% across the entire App Store at WWDC and get lots of oohs and aahs.
- ChrisMarshallNY 5y agoAgreed, but I'm wondering if they will. I'm a real "dependency skeptic." Doesn't make me too many friends, hereabouts. I'm also not a fan of running Web code on the phone, like a lot of PWAs and hybrid systems. Again, doesn't make me popular, in this crowd. If the main app runs afoul of stripping symbols, then the App Store inspection can flag it. If, however, it's a dependency, then I could see them tossing out boatloads of apps, simply because they include piggy frameworks. There's really no automated way for Apple to realize the framework is really just the developer's aggregated code, or from another source, over which the developer has no control. What really needs to happen, is that the developer has their own inspection regimen, before submitting something that could cause brand damage, to the App Store. Again, suggesting stuff like this, is tantamount to heresy, in today's "Move fast and break things" tech world.
- bluedino 5y agoThey'll introduce it as a feature at the next WWDC. The best App Store yet!
- bitwize 5y agoYou joke, but really, if anyone can change the economics of development to dissuade app cruft, only Apple can. Apple routinely achieves with a wave of the hand things that years or decades of concerted effort from industry professionals couldn't do. Things like remove and deprecate DRM from music. This is Apple's industry, we're just allowed to play in it.
- toomuchtodo 5y agoWhile not a security bug, this should still be some sort of bounty amount worthy.
- mojuba 5y agoBut 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.
- MikeCapone 5y agoI think the Stripe app is like 20 megs, Overcast even smaller than that.
- dont__panic 5y agoJust checked the other day: one of my favorite apps this year, Hyperweb, is just 18.2 MB. Granted, it's only a browser extension for adblocking, styling, etc (sort of a replacement for all of the various Firefox addons I wish I could use on iOS), but the competition, AdGuard, clocks in at nearly 500 MB. I really wonder what some of these apps are doing with this space. My banking app clocks in at 400 MB as well.
- andai 5y agoMy favorite iOS app, Decoupled, is 2.4MB. My favorite Android apps were 5-10x smaller.
- pgalvin 5y agoI have AdGuard on my phone at ~60MB, you might want to check that.
- dont__panic 5y agoStrange, the download from the app store (https://apps.apple.com/us/app/adguard-adblock-privacy/id1047223162 https://apps.apple.com/us/app/adguard-adblock-privacy/id1047...) is 100 MB, but my install somehow crept up to ~400 (logs, maybe?) over a couple of years of use. I don't have it installed any more, but it's wild how much this varies across devices. What phone do you use? I use a 2016 SE, I wonder if there's a bug that's consume extra space on a device as old (and likely untested by AdGuard) as mine?
- melony 5y agoDoes iOS not have code splitting? I thought most of iOS app bloat comes from the multiscreen assets. I surprised compiled code takes up so much space.
- grishka 5y agoDo iOS apps still use bitmap graphics?
- O-stevns 5y agoIn many cases yes, but svg support has been available in xcode since ver. 12 and before that pdf had been available. As a consultant I haven't worked on a project yet where vector assets has been chosen over bitmap
- perardi 5y agoBut does Xcode convert PDF and SVG to various PNG assets? https://bjango.com/articles/svgassetcatalogs/ https://bjango.com/articles/svgassetcatalogs/ It's my understanding, as a designer, that it was auto-generating 2x and 3x PNGs as from your vector assets, and that's what actually got bundled in the final app—and that PNG compression was not good compared to what I could get by going through ImageOptim. I would be quite happy to be wrong about that. It would save me a lot of time.
- commandlinefan 5y ago> it is fair to say this area of app development is complicated to understand. Not really, but it's also actively suppressed. If they can make as much money with a 439MB app as they can with a 10MB app, why would they waste any time or effort trying to save you a few minutes of download time? If anything, I expect this to get worse, as management is constantly pushing for adoption of frameworks that (in their imagination) speed up time-to-market.
- digikata 5y agoThey spend a lot of money trying to offer competitive features on their flights - like maybe watching streaming videos on the plane enabled by the app. To the extent that passengers can't finish a 439MB download of the app just before they board, the app size wastes investments in services of the airline.
- commandlinefan 5y agoYou're thinking like an engineer, not a manager. How does this factor into this year's bonus?
- digikata 5y agoIncrease of passenger engagement metrics on app delivered video services?
- snovv_crash 5y agoIf more people download and run the app, then surely you can justify further investment in the product?
- bitwize 5y agoSouthwest has a webapp, lol.
- spookthesunset 5y agoDon’t these airplane steaming services have a local copy of all the movies on some storage device inside the plane? I wonder how crazy it would be to cache the iOS app… like maybe they run a caching transparent proxy on the plane… or some crazy relationship with a CDN that treats each plane as an edge node. I dunno, it would probably be pretty be way to expensive to set up something like that to be worthwhile.
- JTon 5y agoTL;DR: > Wow! I honestly wasn’t expecting that much of an improvement. We shaved 187MB off the app size in five minutes by stripping framework symbols.
- anthk 5y agoC++ and Go binaries such as mednafen can be about 50% smaller once stripped.
- 0xbadcafebee 5y ago> While the United dev team should have noticed this much earlier I suspect it's more that their devs are either junior and don't know any better, or more likely that they just don't care. I've also met some devs who believe whatever comments they read on HN, like "file/memory size don't matter"
- ngoel36 5y agoFile 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.
- trevorLane 5y agohave you seen Breeze's app?
- jaywalk 5y ago"Sorry, your device's memory is too low. Start your search again." -Delta app
- notyourwork 5y agoInteresting, I've found Delta's app to be usable (above average?). Sort of funny that a usable app is my above average rating but I've found Delta's app just doesn't get in the way. I'm looking forward to trying United.
- 121789 5y ago
- sidlls 5y agoReminds me of Facebook’s (in?)famous “Apple can’t handle our scale” thing: https://www.reddit.com/r/programming/comments/3m5n2n/facebook_engineer_ios_cant_handle_our_scale/ https://www.reddit.com/r/programming/comments/3m5n2n/faceboo... There was an HN thread about it, too, but I can’t find it.
- ChrisMarshallNY 5y agoI've talked with folks that have worked on their code. I think that it's unreasonable to expect a Lambo (or even a Yugo) to accommodate a 300Kg man.
- ChrisMarshallNY 5y agoI found this: https://news.ycombinator.com/item?id=10275396 https://news.ycombinator.com/item?id=10275396 But no comments, and no votes, so it must have been another thread, thereabouts. It was quite some years ago.
- scandinavian 5y agoI found the PDF if anyone is curious. https://drive.google.com/file/d/16lDaCfEjT7Z72EEDFBo5r3lTDCVcWUjf/view https://drive.google.com/file/d/16lDaCfEjT7Z72EEDFBo5r3lTDCV... I'm not sure what I just read though.
- password4321 5y ago2014 (Android) - https://news.ycombinator.com/item?id=8162342 https://news.ycombinator.com/item?id=8162342 2015 (scale) - https://news.ycombinator.com/item?id=10271586 https://news.ycombinator.com/item?id=10271586 https://news.ycombinator.com/item?id=10066338 https://news.ycombinator.com/item?id=10066338 2018 (491MB) - https://news.ycombinator.com/item?id=17995954 https://news.ycombinator.com/item?id=17995954 2020 (Messenger) - https://news.ycombinator.com/item?id=22466462 https://news.ycombinator.com/item?id=22466462 2020 (SDK) - https://news.ycombinator.com/item?id=23790207 https://news.ycombinator.com/item?id=23790207
- indrora 5y agoWhen Windows 10 Mobile was a thing, Microsoft had written a very competent Facebook application to go along with it. The original version was 18MB. The official Facebook-written version was nearly 300MB, with the bonus that it disabled the old app. I wrote about it then: https://medium.com/hackernoon/how-not-to-transition-an-app-between-companies-d703230d91a4 https://medium.com/hackernoon/how-not-to-transition-an-app-b...
- allisdust 5y agoEven after optimization its massive. What does this app contain? An Embedded game? Shouldn't an airline app be simple.
- lulzury 5y agoWhat is the purpose of having those framework symbols there in the first place? What was the original intent/use?
- joezydeco 5y agoUpstream telemetry on a crash?
- Siecje 5y agoDebugging
- galad87 5y agoNo purpose. Even without those, you can resymbolicate a crash log later.
- _3u10 5y agoYou are very incorrect sir. I encourage you to strip the frameworks in your /System folder and then reboot your system. You can strip the main executable but stripping frameworks is a VERY VERY bad idea.
- galad87 5y agoThere is no framework to strip in the /System folder, everything is in the shared dylib cache since Big Sur.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]
- DrBazza 5y agoHello world by size - https://drewdevault.com/2020/01/04/Slow.html https://drewdevault.com/2020/01/04/Slow.html 439Mb? That's horrific. If I was cynical, I'd say it's in Apple's interests to have bloaty apps, so they can sell more expensive phones with more storage and memory. But that would be cynical. It feels like a failure at every step in the tool chain if a binary comes out at that size.
- abotsis 5y agoI wonder what effect stripping has on crash dump reports though. I don’t know enough about how the App Store manages those, like (if a user opts in to “share information with the developer”), does the developer get less nice dumps as a result of stripping? Surely this can be worked around so long as someone has a symbol table (which they likely do), but the infrastructure might not be in place to do that automatically.
- mlindner 5y agoA good crash dump doesn't need symbols at all. The symbols come from the stored symbols from when the author originally compiled it. As long as the builds are reproducible you can even produce the symbols at a later date for an old version if you still have the source code.
- snovv_crash 5y agoEven if the builds aren't reproducible, rebuilding on the same machine with the same settings usually gives you something a crash dump will work with. But, make your builds reproducible and/or save your debug symbols as part of your release process, it will be something you wish you did otherwise when you're not quite sure if the stack trace you have is correct.
- ajconway 5y agoDebug symbols are stored separately on the developer’s computer (and may be uploaded to Apple, but that’s optional). Including symbols in the App Store binary is practically useless.
- hoten 5y agoIs there any reason Apple couldn't just strip the code binaries themselves?
- ajconway 5y agoNo, Apple already modifies uploaded binaries before storing them for distribution. In some cases Apple even compiles the binaries themselves (if the developer chose to include the LLVM "bitcode" when submitting the app).
- jb1991 5y agoI don't understand why this actually happened, why were the names not stripped? That seems like a terrible thing not just for size but also for insights into the developer's process (in this case). Shouldn't Xcode be doing this automatically? The author even points out that Swift doesn't need them, so why are they there?
- rob74 5y ago"App review failed: your app contains >30% cruft. Please remove cruft and re-submit"
- dzhiurgis 5y agoHow is that not done by Apple's servers automatically?
- ksec 5y agoThere is a whole Node.js runtime for iOS included? I would imagine this is basically an Electron for iOS and Android? If that is case I am not surprised at the file size.
- ziggus 5y agoIs it an Electron app?
- dorianmariefr 5y agoMaybe they pushed a debug build instead of a release build?
- silverfrost 5y agomb and MB - beings out the pedant in me...
- sagivo 5y agoThis is why I always prefer simple mobile web version over installing apps. There's no added value for the app that I cannot get from a simple browser.
- throw10920 5y agoEvery time I see an article like this, it's another point of evidence that, no, large application sizes are not actually needed for performance/functionality/ease of development - they're just due to sloppy programming. Electron and web developers, take note.
- mwcampbell 5y agoI think the most effective way to fix this systemic problem would be for app stores to start charging developers for app size, both for storage and outbound transfer. And for desktop apps downloaded from websites, all hosting providers and CDNs should start charging for egress like the big cloud providers do, in acknowledgement of the fact that bandwidth isn't free. Yes, I recently migrated some of my company's infrastructure off of AWS, in part so we wouldn't have to pay for egress. I now believe the world would be better off if we didn't have that option.
- tantalor 5y agoIf app sizes trend down, it might serve the users well, but it would depress iPhone sales as fewer users would need to upgrade storage. Which one do you think Apple cares more about?
- srvmshr 5y agoIf App sizes go down, its a win for Apple as well: 1. Faster update downloaded to devices compared to before & to Google/Android. That's a big PR win. 2. Most badly behaving apps have tons of unnecessary process & their binaries. Also storage is taken up by UI assets. If these are streamlined & reusable, the footprint goes down. That means less RAM can still do fine.
- tantalor 5y ago> big PR win But it wouldn't move the sales needle. Nobody is going to switch from Android because they were waiting for smaller download sizes. > less RAM can still do fine That's bad for Apple because it discourages upgrading.
- srvmshr 5y agoRegarding PR, it adds ammo to their oft repeated claim of "best mobile OS" (Not that I fully agree) Size and RAM (and indirectly a modest battery life gain) will be a win for whoever uses, regardless of our personal views on this matter. When developers throw in big frameworks mindlessly, they assume best case use. Minimalist and efficient coding will actually win across the board whichever way you look. As far as Apple devices go, they are getting support way longer than Android flagships. Apple is devious possibly in many ways, but they don't get to win by 'planned obsolescence'. Much rather the opposite: as new generations of devices come in with newer hardware, they don't have to crazily support a lot of firmware and instruction sets. Only the ones which satisfies the newer frameworks. If they did, they will turn out as another Intel (which famously supported a lot of opcodes all the way back to 386). Their fanbase has some (valid) strength based on a lot of older generation devices still getting OS upgrades which they might normally wouldn't have.
- jmbwell 5y agoUnited Airlines has been posting jobs for internal application development for a while... --including at upper management levels.-- Just saying.
- kazinator 5y agoOnly 250 more to go.
- alberth 5y agoYou 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/id931370077 https://apps.apple.com/us/app/fastmail-email-calendar/id9313... [1] https://apps.apple.com/us/app/gmail-email-by-google/id422689480 https://apps.apple.com/us/app/gmail-email-by-google/id422689... [2] https://apps.apple.com/us/app/microsoft-outlook/id951937596 https://apps.apple.com/us/app/microsoft-outlook/id951937596 [3] https://apps.apple.com/us/app/hey-email/id1506603805 https://apps.apple.com/us/app/hey-email/id1506603805 [4] https://apps.apple.com/us/app/protonmail-encrypted-email/id979659905 https://apps.apple.com/us/app/protonmail-encrypted-email/id9...
- marcellus23 5y agoFastmail is also mostly a wrapper around web views (but then again, so is Hey)
- kitsunesoba 5y agoI haven’t analyzed their binaries or anything like that, but I’d wager that a significant chunk of the heft of the Gmail and Outlook iOS apps are Google/Microsoft’s custom UI frameworks.
- throwawaylinux 5y agoThat's terrible.
- deleted 5y ago[deleted]
- petters 5y agoIt's ridiculous. The complete size of Mario 64 with all assets is 6MB.
- anthk 5y agoAnd 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.
- azalemeth 5y agoI 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.
- _hhkc 5y agoThey had a similar check for jailbroken iPhones. The last time I flew with them they seem to have fixed it.
- digisign 5y agoFixed to block or not block?
- _fat_santa 5y agoUnrelated 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"
- sb057 5y ago>Yeah we close the doors once 95% of people show up So they are essentially scamming 5% of passengers out of their tickets?
- vel0city 5y agoI 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 speed things up, so if there's nobody at the gate anymore to board they might assume those passengers decided not to go on the flight. Especially with people now checking into flights the day before, the airline may not even know if the passenger is even at the airport and would realistically show up to the gate anytime soon as checking in means pretty much nothing these days. They're not scamming anyone. Your ticket said you were supposed to be at the gate to board at a certain time. You weren't there, so you missed the flight.
- kitsunesoba 5y agoAnd here I am feeling unsatisfied about the ~20MB size of the app I’m responsible for. I haven’t seriously tried to cut its size down yet, but aspirationally I’d like to cut that in half. Probably doesn’t make that much of a difference in the long run, but I have a theory that smaller binary sizes increase chances of any given user being up-to-date, thus increasing the percentage of the userbase that’s running the latest version at any point in time. iOS tends to pull updates while charging, and so an app that’s 10MB is more likely to get updated during a brief charging period than an app 50x as large, especially if the user in question has a slower connection. It also makes for smoother troubleshooting when the user can pop into the App Store page for your app and have the app updated almost instantly.
- jshchnz 5y agoThis is awesome to hear! I'm actually one of the founders of Emerge Tools (mentioned in the blog post), we work on helping teams just like United fix problems like this. I had actually tweeted at United in April of last year letting them know about these issues: https://twitter.com/jshchnz/status/1379154466872549377 https://twitter.com/jshchnz/status/1379154466872549377 If anyone at United wants help, happy to chat! josh@emergetools.com
- andai 5y agoSimilar article by same author (2017): https://news.ycombinator.com/item?id=14901051 https://news.ycombinator.com/item?id=14901051
- willis936 5y agoWith all of these complaints about app size I have to wonder: why has everyone heralded the era of static linking?
- Scoundreller 5y agoApp, OS and other file sizes are big deals in bandwidth-constrained environments. Canada has a number of remote communities with satellite uplinks, so every update means the whole town needs to download them independently. While some cos have “appliances” that ISPs can install that’ll dramatically reduce back haul bandwidth usage, I’m unaware of any that make any that work for a small community or aircraft. SSL really impacted the use of general-purpose proxies to save bandwidth. Maybe more torrent-based schemes for app stores and others could fill this gap. > Apple also supports incremental downloads, meaning you can download a “diff” of app binaries in some cases (also amazing!), but this is even harder to measure on an actual device. In my case I was trying to download the United app for the first time on a runway before my flight took off. What would be interesting is if Apple did this diff between apps, since I’m sure a lot share frameworks and other bits.
- deleted 5y ago[deleted]
- anon_9867864 5y agoApple. Hire this man!
- blah_humbug 5y agoWe need bloat, and more than that, we need necessary things to be bloated. Otherwise, how will we keep the tech sales treadmill moving? Conversely, it may be that only bloated tech will survive, as bloat drives sales, and sales means survival.
- markstos 5y agoAt a job interview, I pointed out the company could cut their bandwidth in half if they enabled gzip compression on their web server. I got the job.
- mzs 5y agotldr; strip
- account-5 5y agoOut of interest having never been on an airline that forced you to install an app to get what is now a basic customer service, what happens if you don't have a phone that supports their app? Do you get a discount?
- Arrath 5y agoYou know the answer. In fact it's quite the opposite, as another poster mentioned: they will offer to rent you an airline ipad for the flight so you can enjoy their content at a little extra fee.
- coldcode 5y agoI 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 higher ups don't give a shit. 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. I once interviewed at a major airline (not United) and at the time they had outsourced their entire app and web to some foreign companies, including any and all oversight. Their app was a POS and they had hired someone to write a new one -- the same company. Now they had no idea why it was so delayed so they wanted to hire someone to embed in the other company to spy on what was going on. Of course I wanted nothing to do with this travesty. This was years ago, no idea what happened. You'd be amazed at how pathetic mobile development can be even at big companies. Mobile doesn't have to be hard, but if management tries hard enough, can make crap at scale.
- pinot 5y agoI travel on United probably 6 flights a month on average. Overall I think it’s a pretty good app but like anything I use routinely, I could easily come up with a list of 10 complaints, from a UX perspective. My biggest is the UI only considers one half of a RT “trip” a trip.
- squeaky-clean 5y ago> I once interviewed at a major airline (not United) and at the time they had outsourced their entire app and web to some foreign companies, including any and all oversight Oh it goes deeper than that. Almost every airline (Southwest is the only exception coming to mins at the moment) also outsources their web design, their pricing structure, and their availability tracking. I've worked with several airlines that legitimately could not give us a list of all their current routes. Some of them actually paid us to scrape their website and tell them where they're currently flying and how much it cost on average.
- 5y ago
- azinman2 5y agoWhat is the Android size? Google play store tells me it varies with device, and I don’t have any android devices.
- haxiel 5y ago76 MiB for my Android device.
- bnycum 5y agoI really thought that app size would be a hinderance because of the cellular download limits (at least because I only remember to download these apps while at the airport). So I had to look it up and it appears there isn't a size limit anymore from Apple as of 2019, just a popup asking you to allow a download over 200MB. https://9to5mac.com/2019/06/03/ios-13-removes-200-mb-file-size-limit-for-app-downloads-over-cellular/ https://9to5mac.com/2019/06/03/ios-13-removes-200-mb-file-si...
- TrianguloY 5y agoOn android, the default Hello World example when you load Android studio takes more that 1MB, and it's a single screen with two words displayed. The same ninja-optimized app can be less than 1kb. All the useless space is taken by libraries, features "just in case" like login and assets, and more runtime generic things. Supposedly all that generic stuff should help for more complex apps, so for a very simple app the ratio used/unused is very high, but for more advanced apps it is low which means that the size of apps should not be linear with complexity ...yet they are, because the more complex an app is the more useless libraries are included.
- StillBored 5y agoApple should have never allowed these "non-compiled" applications. An LTO like pass/etc would rip out tons of size too simply by removing all the unused code. BTW: The last couple times I've run into this, they say use the app, but there has been a plex/etc like http video server on the onboard Wifi network which can just stream to random browsers/PCs/etc. I've yet to have any DRM/etc issues, although I suspect that might be part of why they want to push people to dedicated apps. A large number of people though just use their locked down work laptops/etc so they will have a problem when they cut off that path.
- NelsonMinar 5y agoIt'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.
- mech4bg 5y ago>It’s becoming somewhat of a popular trend in the airline industry to cut costs by having the passenger bring the hardware, and as an added bonus they get to force their way into your coveted list of installed apps. TBH I see this as a positive - less weight on the plane, less fuel consumed, less waste when these screens are junked, etc. I personally always take a ton of videos with me and just watch my own stuff, I would never trust that the in-flight stuff is working (although I admit I overprepare and it's still important to provide this). And when you're flying - having the app installed is a net positive, it has maps of the airports (with great directions, which is super helpful when you're making a connection), can manage your ticket, etc - the videos are a bonus.
- lentil_soup 5y ago> less weight on the plane, less fuel consumed For a plane that's negligible. Tbh, I don't want to sit on a 12hr flight watching a phone screen. I have to hold it on my hand, have nowhere to put it while eating, I have to plug it in to a charger as well (and it's never guaranteed there'll be a plug) + what the OP said about having to download more stuff to my phone I don't want or I might not have space for.
- mech4bg 5y agoFWIW I've noticed on a lot of airlines removing the screens have phone holders in their place and always have a USB charger. It's a moderate weight saving, there are some details in this article: https://www.fastcompany.com/3034196/airlines-are-tossing-seat-back-screens-here-is-why-thats-a-great-design-mo https://www.fastcompany.com/3034196/airlines-are-tossing-sea...
- squeaky-clean 5y agoNot that it excuses it, but having worked at a place that did contractual web design for airlines, I'd bet money that the app wasn't developed by any employees at United and instead was developed by the lowest bidding external company they could find. Based on some of the names of packages I don't recognize (CYFDCTEncoder) and some googling I'm going to guess the company was CYFuture.
- VBprogrammer 5y agoIt's times like these that I'm reminded our first computer had a 1GB hard-drive.
- Narishma 5y agoMine was 40MB and I couldn't imagine what to fill it up with.
- pinephoneguy 5y agoMeanwhile the KaiOS store doesn't even allow apps larger than ~50mb for larger devices.
- mrweasel 5y agoIgnoring the economy of the development process, vs. just being able to push out an app quickly, I cannot help wonder how small, and fast apps like this could be, without losing features. Sure stripping out symbols is a quick thing you can do, but how about eliminating the ad tech stuff (people already bought the ticket, leave them alone). Remove the dependency of 3rd. party libraries and frameworks, utilizing only the built in frameworks (or does that not make difference in iOS applications?).
- hnburnsy 5y agoCheck the article there is code for Soduku.
- hparadiz 5y agoHere I am agonizing over adding an extra 20 MB of assets to an app that is only 22 MB to support a new design.
- Spivakov 5y ago“most bloated apps are within the 100-200MB range, not 400MB.” WeChat enters the chat...
- hnburnsy 5y agoApple\Google should charge for over-sized apps, just like some airlines charge for over-weight bags.
- barrkel 5y agoThe real problem is that people no longer understand the abstractions they're using to build apps.
- sayrer 5y agoYou can't paste your password on United's inflight WiFi portal. I eventually got it to work by making Safari share it from my laptop to my phone.
- nhoughto 5y ago187MB of symbols seems like alot! Kind of funny that this bloat could be reduced by X% just by having a shorter path in the CI pipeline and not even stripping, also surprising that xcode doesn't strip swift symbols by default for a release build? Some low hanging fruit right there
- morpheuskafka 5y ago> It’s becoming somewhat of a popular trend in the airline industry to cut costs by having the passenger bring the hardware, I mean, there's virtually no one taking a flight without at least a phone if not a laptop/tablet with them, and most of them probably have a much better screen and headphone support then whatever outdated stuff would be built in to the plane. The only thing I really miss on flights that don't have the seat backs is the thing that shows the altitude and progress on the map.
- chrisseaton 5y ago> The only thing I really miss on flights that don't have the seat backs is the thing that shows the altitude and progress on the map. But you can get that on their app as well. I think flights should do-away with in-seat entertainment. I very rarely see anyone using them, and if you are unfortunate enough to be in economy, they actually take up quite a lot of your personal space. All the screens must weigh a ton as well - bad for the environment.
- preinheimer 5y agoI usually fly Air Canada (AC), where these have been more common than the us carriers i've been on for a while. I use it _every time_. Do I also have a phone? Sure, but the screen is smaller and I have to hold it. Do I also have a laptop? Sure, but if the person in front of me reclines quickly I don't want to hear a crunch. In economy I'll use the in-seat thing to watch something, and leave my laptop in my bag. In economy-plus or higher I'll put a movie on the screen and write some code on my laptop. On the AC flights I've taken I'd estimate something like 80% plus of the folks on the plane are using the in-seat stuff to watch something. The rest are asleep or reading a book.
- lkxijlewlf 5y agoMediocre developers being mediocre developers. What else is there to say?
- boredumb 5y agoI recently bought a 100$ android waiting for my phone to be repaired and the size of modern apps on older hardware render them completely unusable. It's a shame that the amount of bloat creeping into everything in the name of "developer productivity". Do we have to wait until we hit some limitation in storage size before we decide that it's simply dog shit software? Samsungs "notes" application is almost 100mb in order for me to keep track of a few kb of grocery lists and restaurant suggestions.
- larrybud 5y agoMy pet peeve: Samsung SmartThings app clocks in at 438Mb https://apps.apple.com/us/app/smartthings/id1222822904 https://apps.apple.com/us/app/smartthings/id1222822904
- tgsovlerkhgsel 5y agoUntil app stores start penalizing apps for their size, there is little incentive for developers to improve. And I guess the phone makers don't mind forcing people to buy new phones - although a shortage of space would also get people to stop buying more apps, so maybe that doesn't play into it as much as a desire to keep developers happy. Notably, the Google Play Store doesn't even show the app size. I bet just showing it below the download button would already create significant pressure to reduce size. Both major stores used to have some form of limit - either a hard one, or a soft one where users would get warnings or the apps would only be downloaded over WiFi - which kept developer madness in check, but that seems to be gone now. Some banking apps are the worst offenders, because banks know that few people will change their primary bank just because their app was too big so they don't care at all. Revolut is 200 MB (for comparison: Chrome - a complete browser! - is 50 MB), and that isn't the biggest one on my phone.
- pcurve 5y agoYeah, and given App Store owners (AAPL GOOG) have vested interest in selling more phones (or increase share), they won't be penalizing any time soon.
- WalterBright 5y agoI wouldn't be surprised that the reason the Netflix app is so much smaller is because the app is Netflix's core business, and UA's app is an afterthought. (If the Netflix app is too big to fit on the phone, Netflix loses a customer.)
- onlyontheapi 5y agoI worked for someone who took an America Airlines contract 5+ years ago. He was working on encryption, and he was like the 3rd or 4th person they brought in to do the job because their codebase was total spaghetti and no one could figure it out.
- onlyontheapi 5y agoI worked for someone who took an America Airlines contract years ago. He was working on encryption, and he was like the 3rd or 4th person they brought in to do the job because their codebase was total spaghetti and no one could figure it out.
- OOPMan 5y agoAndroid apps are also hideously bloated. It's kinda disgusting really.
- happybuy 5y agoSmall app size is one of the KPIs that I track for the app I develop. Obviously there are user benefits to smaller apps, but as a developer I feel that the app size is a proxy for app complexity and dependencies. The smaller the app, the less third party dependencies and the less maintenance required to keep it up to date and running on the latest OS releases. As a comparison, the biggest competitor to my app AdGuard is a 450MB download on the Mac versus a less than 10MB download for my app (Magic Lasso Adblock). Do most users notice? Not sure but overtime I've actually made my app size smaller simply by replacing unnecessary third party libraries with in-built, simpler functionality and it's become a more pleasant app to maintain.
- blunte 5y ago"Outsourcing".
- WatchDog 5y agoNot an IOS or mobile developer, but doesn't preserving symbols help with telemetry error reporting and stack traces?
- incanus77 5y agoWhen you build the app, you can set aside the symbols for a given version and, either manually or with tools that allow symbol upload, symbolicate things later for debug purposes.
- marvindanig 5y agoIt is possible to shave the remaining 252MB as well by using webassembly, a webview wrapper from a service like Red Goose, and an intrinsic css framework like Toucaan. [1] https://github.com/Toucaan/toucaan https://github.com/Toucaan/toucaan
- stereo 5y agoApple could and should run this as part of their compression routine. They should also optimise images - it's very common for apps to bundle images that can be shrunk without any quality loss. ImageOptim is a decent tool to throw your images at: https://imageoptim.com/mac https://imageoptim.com/mac
- AniseAbyss 5y agoDon't see the point personally, even €400 phones have 256 gigabyte storage. And that will only increase as time goes on.
- stuckkeys 5y agoInteresting approach. I wonder if the bandwidth can be optimized also.
- inadequatespace 5y agotldr: he stripped the binaries