Guess what: Sentry acquired @emergetools.bsky.social! π₯ This is a major win for mobile developers: we're integrating their tools and expertise to help devs build amazing mobile experiences with smaller apps, fewer bugs, and happier users.
See more π blog.sentry.io/emerge-tools...
Posts by Emerge Tools
Couldnβt be more excited about the future π
Thank you to everyone for your support, can't wait to share more updates soon π emergetools.com/blog/posts/e...
Emerge Tools is joining @sentry.io
@jshchnz.bsky.social and @sond813.bsky.social's thoughts belowπ
Localization overview + how Airbnb optimizes localization size + impact for Garmin Connect x.com/emergetools/...
Ok Pepe Silvia done, even though there's more to share, might do a John Deere II π
Informational π§΅s below
It was interesting to see how many different apps John Deere has & learn that they do way more than "just tractors"
All their apps are also built differently. There's a 317 MB "Visit John Deere" app that's almost all unity (stripping symbols would save ~60 MB)
Again, an app that is designed for large tractor usage might be downloaded in less than ideal network conditions
There's some relatively low hanging fruit that would probably make user's lives easier, regardless of their network connectivity
Of the app's 412 MB, 112 MB are html files. Assets are 214 MB
The HTML seem to power web views to different tractor models, but there's a lot of duplication
Between handling duplication and image compression, TractorPlus could shave 79 MB, reducing app size by ~20%
Ok so what about TractorPlus?
Well they're actually shipping a ~112 MB of html files in their en.lproj, which we initially attributed as a localization even though it isn't really
App size is crucial in areas w/ limited connectivity. Every byte counts more
Ops Center manages "equipment & farm operations" globally β possibly used in remote areas
If John Deere took Tinderβs approach, theyβd cut l10n from 113 MB β < 20 MB, reducing app size by a third
Let's start with βοΈ Ops Center
They support 33 languages. The largest l10n is 5.6 MB for Tamil. The smallest is for English at 2.6 MB
Ops Center also supports languages like Bengali, Croatian, Kazakh & more. Clearly more than our initial thought of "American tractor company"
Re John Deere our thought was "aren't they an American tractor company? Why is half their app localizations?"
And then you see that despite having similar l10n sizes, Ops Center supports 33 languages, but TractorPlus only supports english?
Something has to be going on here...
Firstly, apps like FedEx (160 MB l10n) or Garmin Connect (90 MB) inefficiently use localizations
Tinder recently wrote how they used Emerge to reduce size of l10n by 95%
medium.com/tinder/how-t...
Airbnb did a similar optimization - we'll link to a few π§΅s at the bottom
Some context - we were poking around our localization data and John Deere's "TractorPlus" & "Ops Center" jumped out
π TractorPlus is 412 MB - 115 MB (32%) is l10n
βοΈ Ops Center is 276 MB - 114 MB (42%) is l10n
So why did this jump out?
Ok, time for a bit of a rabbit hole
...or should we say... Deere hole π€¦
π§΅ Looking through the @johndeeretractor.bsky.social apps. (Pepe Silvia warning...iykyk)
p.s. l10n = localization
Spring has sprung! πΈ
Our Bits & Bytes newsletter this month features @deepdishswift.com, our new Reaper and Size Analysis insights, Custom Precision for Android, @wired.com , and more π
Can't wait to see everyone in Chicago soon! πππ
Link to the full analysis:
www.emergetools.com/app/example/...
We found some great images in here π
A general breakdown
Total install size - 9.4 MB
Frameworks - 3.8 MB
Plugins - 151.6 kB
Only T-2 days until @DeepDishSwift!
Let's take a look at the unofficial deep dish app by @mortengregersen ππ
When Threads first released in 2023, it heavily leveraged existing IG code
While there are also many shared IG modules in Edits, it doesn't seem to be the same extent as threads π§
A general breakdown
Total install size - 131 MB
Main app target - 103 MB
Assets - 11 MB
Localizations - 8 MB
We heard that Meta released a new editing app yesterday π
Compared to other top editing apps, Edits is actually much smaller in size
this was actually first order of business when we joined @bsky.app πββοΈ bsky.app/profile/emer...
And ICYMI, here's last week's announcement about how our size analysis treemap can parse jsbundles more granularly now π bsky.app/profile/emer...
Using the same example from last week, stripping the debug info means Shopify could cut 9.5 MB from their app
The debug info in these files are meant to give you better stack traces for errors, but it doesn't need to be shipped to prod because you can provide it separately to crash reporters (enabling Hermes source maps will create a separate file for you) π‘