<Disclaimer>This is personal notes of what I retained during the session. This can be incomplete, partially right or wrong. It is just part of the notes I took and what retained my attention. Nothing prevents the user to get more information on their favorite web site.</Disclaimer>
Today, we can extract 7 major trends in the software development process. First, the search becoming a lot more important. Indeed, searching for files, emails and finding a way to organize the information is now crucial. It is the same when we write code. Then, a new user-experience is coming, using new paradigm in the way the development tools are proposed (Rich User Interface). In terms of agility, there is a need for Intellisense and Quick Info. More and more, the develompent is done in a declarative way that allows the develompent tool to do all the plumbing for us. The three remaining trends are the support for legacy code, the Cloud that influence the next steps to adapt Visual Studio, and the concurrency.
During her first demo, Karen Liu showed us the new functionnalities of the QuickSearch that now works accross languages (C#, VB.NET, etc) for types. It offers also a "search as I type" functionnality. It can also be used to search for a file.
With Visual Studio 2010, when selecting a symbol, all references to it are highlighted. But it is done only for the one that have the same signature or type. The user interface, written in WPF, can easily be extended and Karen showed us how all references to a symbol present in a file can be displayed in the margin of Visual Studio.
Adding unit tests is simpler and handled directly by the user interface with an automatic generation of the classes. The Intellisense has now a "filter as you type" feature that speeds up the code writing.
Arriving on a running project can be difficult. Even more when a lot of code is present. The calls dependency is a new feature that allows the developer to see what the code is calling, and which part of the code is calling the one selected.
Another great feature is the historical debugger. Imagine that the runtime hits a breakpoint, it is now possible to come back in the code and to execute step by step the program. In other words, it is a kind of replay. The Functions and Diagnostics Event allows to see what are the events that occured and also the exceptions raised, being caught or not. It is also possible now to record the execution of a program in order to send this to someone to reproduce the scenario.
This session was the last of a great TechEd. Not a lot of things were announced, but the content was interesting and technically advanced for some of them.
Next year, the TechEd will take place in Berlin between the 2nd and the 6th of November 2009 at the Messe Berlin (Germany). Hope to see you there.