Butterfly Effects

I 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 trivial, usually pay off in the long run. I'd like to quantify that in this post.

Almost every single interesting project (work or open source), blog post, or conference talk I've done the past few years can be traced back to a very specific set of rabbit holes I decided to go down. This focuses on 3 seed projects:

  • Palette Helper - Started February 2015. My first venture into Kotlin. Kotlin was still on version 0.10.770!
  • Barber - Started March 2015. My first ever open source library. It's a Butter-Knife-style an annotation processor for reducing boilerplate with custom view attributes. Used originally as a project to learn annotation processing.
  • CatchUp - Started April 2016. A pet project app, often used to try out different ideas or report public repro cases for bugs in tools/libraries.

Using the wonderful Excalidraw tool, I've stitched together how these were connected to later projects. If you're familiar with my work, some of these will look familiar. Name dropping isn't the point of these, but rather to draw direct lines of how these past explorations grew into much more.

This is far from exhaustive, but at the same time these three side projects ended up directly contributing toward a significant chunk of my work the past ~3-4 years. They led to open source projects, maintainer status on other projects, work projects, conference speaking, and a number of blog posts about them all. It's no coincidence that they often combine at later instances too. This is what growth looks like - learn different things and mix them with what you already know to make something new.

It's not just technical stuff. Between those lines there's also people. Here's another fun one, cherry-picking some of the highlights above.

The secret to success is befriending people whose first names end with "ryan"

So next time you've got an itch to dig into something, do it. It'll pay off someday 🙂.