Sign in to follow this  

Visual Studio 2010 worth the upgrade?

This topic is 2651 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm curious what everyone thinks of Microsoft's lastest IDE, because I need to decide if I should upgrade from 2008.

I've always been a lover of Microsoft Visual Studio, without wanting to start a IDE religion war, I must say that I've been spoiled by it, and I refuse to code with Anjuta, Elipse, XCode or whatever else that's not VS.

Recently, my boss decided to buy licenses for Visual Studio 2010. I tried it a bit, but then I saw horror: Microsoft took out Dynamic Help, a feature I used every 5 minutes. That little feature made me more productive and I'm trying to convince the department to stay with Visual Studio 2008.

At the same time, technologies are evolving, and I don't want to work with an obsolete IDE. I took a look at the new features, and the big thing seems to be the dynamic types for the .NET framework 4.0. That doesn't look like a deal breaker to me (seems to be a feature for F# and IronRuby support) but LINQ didn't seem like a big deal either, although now I'm addicted to it!

Do you guys think that Visual Studio 2010 brings enough features on the table to be worth the loss of 2008's superior help system?

Share this post


Link to post
Share on other sites
Dynamic help was great, and so was Document Explorer. I'm not happy with the removal of DE.

However, I have to express concern at your extreme over usage of the help system. I mean, are you trying to say you haven't learnt anything and still need to look up every single keyword as you type?

Personally I love VS2010. I miss DE a lot, but the world hasn't ended.

Share this post


Link to post
Share on other sites
I have been using 2010 for a little while now, and as much as I love using it I haven't noticed any features that I find appealing, I personally like to stay up to date on the software in my field. I wouldn't say upgrade for nothing, I personally don't use the help in vs2008 and I haven't attempted to do so in 2010 so I cannot comment on those features. It has a few things you need to get used to from 2008 to 2010, but after that it is easy to use and I really enjoy the visual appeal of 2010 over 2008, and since I have to look at it for hours at a time this is important for me. Is it worth getting over 2008, look up 2008 vs 2010 comparisons and see if they are really worth switching for you.

Share this post


Link to post
Share on other sites
Quote:
Original post by BLiTZWiNG
However, I have to express concern at your extreme over usage of the help system. I mean, are you trying to say you haven't learnt anything and still need to look up every single keyword as you type?
No, no, no, that was exaggeration. IntelliSense tooltips are often enough to figure what a method or parameter does in case of a blank. But everytime I need to consult the complete reference to a method or class, I clicked on the link in Dynamic Help. I liked that feature because sometimes, a method name is referenced at 10 different places thought multiple libraries in the MSDN database. If an item was found 10 times, Dynamic Help will display all 10 links so you can pick the right one. F1, on the other hand, doesn't always give you the one you're interested in, especially in C++. In a C++ project, type "Create" and press F1. I doubt you'd fall on the Create you're looking for.

Share this post


Link to post
Share on other sites
I think it depends on what you use. For C++, probably not so much. I like the new C++ intellisense, although it is buggy as hell. Sucks having to do Project -> Rescan Solution all the time. It never updates when I want it and it sucks seeing lots of red squiggly underlines when there is absolutely nothing wrong with your code for anywhere up to a few minutes (for it to update). I also feel the "Go To Definition/Declaration"s works a lot better than before and the collapsing seems nicer. I also don't like the #include completion... every time I type in
#include<windows.h>
like I have done for the last 17 years, it goes and capitalizes that shit LOL. Hate it when it does that.

Other than that... seems the same to me :-). I just thank God I didn't have to pay for the update (thank you Dreamspark).

Share this post


Link to post
Share on other sites
(Still on 2005 here)

Have they fixed the form designer (for c++) yet, so you can put a tabbed dialog and then drag and drop controls onto the tabs?

You know, like you could in 6.0 and every other competitor?

Share this post


Link to post
Share on other sites
Quote:
Original post by yadango
I think it depends on what you use. For C++, probably not so much. I like the new C++ intellisense, although it is buggy as hell. Sucks having to do Project -> Rescan Solution all the time. It never updates when I want it and it sucks seeing lots of red squiggly underlines when there is absolutely nothing wrong with your code for anywhere up to a few minutes (for it to update).

I absolutely sympathise with you there, happens to me all the time.

