Building AllCars,
in public.
Engineering notes from a one-person Cyprus car-market platform. Pricing engine internals, scraper architecture, incident write-ups, and weekly progress. No marketing fluff — the actual decisions and the actual numbers behind them.
All posts
A 7-day silent failure: when 2.1% success looked normal
The detail-page scraper shipped 31 / 1,456 successes for a week before anyone noticed. The fix wasn't in the code — it was in the alerting floor.
The Audi TT that was simultaneously a coupe and a cabriolet
A coupe on one source got merged with a cabriolet on another because the cross-matcher weighed price and engine but never read body type. Hard-veto signals, post-hoc.
Why we shrink toward the prior, segment by segment
Adaptive Bayesian shrinkage with k = σ²_within / σ²_between. A two-line formula that fixed the long tail of "deal of the year" false positives in thin segments.
How one person keeps every used car in Cyprus live in one search
A look behind the scenes at AllCars.cy — the deliberately boring engineering choices that keep the index fast and always fresh.
The same Cyprus car, three listings: how AllCars spots duplicates
Phone, image-hash, plate OCR, and specs. How four signals combine (and how single-signal merges nuked our data integrity for a week).
Picking dark-mode tokens that survive a year of feature creep
Five surface levels, one accent, lessons from rebuilding the panel three times. Token table at the bottom, copy if useful.
Three years from now: when listings come back as 2027 cars
575 million km on the odometer. Year 2028. Every parser breaks the same way. Validation at the ingest boundary, not at the query.
Akerlof's lemons, on a 2014 Mercedes
Value × Quality multiplicative architecture, the V-Q gap, and how we actually flag listings that smell wrong before a buyer drives an hour to view it.
Cron jobs lie. Watchdogs that don't.
A cron entry that succeeded 100% of runs while doing nothing. Mtime guards, sliding-window rate alerts, and the small ops bot that wakes me up.
Get new posts when they ship.
Plus the weekly market report. No spam, no tracking pixels, no "marketing automation". One Telegram channel, one RSS feed.