5 ms·
"The Lyft app has hundreds of duplicate files, the largest consumer of space is a single asset catalog copied 73 times in separate bundles. Another asset catalo
by rememberlenny 6y ago
"The Lyft app has hundreds of duplicate files, the largest consumer of space is a single asset catalog copied 73 times in separate bundles. Another asset catalog that is virtually identical except for the timestamp at which it was created is copied 67 times. Each of these contain nothing but 482 colors (colors can be stored in asset catalogs to simplify management of dark mode). With each one taking ~250kb these quickly eat up 35mb."
I read this as: Lyft installed Dark mode for 35mb. I can only imagine what my JavaScript modules are doing behind the scenes.
- trevor-e 6y agoMy biggest complaint with iOS development is how confusing Xcode's build system is. Extracting code out to shared frameworks is a confusing process and I can understand how so many of the top apps get it wrong. Also, it's clearly not a priority for Apple because they don't provide easy inspection tools. Best case for them is the user buys a new phone with more storage.
- rememberlenny 6y agoI’m curious - does React Native/Expo do any better job at this, with tree-shaking and package building?
- jamil7 6y agoExpo produces ridiculously huge bundle sizes. I Would steer clear of it.
- notsureaboutpg 6y agoExpo apps are notoriously enormous. But, I tend to bend the other way and I think programmer velocity is more important in 99% of scenarios than 30MB vs 100MB app size
- sond813 6y agoYep this is exactly the problem I'm trying to solve! A lot of large app companies have switched from Xcode to third party build systems like Buck or Bazel. This can make things faster but even more confusing. I've found analyzing the actual build products to be the best solution to make sure nothing unintended is happening.
- tomasreimers 6y agoInteresting! Are you interested in going back into the build process to try and thin the app directly? Or just in helping developers identify the sources of app size?
- sond813 6y agoCurrently identifying sources and offering suggestions for how to make improvements. For many apps this can reveal a lot of opportunity!
- saagarjha 6y agoI agree that it's not necessarily the most straightforwards, but I would think that in the hundreds of engineers they have at least some have figured out how it works to the point to which they can do this…