The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
Eric S. RaymondThe combination of threads, remote-procedure-call interfaces, and heavyweight object-oriented design is especially dangerous... if you are ever invited onto a project that is supposed to feature all three, fleeing in terror might well be an appropriate reaction.
Eric S. RaymondThe only way to write complex software that won't fall on its face is to hold its global complexity down - to build it out of simple pieces connected by well-defined interfaces, so that most problems are local and you can have some hope of fixing or optimizing a part without breaking the whole
Eric S. Raymond