Most native apps are some half gig large where even the heaviest website is a few mb. They dont let you highlight text and have other bizarre design choices. Even worse, they request importing contacts list which isnt even an option on the web.
Native apps could be butter but more often than not they are like margarine. Smooth, oily, and not good for you.
Capital One is 435MB...
Garmin Connect is 518MB for some stupid reason, while Strava is half that and Gaia GPS (great app), is under 100.
Bloat like that is usually due to unnecessarily convoluted tech stacks pulling in a list of dependencies that goes out to Mars and back, or for globally targeted apps sometimes it’s translations for everything in the app for hundreds of different languages.
Cross platform frameworks really aren’t the magic wand they’re sold as.
Disagree about UIKit, mainly cause of Autolayout, unless it's gotten reworked in the past 8 years. When I started using RN, I had zero web experience, and still it was way quicker to set up a basic UI than in the UIKit stuff I'd been doing for years. And for all that setup, Autolayout doesn't even seem to future-proof your stuff that well. An abandoned ObjC iPhone app I wrote in high school using C-style macros for layout worked perfectly fine on the newer screen sizes that broke most other apps.
I thought maybe I was stupid, but the other iPhone devs I worked with constantly had problems with Autolayout. Maybe a real expert iPhone dev won't, but it shouldn't take that.
Pure code UIKit using autolayout’s anchors API is quite serviceable, and if you follow recommendations (use safe area and keyboard constraints! They exist for a reason) reasonably futureproof. The iOS apps I’ve worked on have needed very little change year to year for quite some time at this point.
But this is still incredibly ridiculously comically gross. The fact that we can afford it these days is an irrelevant seperate thing. These numbers are just unjustifiable for what most apps actually do.
For a couple examples pulled from my TestFlight list, there’s a social media site reader app that’s 7.6MB and a text editor that’s 697KB. Those sizes aren’t the least bit unreasonable.
The former has convenient distribution, but worse performance and other limitations.
The latter can be tricky to keep updated, ensure the environment is the same for everyone and/or cross-platform differences, etc., but significantly better/faster.
But both binaries about the same size. Assuming using something like sokol or SDL3.
Reddit always asks you to use its native app, for example. Why the fuck would I care so much about Reddit that I want it outside of my browser? Same goes for any other website.
I understand why, but I’m not a fan of hybrid apps. I like to do native, which results in much smaller, faster, and more efficient apps. It’s just not as cost-effective, if you want to support multiple platforms.
However, native apps aren’t automatically well-behaved ones. In fact, they usually have access to even more tools for eroding privacy or user agency.
Good behavior is up to the app developers, and that doesn’t seem to be much of a priority, these days.
But I'll eat my hat before I'll install Reddit's own app. Reddit killing off 3rd party apps is why I post here and not there.
I don't think being nativr is what made 3rd party apps great
Back in the early 2000s, I loved desktop applications. My thinking was that there's no way a web app could do what a desktop application could. I loathed slow, proprietary, online-requiring, HTML based web apps .
25 years have passed, and now we DO have some "native" device apps... but they are just HTML web elements bubdled in a freaking custom browser.
Edit: anyone remember the "PortableApps" wave? I loved having that in a usb drive.
iOS:
wechat: 740meg
gmail: 672
google chat: 585
uber: 582
tiktok: 572
headspace: 498
instagram: 467
doulingo: 462
bank of america: 456
capital one: 435
expedia: 412
linkedin: 402
doordash: 392
google: 379
facebook: 365
unitied airlines:355
chase: 352
google photos: 348
line: 346
amex: 339
google maps: 336
youtube: 329
booking.com: 320
citi: 319
amazon music: 317
snapchat: 316
lyft: 307
wells fargo: 292
strava: 283
twitch: 279
rotten tomatoes: 262
airbnb: 254
youtube music: 245
whatsapp: 239
mlb: 220
discord: 212
tinder: 202
of course Apple doesn't list the size of their own apps like Apple Maps, Photos, Music, etc...I am quite surprised at a few apps I know are just a webpage, because I can to go to the webpage and see it's exactly the same, are still 40meg to 80meg. I'd expect them be able to be as small as a few K. Open a webview, navigate to https://mycompany.com. The end
Native apps make sense when you need to tap in to platform specific features like the Lidar api and such. They don’t make any sense for most websites.
What I miss are the days where one could Win32 call a window up, and it looked like every other. Not sugar for me and none for thee.
I cut my teeth programming GUIs, I still like making GUIs - immediate mode guis, event based guis, animated guis and informational guis. I left front-end web dev when every 6 months there was a new framework, a new new, and everyone dropped everything for it. I understand why React ate the world at the time but it’s gotten to the point where it’s no longer standards driven, its ecosystem driven, and even then it’s leaking.
What I love about these hybrid apps though is that from Apache Cordova (PhoneGap) onwards, they’ve all looked really really good. Proving that a normal user can’t tell the difference. Which makes solo-dev or small-dev dev easier. Go with what you know. No need to learn flutter, or SwiftUI, or Kotlin.
Gmail: 612mb
Facebook: 359mb
YouTube: 303mb
Amex: 365mb
I'm still skeptical (or just hopeful?) that there's some storage accounting bug here, and it's including caches. I'm not in a place to plug it into Xcode right now, maybe someone else can check the actual IPAs?edit: also, I do see Apple's own apps in mine. Music reports 39mb; Photos 791kB (lol?)
Edit: I'm not trying to be rude (it comes naturally). But you just explained "great" as "better, with more". I guess smooth might mean faster, which might be because it isn't doing ads and tracking. It seems to come back to third-party being the crucial difference, and "app" not mattering.
WAAAAAY too often the 1st party native app is exactly what the other poster said: a browser context with access to some local native API's in order to hoover more data about the user. It is rare that a first-party app actually has some effort put into it to be a quality app. Is in fact so rare, that the sites that actually put in the effort suffer because folks can't believe that a native app for a site could actually be better or worth it.
[0] Unfortunately, the app I used in the before-time did not implement queuing for submitting comments/posts so that functionality was broken while you were between stations, and videos weren't cached.
Third party clients could be webapps, too, of course.
my youtube is literally 10gb because I use it a lot, doesnt mean youtube is "bloated" or "heavy"
This is an interest of mine, but I’m still fingerprinted per a recent comment. May I ask:
How?
I don't think the reddit clients work this way though.
There aren't really any major technical reasons why the mobile site couldn't be as good.
I used Boost. Its ads were not intrusive (and I despise ads) and the UI was written with a small touchscreen in mind. If not for my distaste for phone keyboards, I'd say it was a better experience than the website on a desktop.
Would it be possible for a mobile browser to have a better experience? I don't know. I value my sanity too much to do web development. But Reddit was absolutely determined to make its mobile site unusable and the official Reddit app had a bad reputation (and I wouldn't give those bastards the satisfaction after being nagged so much to install it), so a 3rd party app was the only reasonable solution.
Not to defend Uber, but there was a post here some time ago where one engineer explained why it's so large (sadly can't find it anymore): it's due to a lot of different implementations for different markets (some masks may have slight differences in different countries) and their choise to re-implement the masks multiple times.
Their new version is incredibly slow, moves me to sub-pages trying to expand comment threads (very disruptive if I saw something in the Google preview snippet and want to control F to it, but whatever comment that was literally isn’t loaded), and sometimes outright fails to load. now I can’t/wont use it.
So screw reddit, it’s a glorified q&a site, with sub forums run by fedora neckbeards, that’s gotten uppity and chosen to be hostile to users. And for some reason Google hasn’t just downranked it to death. The other day there was a thread complaining that their AI responses are reducing websites clicks. I hope that it is very damaging to reddit.
On desktop, the browser’s always been the best way to use Reddit — as long as old.reddit still works. If you are on a non-Safari browser, there's also RES.
Same goes for many other sites. Like HN — it’s fine on mobile browser unless I bump the font size, then it pretty much breaks. But I’m not installing an HN app for something the mobile usage time share is barely 5–10%.
I'm on old.reddit.com too and I use the mobile app (including the 3rd party ones back when they existed) for one primary reason: Two windows I can quickly switch back and forth on. On my phone I use Reddit to look up things. I can have a Reddit thread on one window and a Google search on the other and go back and forth. In a browser switching tabs back and forth is painful, often reloading pages, losing the spot in the browser, having this url bar and top bar taking up tons of screen space.
--- start quote ---
Old Reddit has the advantage of being pretty much static non-interactive content. No video, tiny thumbnails, and barely any JS or styling. Some people like this and some don't, but the end result is a very lean website that performs well out of the box.
https://x.com/jimsimon_/status/1841087335414280571
Suffice to say, I'm on the frontend perf team and we're acutely aware of these problems
https://x.com/jimsimon_/status/1841092341991403974
--- end quote ---
This was in October 2024.
Which is of course a bunch of bullshit when you consider that Reddit's backend returns most data in under 400ms, and it takes Reddit frontend 3+ seconds to render it
It could be that they are just incompetent.
Because they were competently designed. But you could put that same design into a web page and it would work fine.
Unfortunately, that only ever happens when some third party gets involved, and rarely survives long - but the experience, however brief, is glorious. See: RIF ("Reddit is Fun") on Android; Ripcord (Slack/Discord client) on Windows.
Especially so in the EU, where on one hand they're annoyed at big tech, and on the other they're forcing citizens to be customers. Even services which are web-based rely on an app for login authentication.
McMaster-Carr begs to differ. Hell even old.reddit is pretty snappy (but deliberately shittily rendered on mobile). Websites can be fast if you don't stuff them with bullshit or degrade then on purpose to drive traffic to the app.
Heck, if you are a world business and the app isn't your core value prop, whats your case for investing anything more than the bare minimum in creating your app?
You can find that in the phone storage settings:
iOS: 12 G
Keynote: 498 M
Numbers: 482 M
Pages: 455 M
Clips: 213 M
Maps: 81 M
Watch: 70 M
Find My: 60 M
Music: 38 M
iTunes U: 35 M
Support: 34 M
Podcasts: 32 M
Books: 31 M
iCloud Drive: 30 M
Freeform: 19 M
Fitness: 18 M
Notes: 17 M
Journal: 15 M
Home: 10 M
App Store: 8 M
Weather: 8 M
Mail: 7 M
Files: 4 M
Health: 3 M
Measure: 3 M
Voice Memos: 3 M
Calendar: 2 M
Clock: 2 M
Safari: 2 M
Shortcuts: 2 M
Translate: 2 M
TV: 2 M
Calculator: 1 M
Facetime: 1 M
iTunes Store: 1 M
Tips: 1 M
Wallet: 934 K
Messages: 860 K
Photos: 791 K
Compass: 712 K
Camera: 635 K
Contacts: 598 K
Phone: 570 K
Magnifier: 516 K
Passwords: 213 K
There's also an "Apple Inc." listing, which appears to be "shared" between a lot of their apps which clocks in at 204MMy takeaway from having gone through the list and compared to the various 3rd party apps:
1) Apps can absolutely be smaller. Plenty of stuff in the <200MB range including things like Signal, OBD Fusion and Infuse
2) Games are often big, but there's a surprising number of "simple" apps that are larger than some of the games
3) The largest apps seem to be from companies that you would expect to be doing the most tracking of your data
4) Apple's first party app sizes probably explain a little about why they weren't in a hurry to upgrade storage sizes
But if they had a native app (do they?) I imagine they would have the wherewithal to build the app natively, with the same stellar navigation of their website, and maybe some native-only features? Imagine if you could use the 3d sensor + camera of an iPhone, and point it at an assembly, and the app would identify the parts it could, and you could order with one click, or integrate with a local ERP or other systems...
Not nowadays they aren't.
And haven't been for at least a decade!
It is quite subtle thing in a very small part of the service-worker code but it is not like any random update can brick your app.