Improvements to IntelliSense over the years alleviated this problem somewhat, and Visual Studio 2010 brought unit testing into the tent in a way that was only moderately incompatible with NUnit. The Test Explorer in Visual Studio 2012 unified NUnit and MSTest, as well as unified .Net and unmanaged C++ unit testing. Another set of essential features for TDD was introduced at that time: Microsoft Fakes.
The Fakes framework generates mocks for classes and APIs that you want to exclude from a unit test. For example, you don't want to unit test from live data; it changes from run to run, and the test will fail even though it's working correctly. Instead, you want to unit test from fixed data and with APIs that always return the same results. Indeed, for a unit test, you want to use a stopped clock, not DateTime.Now.
There are two categories of Fakes: stubs and shims. Stubs are mocked classes generated by the Fakes framework. You use them to isolate the classes under test from other classes in your application that return variable results. Shims are runtime modifications of your calls to external applications, services, and system APIs. Ideally, you would always use stubs when they were applicable, and you would only use shims when forced. On the other hand, if you're lazy, shims will always work, albeit slowly.
If you've installed the current Windows Azure SDK, you can create Azure sites and databases directly from Visual Studio 2013.
Sign in to Visual Studio 2013
In previous versions of Visual Studio, you either installed a pre-registered version of the product from MSDN or you activated a demo version of the product with a code. Visual Studio 2013 gives you another option: Sign in with your Microsoft ID.
This is good for Microsoft — it can phone home and make sure you have a current MSDN subscription for the product you're using. On the other hand, if you want to avoid that, you can enter an activation code.
Nevertheless, I sign in because it lets me synchronize multiple installations of Visual Studio 2013 on different computers using a roaming profile. What does it synchronize? Most important, it synchronizes your Team Foundation Services account credentials. But it also synchronizes your color scheme and font choices, your language preference, and your keyboard settings. If you move among many shared development computers and have a highly customized keyboard map, synchronization is a huge convenience.
As you've probably gathered by now, Visual Studio 2013 presents a huge learning curve to new users. Visual Studio 2012 is composed of about 50 million lines of code, and Visual Studio 2013 is bigger. There are so many actions in Visual Studio and TFS, so many documents in MSDN, so many samples to go through, and so many videos to view, that the learning curve for a new developer can appear overwhelming. While you can learn Visual Studio and TFS from the product and MSDN, it might not be the best way to use your time unless you actually enjoy solving giant puzzles.
Sign up for CIO Asia eNewsletters.