VS 2010 productivity improvements – Part I


Every developer deserves a fantastic development environment that allows them to write, understand, navigate, and debug code as efficiently as possible.  After all, developers spend most of their time in the IDE.

As we designed and built Visual Studio 2010, we let this principle guide the product, and I think we’ve delivered an IDE that raises the development experience bar significantly.  Starting today and over the coming weeks, I will highlight my favorite productivity features in Visual Studio 2010.  Some of them are small features, and some of them required a large, coordinated effort across the team, but each one makes developers’ lives a little easier.

Multi-Monitor Support

Many developers have invested time and money in their coding cockpit: just the right chair, a keyboard that fits your hands and habits, and, of course, two or three monitors so you can maximize your screen real estate.  Until 2010, Visual Studio’s single window didn’t let you spread your coding experience across more than one monitor, but now that’s changed.  Tear-off tabs allow you to drag coding windows and tool windows out of Visual Studio’s window frame and onto another area of your screen or another monitor.  You can pull as many windows out of the Visual Studio window frame as you like, and then put them back into the editor tab strip or dock them within Visual Studio again when you like.

 

Multi-Targeting

Even though you are taking advantage of the latest .NET runtime, your customers may not be, or you may have applications that are built against a previous version that aren’t quite ready to be upgraded to .NET 4 yet.  Visual Studio 2010 allows you to build projects that target .NET 2.0, .NET 3.0, .NET 3.5, or .NET 4.  The New Project dialog lets you choose the version of the .NET Framework you’d like to target or find additional versions or profiles of the .NET Framework online:

 

You can change the targeted version on an existing project in the project properties:

 

Once you’ve set a particular targeted version of .NET for your project, you will get IntelliSense, toolbox controls, and properties in the property grid that are appropriate for the version you’ve chosen.  The debugger, profiler, and compilers have also been updated to support multi-targeting.  And .NET 4 and Visual Studio 2010 run side by side with previous versions so you can use the appropriate tools and frameworks for your project.

Code Navigation

What was the name of that method?  It’s something like “state custom”.

When you’re working with a large codebase, sometimes you remember something about a piece of code you’re looking for, but not the specifics.  The new Navigate To tool lets you find code from whatever you can remember. 

You can bring up the Navigate To tool using Ctrl + comma, then put whatever you remember into the Search terms box.  Visual Studio will do a fuzzy search and give you all matching members, functions, macros, etc., along with their location and scope. 

 

Items from referenced libraries will appear in the results as well, but if you’re interested only in items from your code, you can check the “Hide external items” checkbox to filter to just your code.

 

More Coming Soon

This is just a taste of a few of the productivity enhancements in Visual Studio 2010.  Look for Part II, which will focus on editor improvements, soon!

Namaste!

