4 ms·
We need to establish a rigourous and quantifiable definition of software complexity otherwise we can confuse complexity for misunderstanding the difference betw
by CMCDragonkai 8y ago
We need to establish a rigourous and quantifiable definition of software complexity otherwise we can confuse complexity for misunderstanding the difference between essential complexity and accidental complexity. Remember intuition is not the same as simplicity!
From my experience, complexity to me means how many combinations of states are possible a program, how many paths one can take at any point, how many side effects are possible... etc. An abstraction is supposed to manage complexity, if it doesn't, that doesn't necessarily mean the abstraction is too complex, but that the abstraction may just not fit the problem or cover all the edge cases. Thus a leaky abstraction.