About Me

Profile picture

If I’ve learned one thing in my career, it’s the power of an organizing ideal.

I wasn’t formally trained in software. I backed into it as a hobby.

It was slow going for several years. I spent a lot of time reading about best practices. Each required concept led to another one I had to learn. Some conflicted with each other. Many tutorials didn’t have useful examples. My progress slowed to a crawl; I spent more time trying to conform to the rules than actually writing code. I felt stuck.

Then I met someone who became a mentor to me. We clicked because we shared some deeply held beliefs about what excellent software looks like, and how it behaves.

I already had those beliefs, but hearing the “how” from an experienced developer inspired my imagination. I began building a mental model of how computers work, and how high-quality software might be built.

I also found some experienced developers online who did live streams, showing the way they write code. They held similar values, but added new details to the mix. Watching them code live made the concepts real to me in a powerful way.

Excited with what I was learning, I built several personal projects using the mental model I’d formed. Striving for that ideal meant I had to learn at a deep level how my chosen tools worked.

I eventually got a job as a web developer. As you might imagine, I didn’t have much freedom to write code the way I wanted to. Web developer teams typically use frameworks and don’t deviate from their mainstream usage.

But having an organizing ideal made things easier. Having written my own projects from scratch, I understood why frameworks did what they did. Even though I couldn’t use the techniques I’d come to know and love, I was still motivated to move the software as close as possible to my ideal, and that energized me to understand the depths of the frameworks we used. With the insight I’d gained, I was able to help other developers too.

These days, it’s more important than ever for developers to have a skill set that transcends individual frameworks. The best way to do that is to have a deep understanding of the platforms you use. And in my experience, the best way to deepen your understanding is to start with an organizing ideal and let that be your guide.

I was blessed with mentors that inspired and excited me early in my development career. I’ve made it my mission to inspire others in the same way. I hope my content will help you find your organizing ideals, inspire you to deeply understand your tools, and enable you to find work that brings you joy.

William