Emerge helps teams like @Spotify, @Duolingo, @Bumble, @Square, @Tinder, @Dropbox, @OpenAI & @CashApp build better mobile apps šŸš€ Now a part of @Sentry 🧠

Fully Remote
Good question @VishalMalvi_ ! Here's what's going on behind the scenes of the @gmail iOS app šŸ‘‡
52
388
4,990
1,920,490
1. why do I need to install an app to set up a printer 2. why is that app 400+ MB
21
5
278
9,408
...I knew this was familiar 😐
Time to open up the printer to see what’s going on … aka time to look at the HP iOS app to see why it’s 400 MB šŸ–Øļø
18
1,228
Emerge Tools retweeted
At @Sentry’s AI offsite this week, @indragie & I decided to kick things off with a bangā—ļø We’d seen a video where friends bought each other ridiculous shirts before a flight and had to wear whatever they were given... so naturally, we did the same for the offsite (ft. @zeeg) If you see us around SF today, make sure to say hi
5
1
31
7,129
Other notes: - Flutter app - 207 MB of dynamic frameworks (worse for size compared to static) - lot of external dependencies
1
6
693
The real TL;DR
Replying to @emergetools
There's no excuse anymore, Sentry Size Analysis is free 100 builds / month That's a nightly + weekly releases on Android & iOS and then some docs.sentry.io/product/size-…
5
871
We focused on the video file b/c it's so easy to optimize + having a 23 MB onboarding video, seen once by user, is ... not ideal But all the images are also easily optimized, saving 30+ MB. Optimizing the video & images + stripping binary symbols would save ~75 MB, a third of the total app size
2
6
643
Here's the metadata comparison of the new file + a side-by-side of a random frame, which is virtually indistinguishable Note the lower bitrate (15.45 Mbps vs. 3.42 Mbps) and file size (23.2 MB vs. 5.1 MB)
1
6
648
TL;DR on the video file, it's encoded with way higher bitrate than needed If you want to learn more about bitrate, check out this thread
It’s Friday, we do have a job, and we do have things to do But we’re going to tell you about bitrate today Why this @weedmaps video on the left is 14x bigger than the one on the right, despite looking the same 🌿
1
10
882
It's a 12 second video of some wings flying around What's egregious is that 1 line of ffmpeg reduces this by ~80% (and you could do even more)
1
23
1,291
This code is re-encoding the video with a constant rate factor of 28 (`-crf 28`) Low CRF (0) = higher quality, larger file size High CRF (51) = lower quality, smaller file size In this case, CRF 28 gave us the same video with a lower bitrate & a visually similar output
1
8
661
Alright, we bit It's the 83.5 MB flutter assets that grind our gears w/ an egregious example of bad practice
Every app now is insanely sized. Why is my Wingstop app half a GB. How does that even happen!! These ppl should be beaten in the streets until it gets under 50mb again
4
3
68
16,421
Here's what's in flutter assets. Everything in red can be optimized... Notice the biggest node is `onboarding_present.mp4`, which is a 23.5 MB video, that presumably is only shown to a user once during onboarding
1
16
1,721

ALT Holes Im Tired GIF by Synergistic Movement

Every app now is insanely sized. Why is my Wingstop app half a GB. How does that even happen!! These ppl should be beaten in the streets until it gets under 50mb again
1
13
2,005
There's no excuse anymore, Sentry Size Analysis is free 100 builds / month That's a nightly + weekly releases on Android & iOS and then some docs.sentry.io/product/size-…
9
3,079
Some other notes: Opus generally did a great job on all site recreations, regardless of scenario, but did see improvements w/ screenshot access Here's an example of Opus recreating linear, 1st image is no screenshot, 2nd image has screenshot access
1
2
321
Might put some more rigor into this - would be cool to see how different models improve (or not) across the scenarios. For convenience this was only done on Anthropic models
1
2
313
Influenced by the release of Snapshots on Sentry We're bullish on snapshot testing to both guard agent changes + as an artifact that can be used by an agent, excited to see more development here 🫔 docs.sentry.io/product/snaps…
3
339
Here are the runs for the agents with screenshot access, subjectively closer to the actual site
1
2
246
Take this Netflix example. Here are 5 sonnet runs of ā€œAgent 1ā€ (left is actual site, right is agent output) In every case, the agent failed to get the background right
1
2
247
First step: a scraper to take screenshots of a websites We then had 3 agents try to recreate the reference image Agent 1: just told to recreate as closely as possible Agent 2: can screenshot its work and reference it Agent 3: can screenshot + run a pixel diff
2
3
553
Each agent output gets diffed via the sentry-cli to grade how "pixel perfect" it was While the agents w/ access to additional tools had a better pixel diff grade, the # difference wasn’t that significant until you actually look at the output
1
3
346