Writing on building software, and enjoying technology.

All of my long-form thoughts on tech, product design, and more, collected in chronological order.

Zero to Nix: Packaging & Development Environments

Nix is not just a simple package manager, but it also helps us work with writing and creating our own packages and also building ad-hoc development environments that can be toggled on and off. We can also build applications with Nix if we like.

Zero to Nix: Everything I Know About Nix & NixOS

Not very long ago, when I started learning Nix, it wasn't easy to learn everything I needed to know in a way that was easy to understand. A lot of resources answered questions, but didn't tell me exactly how to reason or think in Nix. While things have substantially improved since then, I still feel that there is something I can contribute to the Nix community by writing this post.

Kubernetes Primer: Fundamentals

I was first introduced to Kubernetes by a coworker about seven years ago when it was still a new thing. Since then, every company I have gone to has had the same difficulties onboarding their teams onto Kubernetes. Since I've been asked the same several questions, I decided to write a series of blog post answering them, which one could go through instead of attending the seminar that I often perform for engineers.

Write Yourself A Scheme In Rust — Parsing (Part 1)

Haskell is one of my favorite programming languages. Whenever someone asks me a way to kick-start their Haskell learning experience, I recommend the WikiBook "Write Yourself A Scheme In 48 Hours." Recently, I have almost entirely switched to Rust for my day-to-day programming tasks. I thought it might be a good idea to reproduce the Scheme tutorial for Rust. So here we go!