← aneury.org

dev log

Statpro day by day.

Building sports stats & props in public — statpro.io

2026-10-05

The last-10 window lied in October

sportsdataproduct

2026-10-03

266 timeouts a night, one line in a function

webdatasports

2026-09-26

From 28 minutes to first paint: speeding up the Statpro Insights board

sportswebproduct

2026-09-17

Our CI lied about which jobs would run. Now it can't.

infraautomationproduct

2026-09-16

Publishing half a box score is better than publishing none

sportsdataproduct

2026-09-15

Five NFL refreshes, one certified release

datainfraproduct

2026-09-11

One collation setting, two row orders, a publish gate that lied

datasportsai-agents

2026-09-07

The tests CI listed but never ran

infraautomation

2026-09-06

The night corrections stopped falling out

datainfraproduct

2026-09-04

The health controller that refuses to guess

datainfrasports

2026-08-28

The 11:30 PM kickoff that broke NFL week assignments

datasportssolo-founder

2026-08-27

A jq filter that passed wrong evidence

datainfraautomation

2026-08-26

Plugging a callback race in the NFL pipeline

sportsdatainfra

2026-08-25

Bootstrapping NFL 2026 canonical identities

sportsdatainfraautomation

2026-08-20

Read-only production migration diagnostics, iterated into shape

automationinfradata

2026-08-17

A 60-second timeout that worked until production

datainfraweb

2026-08-16

News cards got faces, and the feed learned to survive bad data

webproductdatasolo-founder

2026-08-15

Launching 10,000 public pages with a guarded migration, and finishing the news rollout

infradatasolo-founder

2026-08-14

A fail-closed gate for taking Ask public

infrawebproductsolo-founder

2026-08-12

Statpro's Ask feature learned to refuse questions it can't prove

sportswebdataproduct

2026-07-29

Drawing the line: where does modern sports history start?

datasportsproductsolo-founder

2026-07-25

When your safety guard is tighter than your design ceiling

dataai-agentssports

2026-07-24

Twelve commits to land one migration: the 0024 saga

datainfraautomation

2026-07-20

Building a deterministic question engine for sports stats

dataproductai-agents

2026-07-19

Certifying a season: the ratchet that tamed historical NBA data

sportsdataautomation

2026-07-17

A two-day mobile 404, a CI guard, and four mode tabs

mobileproductinfraweb

2026-07-16

Phantom players and the 9/11 standings bug

sportsdataproduct

2026-07-15

Building a sports Q&A engine without an LLM

ai-agentsdataproductweb

2026-07-14

The import ratchet: CI that keeps deleted code dead

automationinfradata

2026-07-13

9,566 games silently unresolved, and the two-column rot behind it

datasports

2026-07-08

Promise-caching killed my duplicate rows (and made the merge 8x faster)

dataautomationinfra

2026-07-06

Stat Leaders videos get a redesign, plus TikTok and Apple sign-in

sportsmobiledesign