The other day I came across Gall’s Law, developed in book on systems theory by pediatrician John Gall (polymath!). It’s fascinating. Here is Gall’s Law in all its fitting simplicity:
Subscribe to the newsletter for more Excel tips and tricks.
I love this idea. It’s especially appealing to my economics background — our advanced economy could only have evolved from a simpler economy. A complex economy designed from scratch (presumably from central planner) would never work.
And now, of course, I have to apply this concept to spreadsheets.
One of analysts’ most consistent frustrations is the inherited Franken-spreadsheet.
Maybe the model was meant to look at sales of a particular product line, and it morphed into a mult-factor budgeting tool. The only person who knew how this thing worked was your predecessor. And now you’re left with nothing but some half-assed instructions.
Are bad spreadsheets a result of Gall’s Law?
Computers seem to be one of the few areas of human endeavor where it’s better to start things from scratch than to build on imperfections.
If your house needs plumbing or foundation work, do you demolish things completely? Your essay is incoherent at parts and you delete it all? Probably not. But most spreadsheets and other computer developments are best discarded if flawed.
Most Franken-spreadsheets got that way because they were designed to do something far simpler than they are doing now.
Gall’s Law and the antifragile corollary
I think Gall’s law needs a corollary. What if complex systems evolved from simpler systems and still do not work? This system failed to anticipate growth or evolution — not a good thing.
Here’s an interesting insight from Joshua Porter at Bokardo on using Gall’s Law to design evolution into your software:
The overall effect of Gall’s Law is that most software would start off simple and evolve over time. So we wouldn’t end up with the software we imagined, but the software that managed to live through the early use and subsequent selection process. Accepting this as a rule, could we somehow plan for this evolution even though we don’t know what it will bring? Can we plan for this change? I think so, by building in feedback and reporting mechanisms and merely acknowledging to change the design based on such feedback.
This ability to adapt and thrive to changes reminds me somewhat of Nassim Taleb’s antifragility.
I’m going somewhere with this — before Gall’s Law turns this into a complex mess.
Design spreadsheets not as a static point-in-time set of data, but as a system that is resilient to evolution. Think of reports as living things, not butterflies to be mounted to the wall.
And, if you can’t keep it simple, at least start it simple!
How can you see Gall’s law influencing your spreadsheet modelling or other data analysis?