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]

Automatic notes backup on macOS with hammerspoon

I’m a backup nerd and like to back-up everything I do. Not just that, I like to version them too so I can go back in time to any point. git serves as a good tool for me for versioning wherever small data/text files etc are concerned and then I back this up with remote git servers like my own git server on a raspberry pi at home, a gitlab server and a github server. [Read More]

Fixing the Raspberrypi 4 Ethernet disconnection problem

I added a Raspberry Pi 4B recently in my ever expanding homelab. To get the best network with the new gigabit ethernet port on the raspi, and still save power, I added a PoE hat to it so I could power the raspi as well as provide it data through the ethernet port. Everything worked fine except that I ocassionaly got into situations where the raspi stopped responding suddenly. Initially I thought that it’s crashing due to some issues and used to just restart it manually. [Read More]