Structural complexity (the internals) against functional complexity (the use) reminds me that worse is better because overengineering selects orthogonality into unimportant problem-dimensions, that is tends to enhance the structure while hindering the use.