These are the best 🥲... breaking down why @LinkedIn iOS is half a GB
Here's a top level view of the latest version of LinkedIn
300 MB for just dynamically linked frameworks & Plugins is...a lot. In fact, just the Dylibs & Plugins today are bigger than the entire app was back in November 2022 🫠
And the Plugins and Frameworks seems to be where the greatest inefficiencies lie. Here is a more detailed look at the LinkedIn Plugins + the dynamically linked VoyagerLibs.framework
Notice anything fishy?
First off, the 2 plugins + VoyagerLibs are all shipping ArtDecoIconsResources.bundle (~8 MB). This bundle is already in the Voyager Framework, so it should be possible to share with the Plugins...but LinkedIn is still duplicating it
If you look into TodayExtension, NotificationExtension, & VoyagerLibs, they share many class names (one example in screenshot)
While we don't know for sure if they are duplicates from public build analysis, it appears like the extensions are a subset of the VoyagerLibs library
Here's something else that jumps out - in March 2023, the TodayExtension was < 400 KB. Today its ~60 MB...
Seeing as Today Extensions have been deprecated, its doubtful that they added THAT much functionality to them
It seems there's a chance that LinkedIn is statically statically linking dependencies in their Plugins rather than using the resources from VoyagerLibs
If that's the case, then the Plugins (109 MB total) have a significant amount of unnecessary size bloat
Separately, here's ~75 MB of insights that we're picking up
If you want to explore our analysis on the latest version of LinkedIn, you can check out this page
emergetools.com/app/example/io…
And coincidentally, @jacobs_handle wrote a blog post for us just last week about how to avoid duplication in Plugins
Please RT this thread if you enjoyed it 😁
emergetools.com/blog/posts/mak…
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.