Complex Systems Come From Simple Systems

A common thread in the last few posts could be the saying, "Simplicity is the ultimate sophistication." Whether it's the tech stack, approach to project management, or AI model development, keeping it simple (but not simplistic) is the key to success.

But of course, not everything can stay simple forever. If the underlying problem that we try to solve is complex, i.e., intrinsic complexity is high, our solution might have to be complex as well. Enter Gall's Law.

A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a working simple system.
— John Gall, 1975 in Systemantics: How Systems Really Work and How They Fail

Fifty years ago, as of today, there are the seeds of Agile (Minimum Viable Product!), Lean Startup, Evolutionary Design, and many more related ideas.

Simple and Working

Let's dwell on one nuance of this quote: ...a simple system that worked. It is not enough to break a larger design down into individual components, get those individual components to work, and then reassemble them in hopes that the total system will work. That way lies the despair of last-minute integration issues, or, in the case of the Mars Climate Orbiter, total failure.

The point of evolving a complex system out of a simple system is to have a simple system that is fully realized and stand-alone:

  • A simple web app should have frontend and backend, as well as infrastructure, no matter how minimal the functionality.

  • A simple product should completely solve a customer problem (see Jason Cohen's article on Simple, Loveable, Complete).

  • A simple team process should align priorities, even if it’s just a shared Google Doc, before implementing a full-fledged agile framework.

  • A simple AI model should deliver useful predictions, even if it’s just a rule-based system, before adding deep learning or fine-tuning.

Previous
Previous

Burn and Scrape

Next
Next

New Vs Improved