JOURNAL

Notes while learning.

Study summaries and concept write-ups I keep while working through systems topics. These are learning notes, not published research — they record how I understood something at the time I wrote it down.

Implementing a Raft consensus node in Rust

Design details of node states, election timers, and append-only disk logging (WAL) in Rust. Works through recovery bounds and the safety guarantees that have to hold when servers disagree about the current term.

Rust Distributed systems Consensus

B-Trees vs LSM-Trees: comparing storage structures

Disk layout and read/write performance characteristics side by side. Covers compaction, write amplification, and why log-structured merge trees keep winning in write-heavy pipelines despite the read cost.

Databases LSM Tree B-Tree

Garbage collection in high-concurrency Node.js services

A look into the V8 memory engine — object allocation lifecycles and buffer recycling techniques, and what actually keeps response times stable when a service is under peak request stress.

JavaScript Node.js Memory management

API patterns: gRPC versus REST

Binary serialisation via Protocol Buffers over HTTP/2 against JSON text exchange. Evaluates the CPU cycles and network latency each one costs for inter-service communication, and where the tradeoff actually flips.

gRPC APIs Protobuf

Full write-ups are being moved over from my notes. Until then, these summaries are what exists — listed rather than linked, because linking to a page that is not there yet would be the wrong kind of portfolio.