If you have a 32-bit machine and large solutions, or aren't particularly needing/wanting to use .NET 4, or the latest C++ language features etc, then it would probably pay to wait until they put out a service pack. The compiler under 32-bit is particularly prone to randomly crashing, hanging, or generating spurious internal compiler errors when using the /MP switch, and of course is much slower without it. That goes away if you're running a 64-bit OS though.
It seems to have a lot of problems working out when precompiled headers need to be rebuilt, and frequently corrupts them, or at least complains that they are corrupted until you rebuild them.

It monopolises the system of my work PC (decent spec quad-core) so much that my PC is virtually unusable during a compile. Great for getting the build done faster I imagine, but I'd be happy for it to take twice as long and actually allow me to do other stuff in the mean time.

Oh, and if you use your monitor in a rotated position (I have one of mine rotated 90 degrees) then the UI slows to an absolute crawl on that screen. Even the mouse pointer slows to about 3fps when trying to select menu items! VS2008 OTOH is fine with it.

Well that's all the negatives anyway, which I think is what you were after.

Share this post


Link to post
Share on other sites
It's not bad, but I'm not sure the upgrade is worth it yet.

One problem I have is that there's no production ready version of XNA for it yet (XNA 4.0 will support it but is in beta). At least the DirectX SDK officially supports it now, but it's a bit frustrating that Microsoft don't support their own IDE with their technologies for months and months after release.

Also, I've found that the code editor crashes regularly when editing ASPX files, it seems to be relate to intellisense, as you're typing then it pauses and doesn't render anything new as if it's trying to find intellisense suggestions, and then the IDE just crashes losing you any unsaved work. There seems to be no patch for this yet.

I'd wait to upgrade until the bugs are ironed out, and when Microsoft themselves fully support it.

I don't see why you need dynamic help though, a browser window is only an alt+tab away and Google tends to jump up much better information. I don't think the time lost in typing into Google (assuming you're an adept computer user and can switch windows and type fast) and getting results is going to make any real difference to a project at the end of the day. It was useful when I was still learning, but even at 1920x1200 it ends up just being extra clutter. That doesn't mean Microsoft were right to get rid of it of course, but it's not a feature that should ever really be a deal breaker.

Share this post


Link to post
Share on other sites
I tried it out but reverted to 2008. The C++ intellisense is much improved and that alone is probably worth the admission price, but overall I felt that it wasn't quite ready yet. The IDE is just flat out too slow (although I'm on 8 cores now so it's probably worth another try shortly), and there were a handful of other niggles I can't remember right now - nothing dramatic individually but taken together they were significant enough. The real deal breaker for me however was that executables it produces won't run on Windows 2000. If you need to deploy to people with older machines that's worth considering.

Share this post


Link to post
Share on other sites
i love the new c# intellisense which looks for any CamelCase word as you type.

CallDavepermensMagicFunction now pops up when i write 'd'. i love it.

other than that, not much different. it serves me well. it just works.

Share this post


Link to post
Share on other sites
Quote:
Original post by mhagain
The real deal breaker for me however was that executables it produces won't run on Windows 2000. If you need to deploy to people with older machines that's worth considering.
Why is this a problem? I'm not trying to say it's not, I don't know what you produce, and what customers you might have that want new software on Win2K.

But no one was worried about Windows 3.1 support in 1998.

No one was worried about Windows 95 support in 2001.

No one is worried about Windows 98 support. And they weren't 5 years ago either.

Windows 2000 is now 10 years old. It was built to run on hardware that is 12-13 years old and doesn't exist anymore. The age of the 500mhz single processor, and 512mb was a lot of ram.

I imagine that the VS team gets to go over all the libraries that ship with it, and remove the outdated stuff that targets dead hardware, re-optimizing them to run better on current day technology.

Does GCC still target ancient OSes?

Share this post


Link to post
Share on other sites
If you use WPF a lot, I'd say upgrading to the 2010 Express Edition is worth it, since you get the graphical editor built-in. Otherwise, I don't see a big difference between VS 2008 and VS 2010.

Share this post


Link to post
Share on other sites
Quote:
Original post by Daaark
Quote:
Original post by mhagain
The real deal breaker for me however was that executables it produces won't run on Windows 2000. If you need to deploy to people with older machines that's worth considering.
Why is this a problem? I'm not trying to say it's not, I don't know what you produce, and what customers you might have that want new software on Win2K.

But no one was worried about Windows 3.1 support in 1998.

No one was worried about Windows 95 support in 2001.

No one is worried about Windows 98 support. And they weren't 5 years ago either.

Windows 2000 is now 10 years old. It was built to run on hardware that is 12-13 years old and doesn't exist anymore. The age of the 500mhz single processor, and 512mb was a lot of ram.

I imagine that the VS team gets to go over all the libraries that ship with it, and remove the outdated stuff that targets dead hardware, re-optimizing them to run better on current day technology.

Does GCC still target ancient OSes?

It depends on the user base. For maybe 99.9% of people who this discussion is relevant to it won't be a problem and everything you've said is perfectly correct, yes. There are certain communities who earnestly believe that mouldy old hardware and mouldy old software is somehow "better", and some people can be incredibly vocal about it. There are also those who are honestly stuck with older gear, and as a result need to run a downlevel OS on it (lower CPU and memory requirements), so if you're coding for those it's something you'll need to be aware of. Business users are another class (you'd be surprised at the number of Windows 2000 boxes still in production in that environment) but they're not relevant here.

