Published inGoogle Developer ExpertsReverse-Engineering the Compose Compiler Plugin: Intercepting the FrontendHow Jetpack Compose plugin bends the rules of the Kotlin compiler2d ago2d ago
Published inGoogle Developer ExpertsKotlin Coroutine Mechanisms part 3: swapping CoroutineContextPart 3 — CoroutineContext, Dispatchers, runContext, and Android viewModelScope explainedSep 16Sep 16
Published inGoogle Developer ExpertsKotlin Coroutine Mechanisms part 2: launch v. asyncExamining join, await, coroutine behavior through playful examplesJun 92Jun 92
Published inGoogle Developer ExpertsKotlin Coroutine Mechanisms part 1: runBlocking v. launchIntroduction to coroutine behavior through playful examplesMar 286Mar 286
Published inGoogle Developer ExpertsCrash Course on the Kotlin Compiler | K1 + K2 Frontends, BackendsQuick detour on why there are so many versions and how it affects data transformations in the compilerMay 22, 20231May 22, 20231
A Not-so-scary Introduction to DP Mechanisms in Kotlin: Maximum SubarrayUnderstanding the fibonacci mechanism in 1D dynamic programmingDec 15, 2022Dec 15, 2022
Published inProAndroidDevPerformance Considerations for Memory leaks: An Android Cookbook, Part 2Strange Fragment/View lifecycle interaction, Rx leaks, and dependency leaksOct 28, 2022Oct 28, 2022
Published inGoogle Developer ExpertsPerformance Considerations for Memory Leaks: An Android CookbookA quick reference guide loosely based on “Programming Kotlin with Android: Programming Kotlin with Android”Jul 5, 20224Jul 5, 20224
Published inGoogle Developer ExpertsCrash course on the Kotlin compiler | 1. Frontend: Parsing phaseLexers, parsers, PSI, AST v. CST, and other fundamental concepts to help understand writing IDE/compiler pluginsMar 28, 20222Mar 28, 20222
Published inGoogle Developer ExpertsExploring Kotlin initialization with Android custom viewsA closer look at the relationship between Kotlin and View inflationApr 12, 20212Apr 12, 20212