3 Podcasts I've been Listening to

3 Podcasts I’ve been Listening to Podcasts have been around for a long time, but I’ve only started listening to podcasts around the end of 2021/early 2022. I don’t know why I had a bad image of them in my mind and resisted giving them a try. Turns out I was wrong, and podcasts have a variety of formats that aren’t just two guys talking to each other. I could’ve learned a lot while doing chores / driving around instead of listening to the same songs over and over again. ...

June 30, 2024 · 3 min · Leen

3 things I wish I knew when starting out my Software Engineering Career

Here are things I would’ve found valuable when first starting out: 1. Version control (git) - beyond the basics As a Computer Student I learned and used git as part of my individual projects and group projects. But, that git knowledge was minimal. It consisted of how to check in code, commit, push to remote, resolve conflicts, create a branch, merge a branch. Working on longer term projects with a larger team required a different set of knowledge like: ...

May 31, 2024 · 3 min · Leen

Debugging ProxySQL Query Routing: Transaction Gotchas

Originally published April 2024. Substantially updated October 2025 with expanded analysis and debugging insights. I spent 3 days debugging why ProxySQL wasn’t redirecting queries to read replicas. I checked the configuration. I verified queries redirected when using the CLI. I confirmed auto-commit was enabled. I read the docs cover to cover. The problem? My test framework. The test setup created nested transactions with writes, which pinned everything—including my auto-commit query—to the primary DB. ProxySQL was working fine. My testing setup was broken. ...

April 30, 2024 · 5 min · Leen

FUSE vs File Watchers: Choosing the Right File Monitoring Approach

Original Problem We have two directories plaintext and secret, which hold the unencrypted files and their encrypted counter parts respectively. We need to detect changes to plaintext and sync them to secret. Common Methods Polling Based The simplest method is to check the directory on a regular interval (polling) for changes by walking the directory and its files and comparing it against the cached last known state. This method can be less efficient and timely than the other two methods below but it’s biggest advantage is it is the least OS dependent. ...

January 28, 2024 · 2 min · Leen

RClone Encryption: Security Analysis and Comparison

Rclone is a popular command line tool to sync and manage files on a cloud storage. It supports a wide variety of backends (referred to as remotes) and has support for a crypt remote that encrypts the files before storing them in the target backend. For this evaluation, I only looked at the local file system as the backend, however, it still applies to any other configured backend. The configuration steps are detailed in the crypt page. The defaults are good and turn on both filename and directory name encryption, it also includes an option to generate the passwords (encryption and salt) from /dev/urandom for the user. The filename and directory name length can’t be larger than 143 characters which is smaller than the other solutions we looked at. ...

January 21, 2024 · 2 min · Leen

Cryptomator vs gocryptfs: Encryption File Systems Compared

Cryptomator vs. gocryptfs The rough solution I came up with using age is called file based encryption which operates on selected directories and files and distinguishes it from disk encryption which encrypts the whole disk. Exploring some of the existing solutions, cryptomator and gocryptfs stood out to me as the most used and updated, so I decided to learn about them and give them a try. This post will highlight the similarities, differences, my experiences, and what I’d ultimately recommend to both technical and non-technical people. ...

January 14, 2024 · 4 min · Leen

Encrypting Cloud Backups with Age

Sensitive File Cloud Back ups I have a folder in my laptop that contains sensitive information that I’d like to backup/sync. I’m not worried about the security of the storage provider1 I’m uploading to, but I don’t want them to be able to parse the file for any purpose. My threat model is preventing the storage provider from reading the contents. I somewhat trust the cloud provider to not compromise my files to external entities. ...

January 7, 2024 · 4 min · Leen