Engineering
Making Sheets 30% faster without a single server round-trip
Spreadsheet recalculation is a dependency graph problem hiding behind a grid of cells. Every edit can, in the worst case, ripple through thousands of dependent formulas. Get the recalculation engine wrong and everything downstream — AI suggestions, chart updates, conditional formatting — starts to feel sluggish.
We rebuilt the core engine around incremental dependency tracking instead of full-sheet re-evaluation. Instead of asking 'what does the whole sheet look like now,' we ask 'what actually changed, and what depends on it.' That single shift accounted for most of the 30% improvement on large sheets.
The rest came from moving hot paths into a more cache-friendly memory layout, which matters more than usual here since everything runs on-device rather than on a beefy server rack. We profiled real user sheets — not synthetic benchmarks — to find where time was actually going.
None of this required a network call. That's the part we're proudest of: performance work on Apeirogon compounds with our local-first architecture instead of fighting it.
