# Now

What I am doing now (work, learning, reading, building), updated roughly monthly.

> Canonical URL: https://sudohulk.com/now
> Updated: 2026-09-26
> Author: Vignesh Kumar A <vignesh@sudohulk.com>
> Licence: CC BY 4.0. Quote freely, cite the canonical URL.

---

## Work

Distributed database team at Zoho. The engine is a horizontally scalable distributed PostgreSQL: data sharded across nodes, queries planned and executed across them, transactions that span nodes committing with two-phase commit.

My share of it right now is the shard lifecycle (the operations that extend, retire and rebalance ranges while the cluster is serving, each one rehearsable against live metadata before it mutates anything) and a read-only verifier that reads the whole cluster and reports what disagrees. In C, debugged in LLDB across a multi-node cluster.

## Learning

PostgreSQL's write-ahead log and transaction code paths, closely enough to explain them. Logical decoding from the plugin side: what the log actually hands you, and what it does not. C, properly this time.

## Building

This site. A set of "explained simply" posts on PostgreSQL internals, starting with the write-ahead log. A small key-value engine in C on the side, to feel the difference between a B-tree and an LSM-tree rather than read about it.

## Deliberately not doing

Frontend frameworks. Certifications.

`SELECT * FROM me AS OF 2026-10-18`

## Reading

- Consensus on Transaction Commit
- Designing Data-Intensive Applications · since 2026-09-01
- The Rust Programming Language

## Tracks under way

- [PostgreSQL internals, explained simply](https://sudohulk.com/tracks/pg-internals-simply.md): series · active · 1/5 parts · last active 2026-10-17
- [Building sudohulk.com](https://sudohulk.com/tracks/building-sudohulk.md): series · active · 1/1 parts · last active 2026-09-21

## Newest writing

- [How PostgreSQL tells every connection its cache is stale](https://sudohulk.com/writing/postgres-cache-invalidation.md): 2026-10-17 · essay
- [Full-page writes and torn pages](https://sudohulk.com/writing/full-page-writes-and-torn-pages.md): 2026-09-22 · note
- [Lazy transaction id assignment](https://sudohulk.com/writing/lazy-xid-assignment.md): 2026-09-22 · note
- [Hi, I'm Vignesh. Start here](https://sudohulk.com/writing/hello-sudohulk.md): 2026-09-21 · essay
- [pd_lsn vs record LSN](https://sudohulk.com/writing/pd-lsn-vs-record-lsn.md): 2026-09-21 · note

Checkpoints, one a month, each a diff against the month before: [2026-10](https://sudohulk.com/now/2026-10.md) · [2026-09](https://sudohulk.com/now/2026-09.md).

All: [Tracks](https://sudohulk.com/tracks.md), [Bookshelf](https://sudohulk.com/bookshelf.md).

This is a [now page](https://nownownow.com/about). It says what I am focused on at this point in my life. The lists are worked out from the site's own dates on the day it was built, never by hand. Days are UTC days, as every date on the site is.
