That said, making a simple system that provides a simple interface to a complicated (or at least, a sophisticated) issue, is much better. And, you don't have to control your ego either. You can learn to take pride in the expressiveness and simplicity of your code.