Otherwise I wouldn't disagree with anything you've said, and would genuinely look forward to the day when everyone can be on a more modern OS (and more modern hardware).

Share this post


Link to post
Share on other sites
Quote:
Original post by mhagain
...
I have no doubt about the Win2K boxes in the business area. That's why I posed the question I did at the beginning of the post. Unless you actually have some niche market with customers running Win2K, the dropped support is like a tree falling in the forest.

If you come across a library that is using old Win2K boxes just as terminals to search through their database and find books, or similar situations, they should still keep using those until something is actually broken that needs fixing.

But there is no reason that the 2010 C++ runtime, or Windows library need to keep supporting all that old stuff in each new release. VS2010 is a windows compiler after all, and no one is using new software on those ancient, officially unsupported, platforms.

Those old machines are still churning away at whatever job they were bought to do, and their owners are not actively looking to purchase new software. Should they want to create it on their own, the tools already exist.

Share this post


Link to post
Share on other sites
It's still a little buggy; you might want to wait till they patch some things. I've been using it for a couple weeks now and every other time I try to build my project, mt.exe hangs and I get a build error. This is no big deal as I can hit build again and it instantly finishes the build but it's still a little annoying as it happens randomly. Also the IntelliSense is rather buggy, but still helpful.

Share this post


Link to post
Share on other sites
Personally I've found the new C++ features worth the cost of entry alone; the amount of lambda'd loops which exist in my code is amazing right now [grin]

The compile behind is also very handy for picking up errors before you hit compile for real.

Share this post


Link to post
Share on other sites
Quote:
Original post by Bearhugger
I'm curious what everyone thinks of Microsoft's lastest IDE, because I need to decide if I should upgrade from 2008.


I think it depends on what you want to do. If you're interested in targeting Windows Phone 7, and possibly the latest XNA (and web development?), you'll probably need 2010.

As always, with an IDE upgrade comes the additional slowdowns and bugs. And, upgrading the IDE doesn't magically make you a better programmer; a good programmer can create the software needed regardless of the tools given. I tend to follow the advice I've heard a number of times; I will not upgrade until the first service pack is released. Every version since at least Visual Studio 5 has initially been slow and buggy; I got Version 4 after it was released so this probably applies to earlier versions also.

I stuck with Visual Studio 6 for most of my work for years. I knew I could deliver software that ran on customer's system without needing runtime files installed; and the IDE was really stable, and didn't have the slowdowns present in 2003/2005.

Quote:
Original post by Xest
It's not bad, but I'm not sure the upgrade is worth it yet.
At least the DirectX SDK officially supports it now, but it's a bit frustrating that Microsoft don't support their own IDE with their technologies for months and months after release.


I would assume a big majority of Microsoft does not use the cutting edge tools. The OS is probably developed with an older version of the IDE, and Microsoft Office used to be developed with straight Win32 and an older compiler. Looking at WinWord.exe (for Microsoft Office 2003), you will see that it's linked against msvcrt.dll, which is the runtime file for Visual Studio 4.2 to Visual Studio 6. You will also notice that it only links against a standard set of win32 DLLs (ie no MFC, ATL, .NET, etc).


[Edited by - cdoty on August 31, 2010 12:35:10 PM]

Share this post


