Over the past few months, we've been on a mission: make Acadeva faster, lighter, and more responsive. Not with flashy new features, but with the kind of work that happens beneath the surface. The work that makes everything you already love about Acadeva feel better.
Today, we're excited to share what we've done.
The numbers tell the story
When we started, the Android build was 49MB. After removing unused fonts, converting images to modern formats, and pruning dependencies we weren't actually using, we brought it down to 17MB. That's 32MB lighter, which means a smaller download, less storage on your device, and faster updates.
But size was just the beginning.
Making every tap feel instant
We found that every time you opened a screen, the app was making two separate calls to read your login session, one after another, waiting for the first to finish before starting the second. Multiply that across every screen in the app, and it added up to a lot of unnecessary waiting.
We built a helper that does both reads once, remembers the result, and shares it everywhere. Now, screens load noticeably faster because they're not redoing work that's already been done.
Smarter errors
Here's something you might not have noticed, but we did: when something went wrong, Acadeva would show you the same "you're offline" message whether you were actually offline, or the server returned an error, or your session expired.
Worse, that offline screen would quietly retry itself every time your connection flickered, which meant a struggling server sometimes got hammered with requests instead of a moment to breathe. We rebuilt the way Acadeva handles errors so it now tells you what actually happened: offline is offline, an expired session asks you to sign in again, and a real server hiccup says so plainly. Each one only retries when retrying makes sense.
The chat that keeps up with you
Group chat is the busiest screen in Acadeva, and it was doing more work than it needed to. Every time the keyboard resized, or a scroll button appeared, or you selected a message, every message bubble on screen would quietly re-draw itself.
We taught each message bubble to sit still unless it actually changed. Scrolling is smoother, typing is snappier, and the whole conversation feels lighter, even in a group with hundreds of messages.
Lighter images, everywhere
A big chunk of that 32MB came from images that were far larger than they ever needed to be. Our streak illustrations were two to three times wider than any phone screen could display. Badge icons were shipping as heavy, unoptimized files. A math rendering library was bundling 24MB to use less than 2MB of it.
We resized, converted to modern WebP format, and pruned. Streak images went from 3.9MB to about 70KB. Badges dropped from 5.5MB to 1.2MB. Images across the app now load lazily, only when they're about to scroll into view, so you're never waiting on pictures you can't even see yet.
Letting the app rest
We also found background timers waking the app up roughly every second, forever, checking for downloads and connectivity even when there was nothing to check. On a phone, that quietly drains battery and adds stutter to animations.
We replaced the constant polling with an event-driven approach: the app now reacts the moment something actually happens, and stays quiet the rest of the time. Your battery will thank us.
Why this kind of work matters
None of this shows up as a shiny new button. You won't find a changelog entry that says "we made a helper function." But you'll feel it, in the app that opens faster, scrolls smoother, downloads quicker, and asks less of your phone.
This is the same philosophy I wrote about in Designing for Constraints: the best engineering often isn't about adding more, it's about respecting the limits of the devices and networks our students actually use. A lot of the people who study on Acadeva aren't on flagship phones with unlimited data. Every megabyte we save and every millisecond we shave is a small act of respect for them.
What's next
We're not done. This round focused on the foundation: size, startup, and the screens you use most. The work continues, and it continues quietly, in service of one thing: making studying easier.
Faster, smoother, and built to make studying easier. That's the Acadeva we're building.
