Bengaluru · open to work

Nikhil Sinha

I'm Nikhil, and I learn a subject by building something real with it and then trying to break it. What's here is thirty end-to-end projects — where every result is scored against a known ground truth, and the findings that refuted my own hypotheses are written up as carefully as the ones that confirmed them.

01 — How I work

Every number on this site is traceable to a file

It is easy to write down a number that flatters the thing you built. Every figure on this site was extracted programmatically from a reports/*.json produced by a real run — not typed by hand, and not rounded in my favour. Several of them are worse than I expected.

01

Ground truth is injected, then scored against

Each generator plants a known mechanism — a fraud ring, a concept drift, a causal effect. The analysis is graded against what was actually planted. "It looks right" is never the standard.

02

A suspiciously good number is a bug report

A 100% score triggers an investigation. A PII detector scoring 1.000 fell to 0.20 on ten hand-written cases — and the honest figure is the one that ships.

03

Refuted hypotheses are reported as results

Event-time windowing was supposed to beat processing time. It discarded 95.7% of the stream. The measurement is the finding, not the hypothesis.

04

Reproducibility is measured, not claimed

Datasets are verified byte-identical by SHA-256 in a fresh process — because two projects shipped fixed seeds that still weren't deterministic.

02 — What surprised me

Six things I got wrong, and measured

Each one started as an assumption I was confident about. Each links to the project that produced it, and names the file it came from.

03 — What I studied

Five areas, and where I practised each

Every area links through to the projects where I worked on it.

TECHNOLOGIES I WORKED WITH
Explore

Tell me what you're hiring for

Pick an area and the map lights up the projects that prove it — and the picks below reorder to match. Every dot is a project; click one to open it.

05 — Study notes

Thirty notebooks, 1,970 pages

For each project I wrote up what I learned — the problem, the mathematics derived from first principles, a guided tour of the code, worked numerical examples, exercises with solutions, and a step-by-step runbook. Writing them is how I found out which parts I did not actually understand.

Every code listing is extracted from the repository at build time, so a book cannot drift from the code it describes.

Browse all 30 →

Get in touch

If you spot a mistake in any of these, or want to talk about something I built, I'd genuinely like to hear from you. Email is the fastest way.