Hi, I'm Denis.

I write backend software, run a small k3s cluster at home, and spend a surprising amount of free time breaking networks I configured myself.

Based in Paris.

About

Programming is my job, but it isn't only my job. I like Go, networking, containers, self-hosting, and building small products because I want them to exist. Most of those projects run at home. Paying someone else to host them would probably be easier, but I would learn less.

When I'm not coding, I play Factorio, Dyson Sphere Program, and Satisfactory—games where I spend my free time fixing bottlenecks, power shortages, and badly planned infrastructure. Somehow, I find that relaxing.

I speak Russian, English and French. This site is where I keep my projects, experiments, and occasional notes.

Selected projects

A few things I wanted to exist.

All projects →

Construction

A temporal map of how France builds itself: 91 months of official permit and building records, from 2019 to today, covering all 34,386 communes of the country. More than 2.9 million Sitadel declarations and 200,000 building-level events in Paris and Gironde drive the replay, from a national ink field down to individual footprints.

Explore construction

Moneygraph

Moneygraph maps French public procurement: 561,266 deduplicated contracts between 17,330 public buyers and 97,097 suppliers, compiled from 828,232 official award notices published since 2024. Every relationship is traceable to its source record; every value is the declared contractual amount — nothing more, nothing invented.

Explore public procurement

Économie française

A map of the French business fabric, built entirely from official public data. It locates 17.4 million establishments across 34,746 communes and animates 35 months of history — over 7.4 million dated events, from creations to closures, at street-block resolution.

Explore the economy

Rivers

A live observatory of the French river network: 100 rivers, 918 segments and 642 hydrometric stations across seven basins, roughly 18,800 km of waterways. Measurements are refreshed every seven minutes; more than two million observations have been ingested since launch. Replay the last 24 hours and watch the network respond hour by hour.

Explore the rivers

LegiFeed

Most legal monitoring stops at the headline. LegiFeed reads the text: each of the 1,569 texts it covers becomes a brief that says what changes, who is affected, what is due, and where to verify — then links to the original. The feed is refreshed daily from seven official sources, with the signed Journal officiel PDF always one click away.

Visit LegiFeed

Elsewhere