RSS Feeds
Copied to clipboard
Development

Case Study: How I Sped Up Android App Start by 10x

Real case study of Android app optimization: how to reduce cold start time from 17 to 1.7 seconds, improving retention from 82% to 98.5%. Concrete solutions: migration to Splash Screen API, background task system, reactive data loading, and backend optimization.

Read →
Development

AGP 9.0 is Out, and It's a Disaster. Here's Full Migration Guide so you don't have to suffer

I migrated 150k lines of code to AGP 9.0 and wrote a comprehensive, step-by step guide to migrating large Kotlin Multiplatform projects from AGP 8 to AGP 9, covering all breaking changes including removed build types, BuildConfig issues, NDK restrictions, and the new DSL syntax.

Read →
PersonalDevelopment

My New Product is Myself. How I Became a Consultant in the Age of AI

I found my calling as a consultant - the story of how I saved a business millions and created my best product - myself.

Read →
AIDevelopment

What are AI agent skills and how to use them - complete breakdown with examples

Agent skills are a way to progressively disclose context to AI through markdown files, which saves tokens and boosts performance. I explain why you need them, when to use them, how to create them, and debunk the myths.

Read →
DevelopmentAI

Agents and Gradle Don't Get Along - I Fixed It in Two Commands

Introducing ksrc - a CLI utility that simplifies searching and viewing Kotlin library source code from 15+ commands down to two for your AI agents.

Read →
AIDevelopment

I spent 400 hours working with AI agents and found the best one - here it is.

Detailed comparison of Codex and Claude Code after three months of using both tools. Breaking down the pros and cons of each, model features, harnesses, pricing, and revealing who I paid $200/month to

Read →
Development

I compared 17 Kotlin MVI libraries across 103 criteria - here are THE BEST 4

Comparison of MVIKotlin, FlowMVI, Orbit MVI, and Ballast based on research across 70 Kotlin architecture libraries and 100+ criteria, with examples, pros, cons, and use cases for each. Includes a public spreadsheet comparing 70 Kotlin MVI and state management libraries.

Read →
Development

I Found the #1 Cause of Freezes in Your app, and Here's the Proof

SharedPreferences in Android are leading to ANRs through a hidden mechanism that Google tried to lie to you about. I completely expose them with proofs.

Read →
Development

I achieved 0% ANR in my Android app. Spilling beans on how I did it - part 1

After a year of work, I reached 0% freezes (App Not Responding or ANRs) in my app. Sharing a complete guide with 12 tips: from removing SharedPreferences and enabling StrictMode to fighting memory leaks.

Read →
Development

How I built a game engine using MVI in Kotlin and avoided getting fired

I rebuilt a legacy game engine from scratch using MVI architecture and Kotlin, 7000+ -> 400 lines, 20s load time -> to 1.75s, crashes from 8% to 0.01%, and 1700% better event processing throughput.

Read →
Development

How to make Android notifications 100% reliable

A comprehensive guide to making Android notifications and alarms completely reliable, based on years of real-world experience building an alarm clock app with zero notification failure reports.

Read →
Development

I Built a Wear OS App in One Evening. Full Guide and All the Google API Pitfalls

Built a Wear OS companion app in one evening, ran into terrible Java-based Google APIs and half-documented Horologist. Sharing my experience and step-by-step guide on how to avoid the main pitfalls when developing for watches.

Read →
Development

I Won't Make You a Reproducer

I wont make you a reproducer. Stop asking.

Read →
Development

How to load data in Kotlin with MVVM, MVI, Flow, Coroutines - COMPLETE Guide

Learn the correct way to load and observe data in Kotlin apps using, and avoid 4 common anti-patterns that cause hidden bugs, resource leaks, and production crashes.

Read →
Development

Events as State are an Antipattern in MVI and MVVM - here's why

Representing events as state creates more problems than using event streams like Channel, and I explain why popular solutions often backfire in real-world applications.

Read →
Development

How to update state in MVI and MVVM with Coroutines: best state management approach.

Full guide on how to manage, update and represent state and avoid races in Kotlin MVI/MVVM apps using coroutines.

Read →
AIDevelopment

Claude 4.5 Sonnet Complete Review: Why Its Time to Forget About Opus

Claude 4.5 Sonnet is a breakthrough update that completely replaces Opus for most tasks thanks to better instruction following, parallel tool calls, and impressive speed. You can now work with lower limits and greater productivity.

Read →