I enjoy writing about software—the things I learn, the tools I use, and the work I do. Owing to the constraints of the corporate software world, more often than not, you can’t showcase your work or talk about them. At least that’s how it always has been throughout my career. At the same time, as you grow older and start having a life outside of the computer screen, you realize that working on OSS at the tail of a 40+ hour workweek is hard, and maintaining consistency is even harder. On that front, how do you keep track of your progress without losing your sense of purpose as the years fly by?

I ameliorate this by factoring out the things I learn at or outside work and writing about them publicly. Countless times I’ve found myself looking for stuff on the web only to land on my own website. But this approach isn’t bulletproof: you rarely encounter situations where you get to write about some novel concepts or one of your brilliant epiphanies. Routinely, I find myself writing about just another tool or library that I’ve figured out how to use or another book that’s already considered cliché in my area of interest. Plus, there are already a ton of more detailed or clickbaity posts out there that cover the same ground. So what good will it do if you add another drop to the ocean? Who will even read it?

The most recent example of this is when I spent an hour going through the docs1 of log/slog package of Go 1.21 and another two listing out my most common use cases2. I wrote about it despite seeing countless examples of how to use it on the internet; some of them even have the exact same title as mine. But I did that anyway because it helped me echo out my own experience with the tool that I’ll be able to relive in the future should the need arise. The goal here was not to craft the perfect post for a select audience just to get some SEO points. Rather, I wanted to write this for myself, to scratch a very particular itch. If people find it useful, great, but if I find it useful at some point, even better.

But occasionally, I do experience those lightbulb moments that beget more original proses like Avoid template pattern in Python3, which get highly lauded by the venerable orange site citizens. However, the general trend is that the majority of these pieces go completely unnoticed. This might be one of them too and that’s perfectly okay. Internet accolades are great, but they need not be the only reason you want to explore and share your thoughts on something. For me, the aim is to uphold a meticulous record of my odyssey, my own Da Vinci’s notebook4, and this post is but another page within!

Recent posts

  • ETag and HTTP caching
  • Crossing the CORS crossroad
  • Dysfunctional options pattern in Go
  • Einstellung effect
  • Strategy pattern in Go
  • Anemic stack traces in Go
  • Retry function in Go
  • Type assertion vs type switches in Go
  • Patching pydantic settings in pytest
  • Omitting dev dependencies in Go binaries