Decision models are about to make software far more complex.
Code used to be a series of trivial statements. Its complexity came from size: the number of lines, and how they fit together.
With decision models and LLMs, a single line can be a judgement call, which brings three new kinds of complexity:
- The question itself is non-trivial,
- The answer can differ each time you ask, and
- They snowball: one unpredictable answer makes other answers unpredictable too.
There’s lots of talk of AI replacing coders, but we believe that today’s programmers will be replaced not so much by AI but by a new breed of far more empowered superprogrammers.
A single line of code will pack orders of magnitude more complexity than all of today’s software combined.
We need a stack where a decision model is as easy to work with as an if statement. Here’s what it has to do:
- Save every decision, from the first one.Deterministic software can always be run again to see what it did. A model can’t. A decision that wasn’t saved when it was made is gone for good: you can’t reproduce it, troubleshoot it, or find the customers it affected to refund them.
- Interlink everything.Connect each decision to the data it was based on, the reasons for it, the exact code version that made it, the other decisions that built on it, and the emails and invoices that followed.
- Show the world as it was.Not just the decision, but the whole database at the moment it was made: what was known, and what every agent and person had done by then.
- Fix only what the mistake got wrong.The world has moved on since the decision was made. New data has arrived, other agents have worked, and people have made corrections by hand. A fix has to keep all of it, which a restore from backup can’t.
Rotor is a database built for this: for you, your agent and the models it calls. Play around with it and let us know what you think.