Gall’s law

Gall’s law

I learned about Gall’s Law just this morning, but it feels like a truth I’ve been following throughout my professional career.

A complex system that works invariably evolved from a simple system that worked.

I’ve never really managed to design a big system from scratch. In fact, I don’t think I’ve ever sat through a formal design forum that eventually turned into something useful.

My different development experiences have always followed a similar pattern: start with something simple that works, and gradually evolve it into a bigger, more mature product. Time and time again.

Most of these were solo projects, though on a few occasions I worked with others on larger endeavors.

The big twist in recent years is AI. Suddenly, I can take a much bigger first bite.

That little script that barely works can now be fleshed out in minutes, complete with proper design documents, README files, professional CI/CD pipelines, and tests. What used to take days or weeks can now look remarkably mature almost immediately.

But the truth remains, for me at least, that trying to start with a system that’s too complex doesn’t usually evolve into a working, usable product.

AI has made the starting point much more ambitious and fast. But I don’t think it has changed the underlying law.

Comments are closed.