"At Antithesis, we build an autonomous, deterministic simulation testing (DST) tool. Determinism is so in the water here that it has even seeped into our front-end: our reactive notebook. In this case, determinism was a tool that enabled us to build the low-latency, reactive experiences our users enjoy."
"Reactivity is traditionally defined as a system reacting in response to changing data. In the UI/UX world, reactivity is considered a feature of some libraries (denoting automatic interface updates as data changes), rather than a programming style."
"We're seeing glimmers of instant reactivity in dev tools. First it was syntax highlighting that updates without saving; later it was syntax checks, autocomplete, and linters. Now we even have AI copilots suggesting code as you type. But great developers know there's something more important than what color the code is or how your linter feels: what's most important is what the code does when it runs."
"By running your code on keystroke, the Antithesis Notebook's reactive paradigm informs you of just that, and with an immediacy that's essential to shortening iteration cycles and flattening learning curves. When you're in a reactive regime, you're immediately forced to reckon with the result of your code. The age-old saying of 'test early, test often' becomes the default."
"It turns out that if you build something reactive enough, something magical falls out: reproducibility. In this case, maintaining the illusion of having just run every line of Notebook code from top-to-bottom mandates that if we actually did restart the Notebook and run from top-to-bottom, then we should be in the same state."
Wow, that's a strong claim. They have a demo you can interact with, and it seems to work as advertised.
"This stands in stark contrast to Jupyter, the best known notebook out there, where users decide which cells to run and in which order. Imagine Google Sheets allowing you to decide which cells were up-to-date. Chaos. For Jupyter, this scheme produces enough hidden state to motivate research on the resulting bugs. One study found that only 24% of sampled Jupyter notebooks ran without exceptions."
Introducing our reactive Notebook: the paradigm devs deserve