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, beginning with a working simple system.
—
John Gall
John Gall
GeeIWonder
on 21 Nov 08Wrong. Look no further than biology.
Evolution goes BOTH ways.
andyw
on 21 Nov 08I think it’s probably referring to software… ;o)
GeeIWonder
on 21 Nov 08Nah, he’s referring to lots of things “Systematics”, as he terms them.
But there’s certainly good counter examples in industry/management, and probably in software projects too.
Tomas Breen
on 21 Nov 08Nice. I do agree. Although, we do have a CRM here that has evolved into a monster (maybe it was always a monster, just smaller).
Starting from scratch is the better option, but try telling management.
Jeff
on 21 Nov 08Interestingly, even in biology, isn’t it the theory that life started simply – single cells, for example – and evolved into more complex structures only after the simple systems proved that they worked (survived in their environment)?
Tim Case
on 21 Nov 08I’ve been looking for this quote for years, I had attributed it to Martin Fowler, but now upon second thought I might have read it in book by Martin Fowler.
There is no other way to do it. I’ve tried. Start simple or FAIL!
Damon
on 21 Nov 08Nonsense. The world is full of horrifically complex accomplishments that started out that way. They’re often not perfect, but they sometimes do “work”.
Sometimes there is just to big a gap for simple to work at all.
Charlie Park
on 21 Nov 08The world is full of horrifically complex accomplishments that started out that way.
Yes, the world is full of accomplishments that are horrifically complex. But each is a part of a system that has been refined and expanded over time.
Simplexity
on 21 Nov 08By definition, a complex system is made up of multiple parts… so yes, it probably goes without saying that the simpler parts need to be designed first to create a complex system. I can’t think of an example of a complex system built from scratch.
GeeIWonder
on 21 Nov 08Jebus. These ideas are dated, people. If you’re interested in this stuff, be interested in it.
An arch is irreducibly complex. That is, you can’t build an arch without scaffolding, but once the arch is built, the scaffolding can be removed. Thus a simpler, working system has evolved from a more complex one.
There. Now move on.
Ralph Haygood
on 21 Nov 08In other words, so-called “irreducible complexity” doesn’t exist. As an evolutionary geneticist, I’m inclined to agree, with the proviso that complexity may emerge with the aid of scaffolding that is later stripped away, leaving the origin of the complexity mysterious to subsequent observers.
CJ Curtis
on 21 Nov 08the whole idea seems rather ambiguous.
you can argue that a single-celled organism is very simple, yet the forces that sustain it are quite complex are they not?
but assuming we’re talking about software or similar, just because something generally gets more complex over time, why are we assuming the original system was “simple?”
Jim
on 21 Nov 08Ah, “Systemantics” (now known as “The Systems Bible”). One of the best texts, ever. I still owe a debt to the boss who introduced me to it over 20 years ago.
And never forget, “Fail safe systems fail by failing to fail safe.”
And “All systems have intra-system goals.”
And especially “Intra-system goals come first.”
Martin C
on 21 Nov 08@Tim Case: It seems Grady Booch likes using that quote in several of his books.
Douglas Neiner
on 21 Nov 08I think the most obvious example of something starting out with complexity, and working correctly, was Creation (of the world, man and woman, animals, etc). Believing single cells miraculously became more complex gradually over time belies a serious lack of understanding the complexity found in a single cell in the human body. So many of the micro-systems of the body require all (or most) parts to be present to work correctly.
But chances are, where man is involved, your quote is accurate.
Gary R Boodhoo
on 22 Nov 08a single celled organism isn’t simple at all. The protein folding encoded by the DNA alone is more than a world full of supercomputers has yet been able to crack. The RNA and other, uh… “nanotech” support systems are incredibly complex, not to mention the various energy transfer systems.
I find the quote inaccurate for software systems too. Sure my psuedocode may look simple, sure I may build from the bottom up, but not really – I’m several layers of abstraction from what is really going on with the electrons in my CPU, not to mention the various support systems that keep my machine/network/internet running.
Japan Web Design
on 22 Nov 08I do agree. I’m inclined to agree, with the proviso that complexity may emerge with the aid of scaffolding that is later stripped away, leaving the origin of the complexity mysterious to subsequent observers. I can’t think of an example of a complex system built from scratch. Its a part of a system that has been refined and expanded over time…..!
Shamus McCahey
on 22 Nov 08If we interpret “a complex system designed from scratch” as “a complex system by design” it makes a lot of sense.
A system is hopefully designed before it is put into effect. One that is complex in the design phase, before reaching production even, is likely doomed to fail.
A good example of this is our credit system.
GeeIWonder
on 22 Nov 08A good example of this is our credit system.
Really? I mean, really?
How so?
CJ Curtis
on 23 Nov 08“Fail safe systems fail by failing to fail safe.”
Here’s a good literary example.
I assume this is a quote in his book. He constructs this complex mess of words when all he means is “Fail safe systems crash hard.”
BUT, did he construct the final sentence from the simpler idea? Point is…it’s impossible to prove this as right or wrong, in software or in nature. However, EVERYTHING in our universe is made up of smaller parts.
Curtis Jennings Schofield
on 23 Nov 08to accord with either the relative or absolute is still not enlightenment.
Richard
on 24 Nov 08Biology is a bad example. I don’t know of a single scientist who could build a single human, animal or plant cell from scratch let alone a whole living organism.
As far as software is concerned, I wish I could tattoo this on the back of my developers eyelids. Every project that I have seen where people were trying to migrate from an old VB6 application to a .Net application, in one big bang , with all of it’s functionality has failed or come in 4 years late(Which is still a failed project. This usually comes from smart ass developers who think they can do it but invariably fail due to lack of requirements or poor understanding how the old application does things without the proper documentation. The successful projects all start from scratch and release something small at first and build up over 2-4 years. Just my experience working my way up from developer to CTO, but what would I know?
Adam
on 24 Nov 08Who is John Gall?
This discussion is closed.