Life, travel, code, and the whitespace in between.
Android Studio's "I'm Feeling Lucky" ButtonAndroid Studio has a misleading "Make project" button that you shouldn't click.
Network Calls in Lint: Best PracticesAndroid Lint has an API to make network calls, this post covers best practices of when and where to use it.
Is ViewPump A Security Risk?Exploring a claim that ViewPump is a data leak.
You Are Not BlockedA common complaint I see in the Kotlin/Java/Android community is that someone is "blocked" waiting for an open source library release.
Optimizing Your Kotlin BuildKotlin build times are often slow, this is a laundry list of common issues and what you can or can't do about them.
How I WorkA high level overview of my work style and how it helps improve my productivity.
Disposables Can Cause Memory LeaksEvery Disposable holds a strong reference to the observer it binds. This can lead to surprising memory leaks.
Kapt's Hidden Test CostsTL;DR Kapt will run on your test builds even if you didn't ask it to.
Time in UI ProgrammingI've been digging around in time APIs a bunch lately. One thing I've found over time is that it helps to think of parts of time APIs as contextual in UI. This is similar to Locale or Android's resource system.
Tick Tock: Desugaring and TimezonesDealing with timezone data in a desugaring world.
Kotlin Symbol Processing: Early ThoughtsGoogle announced Kotlin Symbol Processing (KSP) today, a new compiler-plugin-based API for annotation processing in Kotlin. It's designed to be a faster alternative to Kapt, Kotlin's current first party tool for this.
Dagger Party Tricks: Extension FunctionsExtension functions in Dagger for fun and profit.
Making My WFH Life BearableWith the ongoing pandemic, I've found myself struggling to feel comfortable with being home ~23hrs/day. In case it helps anyone, I wanted to jot down and share some things that I've found helpful for me.
Android's Built-in ProGuard Rules: The Missing GuideAndroid's build tools come with a few ProGuard facets to squeeze the most juice out of your release builds. In this post we'll cover what they all are, what's inside 'em, and what you can do with this knowledge!
Stories from JosephineStories from my Oma about growing up in The Netherlands during WWII.
It's NothingNothing is a special type in Kotlin often used for errors. Is that all it's useful for though?
Butterfly EffectsI like learning new things. That's a sufficiently vague claim, but it's intentionally broad. There's different conduits for learning: open source libraries, side projects, any sort of learning pursuit outside of your day-to-day work. I'm a big believer that these pursuits, however
How to Take a Six Month SabbaticalThere's a saying someone told me this summer - there's three pillars in life: health, time, and money. At any given moment, most people have at most two. If you're fortunate enough to have all three, you make the most of it while you
Dagger Party Tricks: RefactoringTechniques for refactoring Dagger code with ease.