Link to post
Share on other sites
Quote:
Original post by cdoty
As always, with an IDE upgrade comes the additional slowdowns and bugs. And, upgrading the IDE doesn't magically make you a better programmer; a good programmer can create the software needed regardless of the tools given. I tend to follow the advice I've heard a number of times; I will not upgrade until the first service pack is released. Every version since at least Visual Studio 5 has initially been slow and buggy; I got Version 4 after it was released so this probably applies to earlier versions also.

I stuck with Visual Studio 6 for most of my work for years. I knew I could deliver software that ran on customer's system without needing runtime files installed; and the IDE was really stable, and didn't have the slowdowns present in 2003/2005.


IDE upgrades won't make you a better programmer, but they definitely can make you a more efficient one. Then there's the compilers that come with them are vastly more efficient.

The compiler that came with VS2003 was much better than the one that came with VC6, if not just for the fact that the C++ standard was actually implemented. VC6 encouraged bad behavior and had often unexpected results for things that should have had one result.

The jump away from VC6 was probably the most important one in regards to microsoft compilers.

Share this post


Link to post
Share on other sites
I recently tried VS 2010 Express and really liked the new IDE and Intellisense features. However it ran like a complete dog on my eee netbook, even with a very simple app, so much so that I had to revert back to 2008 which runs like a dream on the netbook. It's a shame, I could have definitely got used to it particularly as the Express editions don't support plugins (Visual Assist and MetalScroll are hard to live without!)

Share this post


Link to post
Share on other sites
Thanks for all the answers. It's really helpful.

About WPF, VS2008 supports it as well. Has the 2010 support improved much? In 2008 it's lacking MDI and spinboxes. About the former, I know Microsoft isn't too fond of MDI so I don't suspect it to be supported anytime soon. (I'd probably have to implement a tab-based GUI interface.) I don't really use WPF, but I'd like to get into it. I even bought a WPF book.

It doesn't seem that I'd gain much by switching right now. Yeah I think we can afford to wait for a service pack or two before upgrading.

Share this post


Link to post
Share on other sites
Hi, I've been using VS2010 and very happy with is. I found this site that pretty much talk about pros in using VS2010 http://c.ittoolbox.com/groups/technical-functional/csharp-l/whats-new-in-vs2010-and-is-it-worth-upgrading-3531098#M3669289

Share this post


Link to post
Share on other sites
I remember having some pain installing the windows sdk with the vs2008(something about having to install one or another first, and lots of errors and reinstalling)
Anyone know if it is clean on vs2010?

I dont remember exactly what the sdk does by 'connecting' with vs either..

Another pain with vs2008 is the intellisense getting lost because of includes..so closing and reopening make it works again, or commenting out and back a include, cleaning the solution..vs2010 still have those issues?

Another thing that Id love to know is why vs doesnt save your outline blocks, it just save for the current project, and is not always, if you outline more things another ones start to expand, its a huge pain..allowing to save this would be the greatest improve to me, much more organization and readable code.
Dont tell me vs alredy do that and I just dont know how because I will kill myself if so..

Share this post


Link to post
Share on other sites
IntelliSense has never been very robust for C++ as far as I know. I haven't toyed with VS2010 too much, but the only new thing I noticed in C++ IntelliSense is that it now opens a list of include files when you type #include. In C# 2008, IntelliSense is almost perfect. I wonder how it could be even further improved in 2010.

About code folding, once again, it's another case of a feature C# gets but C++ doesn't.

Share this post


Link to post
Share on other sites
Quote:
Original post by Bearhugger
IntelliSense has never been very robust for C++ as far as I know. I haven't toyed with VS2010 too much, but the only new thing I noticed in C++ IntelliSense is that it now opens a list of include files when you type #include. In C# 2008, IntelliSense is almost perfect. I wonder how it could be even further improved in 2010.

About code folding, once again, it's another case of a feature C# gets but C++ doesn't.


as i said above, it improved in c# in that it doesn't only list the stuff that has the same beginning of the word, but the same beginning of any camelcase-subword.

if you type "obj" it'll list ProcessPhysicalObjects in the IntelliSense dropdown, too.

how ever small that change sounds, it's a big difference. Fell in Love with it immediately.

haven't noticed much else, myself, really... but it's still a nice new ide.

Share this post


Link to post
Share on other sites

This topic is 2651 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this