A very timely editorial Steve...
A few weeks ago I was sitting on my deck with a few friends, two of whom, like me, began their careers as developers. We were talking about all the paradigms that have simply disappeared or become meaningless in software development since the advent of the web and the .NET craze.
In our day long ago, working then in 3GL's, we were excited about the 4GL systems that were coming out and would eventually lead us into a huge period where the buzz word was RAD (Rapid Application Development). Those things just faded and disappeared and I don't doubt would seem like fossils to todays young developers. I remember doing a project with one of my employers, a world-wide facilities management provider where, in 42 days we delivered a large, fully working management system. Today, especially in .NET, I would guess the same project would take at least two years.
We all came to agreement that the "Golden Days" of software development are indeed gone forever. In our day there were probably 20 or 30 development systems and "languages", where today, you dance to .NET or Java, and just about nothing else. Developers today are required to march in lock-step to a set of ideas, concept, and principles - there is "one way" to do something, and not the kind of leeway we knew coming up.
In my view, Over-Engineering is now the norm. How we got that way is really due to market control and dominance - today's younger developers have far fewer choices than we had when it was our time. For me, this is a sad fact because its killed a kind of creativity we wont see again. Worse, no one questions that anymore, they just accept it and march in lock-step, and this has killed a certain creativity and shifted it to the very thing we once thought we would never accept.
Everyone dancing to the same Over-Engineering music. But worse, never questioning why. Good software was once written and produced quickly, and then refined as time went on. In those days anyone could write and market a system, and some became millionaires. Those days are gone forever, lost in the new "standard" of Over Engineering.
There's no such thing as dumb questions, only poorly thought-out answers...