Lately, Microsoft keeps coming out with new technologies Linq, WF, WPF, etc… Seems to me that they are presented like technology inovations that completely change the way your applications are designed and coded.
Yet,they are based on the same underlying framework (2.0) If I look at Java, there are a lot of libraries that provide critical functionality (Hibernate, Spring for example), yet they are considered to be still just libraries.
So my question is, Do people think that these technologies are really changing the way we write windows code? Is it worth learning every development methodology that Microsoft is putting out with Visual Studio releases.
Or is this just hype. As libraries, they are important, however, not critical to get job done. Will they make as big of an impact and ss I learn it, it will considerably effect my future as a developer?
EDIT: The same goes for some of the language futures that are implemented. Some are changing the way we program (Generics) Others, are much less critical (Partial Classes) That makes learning Generics a critical part of learning .NET, unlike learning to use Partial Classes
To me, technology innovations change the way users feel about and interact with computers. Google search and phone based applications are good examples of this that everyone experiences. Of the latest Microsoft tech stack, I think only WPF is at all innovative. It actually allows developers to create new stunning UIs which before were too expensive or impossible to build. This then changes how the users interface with our software. All the rest are just a bunch more tools(libraries) for a developer to put in his tool bag to pull out when/if he needs them. You certainly can code great applications without them.
I am actually starting to find that the continual stream of new MS development ‘improvements’ are starting to make worse developers. Now instead of having time to focus on learning the business, creating great interfaces, talking with users, testing, and designing maintainable applications; we barely have time to keep up on buzzwords and new libraries.
Don’t get me wrong. Linq is great (especially over xml), but it doesn’t allow me to accomplish anything I couldn’t before with ADO.net (or ADO or DAO or OLEDB before that).