← Home

Blog

Thoughts on engineering and technology

H3 Sharding: Why Primes Compose and Composites Don't

May 18, 2026
Sharding 32K adaptive H3 cells across workers and time with modulo assignment. Why even worker counts silently fail, and why primes are required when stacking dimensions.
h3postgispostgresparallelperformancespatial

Adaptive H3 Aggregation for 73M Places (Without Losing Detail)

March 25, 2026
A practical pattern for adaptive-resolution H3 rollups in Postgres: emit the coarsest cell under a count threshold, with strict parent/child nesting.
h3postgispostgresmapsspatial

Browser SQL Gets Serious: FTS, Pipelines & Shareable State (Part 3)

March 11, 2026
DuckDB FTS indexes built in-browser, a reactive filter pipeline that compiles to SQL, draw-to-select instead of viewport queries, session persistence, and shareable URL state — all without a backend.
duckdbwasmoverture-mapsftssearchreactivesqlcloudflare

Overture Maps Data Lake in Browser: DuckDB-WASM & Edge Metadata (Part 2)

February 19, 2026
A dynamic, release-aware Overture Maps GeoParquet browser: DuckDB-WASM SQL in the client, edge-cached metadata for file discovery, and UX patterns that make slow data feel predictable — while staying cheap.
duckdbwasmoverture-mapscloudflareedgecachinguxspatial

Optimizing Spatial Queries: When Polygon Simplification Helps (and When It Doesn't)

February 9, 2026
Benchmarking polygon simplification for PostGIS spatial queries across 200 divisions — where it shines, where it hurts, and why.
postgresqlpostgisperformancespatial

SQL in the Browser: Querying 2.3 Billion Records with Zero Backend

February 2, 2026
An experiment with Claude, open data, and a SQL-first approach to frontend development - querying Overture Maps directly from S3 using DuckDB-WASM.
duckdbwasmoverture-mapsfrontendsqlcloudflareclaudeai