Engineering & Thoughts

A collection of articles on systems programming, NixOS infrastructure, and cybersecurity research.

modernizing rsync for the multi-gigabit era

the problem with rsync in 2026 rsync's rolling checksum algorithm was designed in 1996 for slow networks where bandwidth was the bottleneck...

#RUST#NETWORKING#HTTP

escaping dependency hell with nix

the problem every developer has been there. you clone a repo, run the build, and get a wall of errors because your version of python is wro...

#RUST#NETWORKING#HTTP

homemade udp in rust

udp is simpler than you think TCP gets all the attention because it's what most applications use. but UDP is where the interesting low-leve...

#RUST#NETWORKING#HTTP

understanding the linux scheduler

what a scheduler actually does the linux scheduler decides which process runs on which CPU at any given moment. it runs thousands of times ...

#RUST#NETWORKING#HTTP

sqlite is not a toy database

the reputation problem sqlite gets dismissed. "it's not a production database." "it doesn't scale." "use postgres for anything real."...

#RUST#NETWORKING#HTTP

how i optimized my neovim config for 10ms startup

the problem with plugin managers my neovim used to take 400ms to start. that's fast enough for most people. it wasn't fast enough for me....

#RUST#NETWORKING#HTTP

building a compiler frontend in go

why write a compiler compilers are the most educational programs you can write. lexers teach you string processing and state machines. pars...

#RUST#NETWORKING#HTTP

the hidden cost of async rust

async is not free rust's async/await looks like magic. you write code that looks synchronous, and the compiler transforms it into a state m...

#RUST#NETWORKING#HTTP

writing a tcp stack from scratch in rust

why would you do this most engineers treat TCP as a black box. packets go in, data comes out. that abstraction is fine until it isn't — unt...

#RUST#NETWORKING#HTTP

why i stopped using docker for local dev

docker is great until it isn't i used docker for local development for four years. docker-compose files, volume mounts, multi-stage builds....

#RUST#NETWORKING#HTTP

io_uring: the linux async I/O interface that changes everything

what is io_uring io_uring is a Linux kernel interface introduced in kernel 5.1 by Jens Axboe. it is the most significant change to Linux I/...

#RUST#NETWORKING#HTTP

Zero-Copy Networking in Rust

The Problem Conventional packet processing involves multiple memory copies between kernel space and user space. This creates a bottleneck i...

#RUST#NETWORKING#HTTP

rust lifetimes: a visual guide to the borrow checker

why lifetimes exist rust's borrow checker ensures that references never outlive the data they point to. lifetimes are the mechanism that ma...

#RUST#NETWORKING#HTTP

Microbenchmarking with Criterion.rs

Why Benchmark? If you don't measure it, you haven't optimized it....

#RUST#NETWORKING#HTTP

writing a unix shell from scratch in c

what a shell actually does a shell is a program that reads commands from the user, parses them, and executes them. that's it. the mystique ...

#RUST#NETWORKING#HTTP

eBPF: The Future of Kernel Observability

Introduction eBPF allows developers to run sandboxed programs in the Linux kernel without changing kernel source code....

#RUST#NETWORKING#HTTP

building a minimal webassembly runtime in rust

what is a wasm runtime a WebAssembly runtime is a program that reads a .wasm binary, validates it, and executes the instructions inside it....

#RUST#NETWORKING#HTTP

Memory Safety in Modern C++

Smart Pointers Stop using raw pointers. std::unique_ptr and std::shared_ptr are your friends....

#RUST#NETWORKING#HTTP

lock-free data structures: theory and practice in rust

why avoid locks mutexes are expensive. acquiring a lock involves a syscall on contention, disables CPU optimizations, and creates a global ...

#RUST#NETWORKING#HTTP

Async Runtime Internals

The Executor The core component that manages task scheduling....

#RUST#NETWORKING#HTTP

implementing a b-tree from scratch in go

why b-trees matter every database you have ever used is built on a B-tree or one of its variants. sqlite, postgres, mysql, mongodb — they a...

#RUST#NETWORKING#HTTP

PostgreSQL Indexing Strategies

B-Tree Indices The default and most versatile index type....

#RUST#NETWORKING#HTTP

writing a memory allocator in c: from sbrk to free lists

what malloc actually does when you call malloc(n), the C library asks the OS for memory using sbrk() or mmap(), then manages that memory in...

#RUST#NETWORKING#HTTP

WebAssembly Beyond the Browser

WASI The WebAssembly System Interface brings Wasm to the server....

#RUST#NETWORKING#HTTP

writing your first ebpf program with aya in rust

what is ebpf eBPF lets you run sandboxed programs inside the Linux kernel without modifying the kernel source or loading kernel modules. th...

#RUST#NETWORKING#HTTP

Distributed Locking with Redis

Redlock Algorithm How to implement safe locking across multiple Redis instances....

#RUST#NETWORKING#HTTP

Custom Allocators in C

Purpose Reducing fragmentation and improving cache locality for specific use cases....

#RUST#NETWORKING#HTTP

LLVM IR: A Gentle Introduction

Static Single Assignment The foundation of LLVM's optimization passes....

#RUST#NETWORKING#HTTP

Command Palette

Search for a command to run...