Year in Review (2021)

I continue to do less and less each year due to the dual woes of raising a toddler and navigating a pandemic. I also took three months off work this summer and I didn't much feel like doing anything tech then!

I suspect that 2022 won't be much more productive, but maybe in 2023 (when my toddler has aged out of being a toddler, and COVID is hopefully less in our minds) I'll start picking things back up again.


  • A Warning Regarding Android App Startup with Multiprocess Apps

    A small note on a niche problem. I write these posts in the hopes that someday someone else will save a bit of time by Googling the right keywords and finding their way here.

  • RxJava vs. Coroutines

    With the coming of Kotlin Flow, I decided to really evaluate a question many have posed to me: what do I think of RxJava vs. Flow? Almost a year later, I still stand by everything I wrote here, especially the conclusion - even though I think coroutines will do better in the long run, there is a lot of mistakes to be made before we master it.

  • Stop Nitpicking in Code Reviews

    A post about a big change I made in my development life: no longer nitpicking code reviews. I got some pushback here, but no one convinced me that going back to be an annoying twat in code reviews is actually beneficial to a team.

  • Do or do not; there is no tryEmit()

    Simulating RxJava's PublishSubject in coroutines is harder than it looks!

  • The dangers of JSON + default values

    Another niche post about a random problem I ran into around JSON libraries and Kotlin default constructor values.

  • Edina School Board Election (2021)

    I'm making a habit of writing about local elections. No one else is doing it, so my posts tend to rise to the top of Google results quickly! If you want to influence a surprising number of people, write about politics in a way no one else is (because they're so focused on national politics).

  • My Programming Earworms

    I've always wanted to share some of my biggest influences as a developer, so here you are.

  • How Trello Android converted from Gson to Moshi

    Trello Android switched JSON libraries (from Gson to Moshi), and I figured a write-up of the project could be helpful for others doing the same sort of work in the future.


I didn't do any! This is the first year I haven't given a single talk since 2011.

I give talks primarily because I enjoy the experience of crafting and delivering information. Since the pandemic started, I've found that online talks completely guts half of that experience - it feels like talking to myself, or to a wall.

I've got talks in mind I want to give, but they will have to wait until I can give them in person again.


Open Source

  • joda-time-android

    Still maintaining this library after all these years! We still use it at Trello Android (because migration is a pain), and maintaining it is not difficult.