Korva is a scroll of the internet’s best ideas.
Why databases stuck
For decades, databases were some of the stickiest products in software. Application developers wrote against the interface of one particular database, data piled up year after year, and moving an app to a different database was a giant, painful project. That stickiness gave Oracle, SQL Server, and many smaller players their big margins.
Three things changed
Three things changed with AI. The thing writing against the database interface is now a coding agent, not a developer. Database interfaces are tightly specified, and agents are very good at tightly specified work. And agents never tire of the monotonous job of translating one specification into another.
New winning criteria
Databases remain essential. The criteria for a great one changed. Starting an application is now cheap, so people experiment far more, and a database has to scale from near-zero usage to enormous if the app works, and be spun up, spun down, and torn apart over and over. Cost and that zero-to-infinity scaling now decide who wins, where the old buyer specced a database for one user system, procured a license, and ran it on particular hardware.
Why was switching databases so painful?
Each database speaks its own dialect of SQL and offers proprietary features, such as Oracle's PL/SQL, a procedural language that works only inside Oracle databases. Applications accumulate thousands of queries and stored procedures written against those quirks. Moving the data itself means copying terabytes while the business keeps running.
What does zero-to-infinity scaling require?
The key design is separating storage from compute, so each can grow or shrink independently. When nobody is using the app, compute can shut down and only the stored data costs money. When traffic spikes, many compute nodes spin up against the same data. Snowflake, founded in 2012, built its warehouse around that separation.
Why are agents good at tightly specified work?
A specification gives the agent a way to check its own output. It can write code, run the tests that encode the spec, read the failures, and try again until they pass. Open-ended tasks offer no such test, so progress is harder to confirm. The SQL language, for example, has been defined in written standards since 1986, which gives agents a large body of fixed rules to work from.
More from Invest Like the Best with Patrick O'Shaughnessy

