It honestly seems sort of like a straight path toward an LLM that can hold a whole codebase in context and can produce new functionality on command. Fundamentally, software is just taking inputs and producing outputs; we will almost certainly be able to define those and let the LLM do everything in between within a year or two.