Blog
2FA musings, and why not to use Google Authenticator
April 14, 2023 - 447 words - 3 mins
Recently, my Pixel 4 XL, a trusty companion of 3 years, totally died. It had been having charging issues for a few month, such that it would only take a charge if the cable was plugged in just right. Then all of a sudden, the screen turned off permanently, and no amount of charging (via cable or wir…
read more
Recipe management with Obsidian
July 16, 2022 - 1161 words - 6 mins
Those who enjoy cooking will have encountered a familiar problem - how to keep track of recipes over time? Primitive solutions range from keeping links to recipes in bookmarks folder to sticky notes marking pages of physical recipe books. But to someone who likes cooking and is also an engineer, it'…
read more
Pihole, Tailscale, NAS, and Docker
June 08, 2022 - 1217 words - 7 mins
For about a year now, I've used pi-hole as a network-level ad-blocking
solution in our home network. The result has been a very pleasant upgrade of our internet usage, so
much so that it's hard to imagine going back now.
Recently, however, I've been brainstorming more uses for the Raspberry Pi, reim…
read more
Iceland photography workshop
November 17, 2021 - 3201 words - 17 mins
In early November, I had the great privilege of going on a photography workshop to Iceland with
Nigel Danson and James Popys, two
incredibly talented landscape photographers from the UK, and some of the bigger names in the YouTube
landscape photography world.
In this post, I share a travelogue of th…
read more
My keyboard journey
March 10, 2021 - 1192 words - 6 mins
Ergonomic keyboards
My journey in non-standard keyboard habits began in college when I began to experience wrist pain
from repetitive typing motion. At the time, I was working on a project for a professor involving
converting a large number of Word documents to HTML. Even after scripting many aspect…
read more
Focus at Work
January 24, 2021 - 1693 words - 9 mins
Over the past few months, I've been reflecting on challenges to productivity and focus at work.
While I definitely don't feel like I've totally "figured it out", I wanted to share my journey so
far, as well as thoughts about how to cultivate working habits that make you not only objectivel…
read more
Fuzzy Match at Speed
December 09, 2020 - 2013 words - 11 mins
This post is a deep dive on the 25x performance optimizations in fuzzy matching hinted at in the
previous post. Feel free to refer to that post for an intro to the
problem context and the basic algorithms involved.
As a high-level overview of this post, the main source of performance improvements wa…
read more
Fuzzy matching applied to chant references
December 06, 2020 - 881 words - 5 mins
In this post, I want to share about my journey in developing and open-sourcing a side project I've
been working on for the past few months. Read on to learn more about:
The problem domain of finding references for Gregorian chants
What fuzzy matching is and why it was a good fit for this problem
P…
read more