Comments (19)

  1. Faisal iqbal says:

    VS 2010 is really very slow. I prefer using VS 2008

  2. Rory O'Donnell says:

    [quote]Even though you are taking advantage of the latest .NET runtime, your customers may not be, or you may have applications that are built against a previous version that aren't quite ready to be upgraded to .NET 4 yet.  Visual Studio 2010 allows you to build projects that target .NET 2.0, .NET 3.0, .NET 3.5, or .NET 4.  The New Project dialog lets you choose the version of the .NET Framework you'd like to target or find additional versions or profiles of the .NET Framework online:[/quote]

    – Eh, not unless your .NET applications are written in managed C++.  You have to manually edit the project xml file to correctly target your .NET runtime.  Still, we are thankful that we don't have to use edlin to edited it I suppose.

  3. smnbss says:

    Agree with Faisal. VS 2010 is super slow… I have built a small tool to switch a project/solution from VS2008 to 2010 and vice versa, so I could develop with VS2010 while my colleagues where still using 2008… in the end, instead of migrating everybody to 2010, I moved back to 2008. 2010 is totally unproductive.

  4. Catto says:

    Hey Now Somasegar,

    Nice post, clear & easy to read.

    Thx 4 the info,

    Catto

  5. Mark Squires says:

    Nice post. I run my vs 2010 ultimate on an amazon ec2 instance and the performance is great for me.

  6. rfjnewton says:

    VS 2010 is really very fast. I prefer using VS 2010.

  7. Jason Manosh says:

    VS 2010 is the biggest piece of garbage to ever come out of Microsoft. Numerous support tickets for assembly locking errors, regular crashes and restarts, missing and broken toolboxes, slow to build and slow to use. Piece of garbage. We migrated back to 2008 after weeks of trouble using 2010. I'm suprised it isn't making national news that this product is so awful.

  8. Digital samurai says:

    Contrary to the 2 posters above, I find VS.2010 very responsive.

    However I do use current gen hardware as well as a small SSD for my OS (win7) + VS.

    Executing a batch of 1000+ unittests is near instant, literaly fractions of a second.

    I would advise upgrading your system…

    Kind regards,

  9. Abo_Omar says:

    Hi Soma

    I really appreciate all the work that the VS team done in this release

    but I wait for the Modeling and Visualization Feature Pack which is very very very coooool as it will support visulaization for the unmanaged world and the websites

    Keep Going forward 🙂

  10. Rajesh Kolla says:

    The features listed in this article are really useful and are exclusively available with VS 2010 and not with any earlier VS versions. I personally have great experience so far with VS 2010 and  I am wondering under what kind of system infrastructure, other posters experienced VS 2010 slower than VS 2008.

  11. George Tsiokos says:

    Multi-Targeting works great unless you have unit tests – those projects can't be changed from targeting .NET 4. This prevents me from moving from vs 08 to 2010!

  12. Bob Scott says:

    Good article and I'm looking forward to the next article. I have had no problems with VS2010 except problems with the Help. (I realize that's a different team). Good job!

  13. David Berg says:

    @Faisal, Smnbss, and Jason,

    We'd like to know more about the problems you're having and why experience isn't as good as some of the other people posting here.  Can you please contact us at DevPerf@Microsoft.com with more information about the your environment and the problems you're seeing?

    Thanks,

    David Berg

    Developer Division Performance Engineering and Fundamentals

  14. Nick Nelson says:

    We switched to VS2010 the day it was released and prompty upgraded our projects to utilize the .NET 4 framework and it's been great.  The development environment occasionally locks up, which is always irritating, but not enough to justify going back to VS2008.

    We're running on hardware less than a year old and 64 bit Windows 7

  15. <a href="http://www.techno-pulse.com/">Basat | Techno-Pulse</a> says:

    Multi-monitor support is good feature. I'll definitely convince my team to use it for upcoming projects. Currently we are on VS-2008.

  16. <a href="http://www.techno-pulse.com/">Basat | Techno-Pulse</a> says:

    Multi-monitor support is a good feature. I'll definitely convince my team to use it for upcoming projects. Currently we are on VS-2008.

  17. Tamal Mukherjee says:

    I found multi-monitor support and code navigation for searching method names really useful.

    Thanks!

  18. Sarath says:

    Soma,

    I agree that VS2010 is far far better than any predecessor of visual studios. It's really good. but the problem is the intellisense has a cost. Users will never care about the hidden cost.

    What I'm trying to explain is the popup dialogs appearing while adding classes or functions in the native C++ environment (I've not tried in C#). This can be avoided. the navigate feature is also not instant. See the other tools like Visual Assist Doing. they're damn good about it.

  19. Gyorgy Bozoki says:

    Seeing how this blog entry is about "PRODUCTIVITY ENHANCEMENTS", I decided to post a link here about what Somasegar, Suzanne Hayden and the rest of the Microsoft team consider an ENHANCEMENT.

    social.msdn.microsoft.com/…/87455de6-2a7d-42dd-b51f-ddd442c3e3fd