I wanted to learn how databases like SQLite store data under the hood, so I decided to write some code to inspect the database file. SQLite famously stores the entire database in a single file , and the file format is very well documented. Here is one diagram 1 to get started instead of the roughly 13,848 words in that document. While not impossible, it is somewhat tedious to read through the file…
I really love the Arc Browser , but after last week’s major security incident , I wanted to look at some alternatives. They did a hundred little things to make it the most polished web browser I have ever used and I will definitely miss it. Anyway, I went back to Safari and its many paper cuts. I got used to most of the quirks, but I would end up pressing ⌘ ⇧ C a dozen times daily to copy the URL,…
I avoid 3rd party tracking on the web as much as I can with several ad blockers but then forcing it on the readers of this blog felt very hypocritical. So I’ve removed all Google Analytics from this blog as of now! Fonts, CSS and some icons are loaded from 3rd party CDNs, which I hope to inline soon. There is a link to Recurse Center below and it contains a unique token for this blog, but it…
Broadly speaking there are programmers who think of programming as a means to an end and as an end in itself. The instrumental and intrinsic value appeal very differently to different people. I’m usually far more excited about how the TCP packets go from one end to the other rather than what’s in them. Cat pictures, banking ledgers or irrelevant spam - they are all the same to me at an abstraction…
My favorite rust function is std::mem::drop which is used to free or deallocate a value, similar to free() in C. Quoting the docs from stdlib, This function is not magic; it is literally defined as pub fn drop < T >(_x : T ) { } How could a function definition with an empty body ever be useful? Ownership and lifetimes are Rust’s most unique features and it gives you the predictability and…
I grew up and spent the first 25 years of my life in India. I lived a short while in NYC to attend the recurse center and now I live in the UK. I saw a bit more of the tiny blue marble in the meanwhile. Hans Rosling says in Factfulness that you cannot divide the world into broad “First” and “Third” world categories anymore and the divide is closing; but as someone who got to see a fair bit of both…
I finished reading “ Amsterdam, A history of the world’s most liberal city ” last week and absolutely loved it. 5/5 🌟 The book is equally about a place, the people and an ideology it stands for - liberalism. Gedogen in Dutch means “illegal but tolerated” and Amsterdam seems to have developed this curious and unique attitude to so many social issues. There aren’t so many places in the world where…
The difficult part about moving halfway across the world is the loneliness that comes with it. No matter what you do and who you meet, often it’s just impossible to replace those loved ones.
I’m a Platform Engineer at Monzo since August 2018 and a recent conversation made me think of all the things I’ve learned over the last 4 short months. I wanted to share about how we work and what I’ve learned here. Briefly, the Monzo banking platform is roughly 820 micro services on Kubernetes. Some of them run a handful of replicas while others run into over 100. As of writing, we run over 6200…