Letting go of headphones to save sanity and health

I love listening to music (mostly rock and metal), and I’m in meetings, A LOT. So, naturally I use headphones a lot, especially due to the video calls situation forced by the pandemic. Now, I’ve been having this uneasy feeling for a long time which is sort of like a headache but not really and it’s been gnawing at me. I attributed this to lack of sleep, stress, etc early on but then recently realized the main culprit for this is headphones that’s constantly keeping my ears busy. [Read More]

Pradyumn's got a website

My 10yo (Pradyumn) got interested in coding last year. I wasn’t so sure about it in the beginning since I didn’t want to force my career choices or interests on to him. But I realized that he wanted to do it of his own accord, so I agreed to help him. But our deal was that I will introduce him a bit to the learning resources and help him out with his doubts here and there, while he will peruse all the learning material and build his things on his own without much interference/interaction with me. [Read More]

A nifty window layout switcher for macOS using Hammerspoon

I’m a sucker for screen real estate, and thus I use 2 32" 4k monitors so I can see most of my apps' windows simultaneously, instead of switching back and forth between them. #myworkplace is pretty lean (on cables) and mean (on screen real estate). And a lot of tileception goes on (window tiling, then local tmux tiling, then 1-2 levels of remote tmux tiling) pic.twitter.com/wCqsusBfRb — Shantanu Goel (@shantanugoel) August 10, 2020 I use the awesome Rectangle app that provides shortcuts to move/resize an app window to my liking. [Read More]

Bazel rules to auto generate files at compile time

Auto generated files in a project are pretty common. There are generally 3 scenarios for this in a project that needs auto-generated files: An external pre-built tool generates files pre-compilation and then the generated files get checked in to the tree The tool is compiled in-tree but is again used to generate files pre-compilation and then check them into tree The tool is built during the main build step and then it also generates the needed files just in time. [Read More]

Java "Object" in C++ using std::variant

I’m going through this brilliant book, Crafting Interpreters, these days to learn more about how interpreters are built. My attempts so far have been ameturish, as I’ve never had a formal CS course, and this looked useful to upskill my toolkit. However, the book implements the interpreter in Java (at least the first part, which I am going through now) and I’m trying to follow along in C++ instead since I don’t have much experience in Java, neither an inclination to learn it. [Read More]