Too Complex

TooComplex means you can't be sure what it does, which means even if it works it might not work in the way that you think which means it might contain bugs and it will be hard to work on in the future.

Throw it away and find a smarter way to do it. Or a less smart way. Find the simplest way to do it.

-- BenAveling

TooComplex means it's too complex for you to understand. No matter how hard you try, you will not comprehend.

Most ExtremeProgrammers think they know everything about everything, so nothing is TooComplex.

But they just call it that, while they secretly do understand it, and expect nobody else to.

Sometimes, they are right, but this is very very rare.

-- Norbert Fogarasi


TooComplex is a bad situation for large legacy systems. If the dependencies are so great and the code so opaque that a MaintenanceProgrammer can't understand it, the MaintenanceProgrammer will probably just use TrialAndErrorProgramming. This makes the code even more complex.


When examined closely, the items initially termed TooComplex may turn out to be understandable. The object or system can be understood if one takes the time to examine it OnePartAtaTime?. Time is the key word here, It takes time to understand and navigate ComplexSystems.

It is a SimpleApproach? to understanding, but requires the investment of effort and the investigation of the reasons for complexity.


TooComplex is often only an excuse.


"Imagine a MxMxM Rubik's Cube, M larger than, say, 20, and the cube starts out solved. Make a minor change through the interface, and you've just made one turn of the cube, and everything gets slightly messed up. After N such changes, it is completely impossible for a human being to figure anything out." -- Saarus

That depends on various things, such as the labelling, what resources are allowed, etc.


EditText of this page (last edited August 21, 2006) or FindPage with title or text search