I recently learned about Galloping Search while building a distributed log called s3-log. It’s used to search sorted items when the upper bound is unknown. In this short post, I will share my notes and other alternatives I discovered for searching over unbounded items
In this third part of the series, I will show how we can implement a durable, distributed, and highly available log using S3
State is pain. The next generation of infrastructure tools will be built on diskless paradigm. In this short post I will explain what is Diskless / Zero Disk Architecture
Most databases don’t do checksums by default. Disk corruptions go silently unnoticed.
SQLite does not do checksums by default. Disk corruptions go silently unnoticed.
a brief introduction to disaggregated storage systems in context of database systems
My answer to a question online, why?
This is a /now page. Work I work at Turso Database. Learning Rust and C.
I got my patches accepted into SQLite fork, libSQL codebase!
Hekaton MVCC Paper contains a publication error. After reviewing the paper, I confirmed the error with one of the authors. This blog post explains the mistake, the implications and the fix.
This is a short story about how I hit a wall while implementing a database research paper, found a publication error and how people on the internet helped me.
It’s harder to refactor a large Python codebase. Type hints won’t save you, and you need a lot of unit tests. But how does that work in practice? Is Python fast to ship?
This short post will show how to add a secondary only index in a MongoDB replica set
CaskDB is an educational project which aims to guide you in writing a persistent, embeddable database from scratch.
I forked and modified Go compiler to add a new keyword called let, as alias for var
I worked on upgrading a Django project from v1 to v4
merged few open pull requests on my projects
I translated B Tree Algorithms from CLRS to Python
I learned how using MongoDB was fatal for a startup
I started re-reading Raft and I learned why it is called so!
Anomalies which define transaction isolation levels
I started writing code for B Tree insertions
How does one start learning to build distributed systems?
I found out the answer to B tree fill factor
Reflections on the first week of the Recurse Center
Learning the basics of GC, mark-sweep algorithm
Q: How do I have a same B Tree fill factor across all nodes?
TIL Hammock Driven Development
This is a draft post that I have prematurely published. Currently, I am attending RC and I want to write as much as possible, log my daily learnings and activities. But, I also don't want to spend time on grammar and prose, so I am publishing all the posts which usually I'd have kept in my draft folder. B Tree I started working on the B Tree...
This is a draft post that I have prematurely published. Currently, I am attending RC and I want to write as much as possible, log my daily learnings and activities. But, I also don't want to spend time on grammar and prose, so I am publishing all the posts which usually I'd have kept in my draft folder. My RC first day was filled with welcome...
This is a chronicle of my experiment where I set out to insert 1B rows in SQLite
This is a short post explaining how I marshaled http.Request into json
how my curiosity lead me to discover a weird inconsistency with MongoDB where I was able to insert records that conflicted the index constraints
Github Actions for Hugo but with particular requirements
some personal notes to remember the migration effort from Pelican to Hugo
Simple code example to show catching SIGTERM in a Python script.
When contributing to Open Source Projects, new contributors often run into problems of having multiple merge commits and issues with keeping the forked repo in sync. This post addresses solutions for some of the problems.
Simple steps to get uWSGI up and running in Python 3.
Using praw and prawoauth2 to find when is my cake day on Reddit.
With a simple Man In The Middle (MITM) attack, I tried to cheat(?) one of Amazon India’s contest.
In this simple tutorial I will show how to maintain multiple git emails on a same machine. And how to configure git emails per directory or per project.
In May, 2015 I found an exploit on Gaana.com, which let me access their entire User Database (more than 10 Million) which included all the user info.
This tutorial will explain you how to flash Asus-WRT Merlin by XVortex on NetGear NightHawk R7000.
This tutorial will help you install Windows 8 on a Legacy BIOS in UEFI mode using Clover and dual boot with Yosemite.
Simple code example to illustrate scraping a javascript driven website, using Python and Dryscape.
This tutorial will explain you how to install Transmission client on Raspberry Pi running Raspbian.