// Blog
Notes on mobile systems,
shipped from the trenches.
Latest writing pulled live from Medium. Performance, architecture, and the messy reality of shipping at scale.

Understanding Context in Android: When to Use It and Why It Matters
NON-MEMBER Continue reading on Medium »

You Don’t Notice Tech Debt — Until It Owns Your Codebase
A cautionary tale of two modules, a looming deadline, and the civil war that happens when architecture meets reality. Continue reading on Medium »

Android Lifecycle in Jetpack Compose: How Activities, ViewModels & Composables Work…
NON-MEMBER Continue reading on Medium »
Creating a Splash Screen in “Aural” App (Android + Kotlin + Jetpack Compose)
When a user opens your app for the first time, the very first few seconds matter.  That short moment before the main screen loads — that’s… Continue reading on Medium »

Cloning Spotify on Android: Building a Music Streaming App Step by Step
NON-MEMBER Continue reading on The Junior Developer »
SharedPreferences vs DataStore: Choosing the Right Local Storage in Android
NON-MEMBER Continue reading on Medium »
ProGuard Rules in Android: What They Are and Why You Should Care
Non-Member Continue reading on Medium »
Why ARC Is Best with LLVM and Swift (and Doesn’t Make You Cry)
If you’ve ever written manual memory management code and felt like you were defusing a bomb with every malloc and free, welcome to a… Continue reading on Medium »
Why Instagram Can’t Upload Large Videos in the Background on iOS (But Android Can) — The Truth…
If you’ve ever tried to upload a large video or a high-res photo to Instagram while doing something else on your iPhone — maybe checking… Continue reading on The Junior Developer »
☕ Product Flavors in Android: Brewing Staging and Production Builds Just Right
Imagine you’re running a coffee shop. You’ve got the same espresso machine (codebase), but you’re serving two kinds of customers: your… Continue reading on The Junior Developer »