Copy-and-Patch: A Tutorial
Copy-and-Patch: How It Works
NULL BITMAP on SIMD
A Failed Experiment with Siso
SIGMOD Programming Contest Archive: In-Memory Join Pipeline (2025)
Decomposing Transactional Systems
Torn Write Detection and Protection
Talks: Enough With All The Raft
Personal: Time Tracking in Obsidian
Notes On: Disaggregated OLTP Systems
Modern Hardware for Future Databases
How to Learn: Userland Disk I/O
SIGMOD Programming Contest Archive: Approximate K-nearest-neighbor Graph Construction (2023)
SIGMOD Programming Contest Archive: Hybrid Vector Search (2024)
SIGMOD Programming Contest Archive: Blocking System for Entity Resolution (2022)
SIGMOD Programming Contest Archive: Entity Resolution (2021)
SIGMOD Programming Contest Archive: Entity Resolution (2020)
Erasure Coding for Distributed Systems
Database Startups
Data Replication Design Spectrum
SIGMOD Programming Contest Archive: Sorting (2019)
Building BerkeleyDB: Introduction
SIGMOD Programming Contest Archive: Join Processing (2018)
SIGMOD Programming Contest Archive: Streaming N-Gram Filter (2017)
SIGMOD Programming Contest Archive: Shortest Path (2016)
SIGMOD Programming Contest Archive: Social Network Graph Processing (2014)
SIGMOD Programming Contest Archive: Transaction Processing (2015)
SIGMOD Programming Contest Archive: Streaming Full Text Search (2013)
SIGMOD Programming Contest Archive: Multi-dimensional Indexing (2012)
SIGMOD Programming Contest Archive: Durable Main-Memory Index Using Flash (2011)
SIGMOD Programming Contest Archive: Distributed Query Engine (2010)
SIGMOD Programming Contest Archive: Main Memory Transactional Index (2009)
Calling OCaml from C
Building BerkeleyDB: Point Reads
Building BerkeleyDB: API Basics
Building BerkeleyDB: Entry Format
Building BerkeleyDB: Page Format
S3-Compatible Cloud Storage Cost Calculator
How to Learn: Consensus
How to Learn: Philosophy of How to Learn