The Santander UK iOS app is 613 MB and 35% of it does nothing
It could just be simply about a bad build system that does not efficiently trim out unused dependencies, or people are using unnecessary dependencies in the first place. Which happens all the time everywhere.
And to be honest, I can totally see why this is happening. Santander does not have a lot of incentive to improve this. The distribution of the app package is done by Apple, and they don't charge you by what your file size is or how much bandwidth this uses. They charge you a developer fee and 30% IAP. If there is no (direct) extra cost, and trimming the file size could mean additional work on the developers and may cause things to break if not handled well, someone could be blamed for it. So why take the risk.
And actually, it is possible that nobody internally at Santander ever looked into this problem.
How do I know? The build system at my company sucks -- tons of waste of build time, memory use, disk space, debugging time, communication etc. I myself have brought up many of the issues. Nothing happened. Why? Because things are working, and nobody wants to do something when there is only risk but little benefit (to them).
As of why people aren't being rewarded for saving CI costs, I'll leave that as an exercise for the reader.
I encourage everyone to go to app store -> profile -> swipe refresh, and see how heavy all those apps updates on iOS are few examples:
Gmail: 570 MB
Facebook: 345 MB
Booking.com: 260 MB
AirAsia: 510 MB
Reddit: 330 MB
Slack: 400 MB
X: 290 MB
Google Translate: 180 MB
Uber: 480 MB
Speedtest: 150 MB
It's horrible how heavy all those apps are. I barely can find app update that is less 100 MB.
I am old enough to remember times when 100 computer science students did their exercises on a VAX 11/750 with 4 MB of main memory. Admittedly it was a bit laggy when all 15 terminals were in use during peak hours. I don't remember disk sizes.
Now main memory is a different story than application size. But in most cases your main memory must be significantly bigger than size of a single application. So for that 4 MB VAX running a 2 MB application might be suitable. Let's reduce the 15 users to one, that's progress over 4 decades...
Now the question: What can that 2 MB VAX banking application not do, that the 613 MB iOS application can?
* Cryptographic operations have developed. But I am not aware that those used by a banking application are particularly memory hungry.
* The screen resolution is different, but banking on 80x25 characters would work just fine at least outside of CJK.
* The touch input might be problematic, so we would need to use a Blackberry or Nokia Communicator with physical keyboard. That would not only be a disadvantage IMHO.
(The last 2 items are largely influenced by the operating system. But of course that would need to be very different to run on a 4 MB computer.)
What else am I missing in this thought experiment? Honest question.
This is all a pitch to run Emerge tools in the CI/CD process.
So from Santander’s side:
Introduce a third party dependency
* that has to go through the appropriate auditing
* that adds a supply chain attack vector
* that likely slows down internal development by adding an extra step to the build process (no you can’t just do it on release builds that would be crazy)
* with an added cost
All for something most likely no customer (or statistically no customer) ever complains about.
Santander doesn't think you care that their app is so big.
Are they right?
Personally although I find this wasteful and sloppy, if Santander have better interest rates or branches close by, or basically anything else going for them then I'll happily ignore the size of their app. So at least in my case they'd have been right to assume that I don't care.
Breakdown of the app is available here: https://www.emergetools.com/app/example/ios/examp_fCeiq7Z6xe...
At this point I’m just assuming that the developers of such apps receive a large gift basket from Apple each Christmas…
I’ve definitely upgraded storage sizes for this reason alone at least once.
here's the unroll: https://threadreaderapp.com/thread/1831772650685018352.html
I'm a victim of the Santander app in another country and it's not only "large", lot of functionalities are there but when you try to use them it just says "this function is only available on our website".
Also it super slow and I have to kill the app a couple of times a week.
Except if I have to do a wire transfer I always use another app from a Fintech company.
This isn't a surprise at all. Most iOS apps have 4 or 5 analytics frameworks included that are probably at least 50mb each. Airship (maybe the defacto standard framework for push notifications) is over 100mb.
Throw in a few pictures and videos and you're very quickly at 613mb.
Doesn't surprise me. It's probably something generic they bought in and customised.
Then maybe this is a problem with Santander in general, because my own Santander app for Mexico eats over 460MB despite only modest use and I see no reason why it should. I suspect a mountain of bullshit consume tracking bloat and other related nonsense while they offer you their "service" in the background.
lets be fair. It says: 35% of it does nothing -for the user-
Maybe if does something for the bank then. An app can have different tasks and not all must be related with communicating with the users. Machines need communicate with other machines, or send data, or store a database of legal texts or exception handling cases.
90% of the instruction manuals of appliances just are spent saying the same in twenty different languages that I will never use. Is this outrageous? Maybe. Maybe not
Or maybe this apps are just mining crypto in the background and sucking battery. Who knows?