This is just a food for thought question to help get content into the site for the beta. Hopefully it can spur some interesting discussion.
I have noticed with programming languages and environments that they tend to follow a curve that is in some ways similar to natural selection and evolution in species. Simple things tend to stay simple and have longevity (both bacteria and C have been around forever in basically the same form, and aren't going away anytime soon), whereas complicated things change radically, become useful, but then keep changing, change too much and then die. Or maybe they don't change enough and die. Complicated things tend to have narrow niches.
I'll use the .NET framework, and Microsoft's development environment as an example. I feel like things matured with C# 2.0, Visual Studio 2005, Sql Server 2005. .NET 1.1 was nice, but had some really annoying bugs and shortcomings, which were addressed in 2.0. Whenever I dig into the next release, I feel like it's all just lights and mirrors, and no actual usefulness. Sorry, I'm not a fan of linq. The new AJAX stuff is nice (I think that's ASP.NET 3.5?), but I can do AJAXy things in a million different ways using the current environment.
When do we say "enough is enough" and just stick with a platform that is performing perfectly for us?
Maybe this is just a sign that I'm getting old.