back to article Visual Studio 2010 - your chunky new friend dissected

Windows 7 is roaring ahead in acceptance, but look beyond the desktop and Microsoft's platform is not in great shape. Microsoft is losing to Apple, Google and RIM on mobile, in cloud computing Azure is only just getting started, Internet Explorer is down to a mere 61 per cent market share on browsers, and there's been a slow …

COMMENTS

This topic is closed for new posts.
  1. Goat Jam
    WTF?

    Am I missing something?

    "If you use multiple displays, the ability to float windows from one display to another is almost worth the upgrade in itself."

    What exactly is so special about that? Can't you do that already? I can on Linux/Gnome anyway.

    Or I parsing that sentence incorrectly?

    1. AndrueC Silver badge

      Your question has merit, sir

      I use multiple displays with vs2008 and I too can put windows anywhere I want. In fact my standard config has all but the editor on my second monitor. I've been doing that since vs2005 actually.

      1. Vehlin

        Code Windows

        You can move most windows around in VS2008, but not the code windows. VS2010 lets you have two classes open side by side etc.

        1. ChrisC Silver badge

          Multiple code windows

          In VS2008 (or at least VC# Express Edition), switching Window Layout (Tools>Options>Environment>General) from "Tabbed documents" to "Multiple documents" lets you move the source code window and open additional ones, view the source code and form designer windows at the same time, etc...

  2. Anonymous Coward
    Anonymous Coward

    Mobile development

    So it WILL be possible to develop for mobile from it? Do you know when this feature might be available?

    1. Will.
      Boffin

      Re: Mobile Development

      MS already give away Visual Studio 2010 Express for Windows Phone (or whatever it's called) for free with the Windows Phone 7 SDK and Emulator. What more do you want?

  3. Greg J Preece

    Multiple Monitors

    "If you use multiple displays, the ability to float windows from one display to another is almost worth the upgrade in itself."

    Eh? I've just got VS2008 and I can undock all the palettes and move them around just like I do in NetBeans. Or do you mean the main code/form editor panels?

  4. AndrueC Silver badge
    Gates Halo

    The real question though..

    ..is it still clunky and slow? Are various dialogs (such as build events) still not remembering the size you set them to? Are various drop-downs in C++ program options still not updating their history lists correctly?

    In short - is the user experience still unpleasant?

    Just because it's a developer tool doesn't mean that they are excused from basic user friendly ammenities.

    1. Anonymous Coward
      WTF?

      Re: Is it chunky and slow?

      In short: Yes.

      I had to upgrade to a 6 GB RAM machine with quad core CPU and still it is somewhat sluggish. There's just so many features that it is bound to be. I'm using the ultimate edition. The WPF designer is as slow as fuck, in particular. Starting to think I will jump ship (back to Java) when it gets to version 7. MS managed to bloat their stuff so much that they are in parity right now.

  5. BRAINPLAN
    Thumb Down

    Lousy intro...

    "Microsoft is losing to Apple, Google and RIM on mobile, in cloud computing Azure is only just getting started, Internet Explorer is down to a mere 61 per cent market share on browsers, and there's been a slow but steady decline in web servers for Internet Information Server (IIS) from around 20 per cent of the million busiest sites in September 2008 to 17 per cent in March 2010.

    In Rich Internet Applications, the Silverlight runtime has muscled its way onto over 50 per cent of web browsers but remains well behind Adobe Systems' Flash at over 96 per cent."

    So tired of hearing things like this - it's 2010!!! There are hundreds more competitors in software markets - it is obvious Microsoft are going to lose market share!!

    The rest of the article was good but i don't think journalists need to keep hi-lighting the fact that Microsoft aren't the complete global dominator they once were (although, they actually still are as long as the stats stay over 50% ;)

    1. Anonymous Coward
      Stop

      Tech Author

      Microsoft Office is still a goldmine. 99.9% of new PCs ship with an MS O/S and companies (like Dell) only offer really low price reductions if you don't want an O/S. No large corporation I know of has abandoned MS Office for any other product (e.g. Open Office).

      When I see one large organisation (apart from Apple) that doesn't have a PC with a Microsoft Windows O/S as the standard I'll agree that Microsoft are on a downward spiral.

      F# - now that was interesting (and I thought it was just a research project, not for the mainstream)...

      1. Tippis
        Go

        F#

        The inclusion of F# is in and of itself another interesting development that shows the pressure that's been building on MS. It's in functional programming that we find the fundamental concepts that made Google search so successful. If MS have picked up on this and begun to push in the same direction, then that's yet another good sign of how they might be moving out of their complacency and into the very nasty competitive mode that occasionally makes them produce wtfawxsome products…

  6. swsnyder
    WTF?

    Code gen?

    And again no mention of code generation.

    Amidst all the ooing and ahing over the newest eye candy, it would be nice to get at least the barest inkling of how this program does at its intended purpose: creation of Windows executables.

    How big are the binaries relative to VS2008? Relative to VS2005? What instruction sets (remember those?) are supported by the compiler? Can post-SSE2 instructions be automatically generated in the binaries or are explicit intrinsic functions still needed? What is the relative performance of a VS2010 binary compared with the same C/C++ source compiled by VS2008 or VS2005?

    Pffftt!! Some tech site.

    1. fireman sam
      Thumb Down

      RE: Code Gen

      Surely that's a feature of the .NET 4.0 SDK and therefore completely irrelevant in a discussion about VS2010?

      1. Ocular Sinister
        FAIL

        Not unless they've dropped C/C++ support

        Not unless they've dropped C/C++ support completely...

    2. MinionZero
      Unhappy

      @swsnyder: “Code gen”

      I totally agree about the code generation. I think its part of a more general problem with their thinking and priorities. Microsoft are not focused on the core basic requirements of programming, they are too busy off dreaming of ever more shiny shiny bell and whistle features (all this eye candy you mention). They could (and should) make core basic functionally so much better than it is currently.

      For example, one of the biggest jobs is simply writing and maintaining code. Therefore refactoring tools can give a huge productivity boost. (Refactoring tools for Java coding are a joy to use and its a real downer and sense of loss to have to go back to suffering poor refactoring tools when coding in C++ by comparison). (Most of my work has been in C++ so back before I experienced how good refactoring tools can be, I didn't know what I was missing. But since I learned the joys of refactoring I've waited years for Microsoft to catch up and they still don't).

      Surely a primary research and development goal for Microsoft should be to make C++ refactoring so much better that programmers experience a huge productivity boost. Microsoft should be researching next generation refactoring tools, not dragging years behind in their support for it.

      So in this regard VS2010 is a huge disappointment and another lost opportunity to make it so much better.

  7. John P
    Thumb Up

    @AndrueC

    I haven't tried it yet but from the many many videos I have watched of VS, from PDC/MIX and various tutorials, it certainly seems to be a lot speedier.

    They have also made the 'Add Reference' dialog asynchronous, so no more waiting 10 years for it to pick up every .Net and COM assembly on your machine before it will let you do anything. This has historically been my biggest bugbear with VS, so I am glad to see it finally sorted.

    1. AndrueC Silver badge
      Boffin

      Cool-ish

      Yeah, I heard about the reference dialog improvement and that will certainly remove a significant headache.

      But my problem with vs2008 (and its predecessor) is just that they are unpleasant to use. It often feels like someone (probably a VS expert) knocked up the dialog in order to give access to the functionality but didn't bother to run it through user testing. That leaves all sorts of pitfalls and gotchas for the less wary. Okay so they are rarely fatal but they can waste a lot of time in general 'faffing' around and cause stress that isn't directly related to the job in hand.

      The analogy I often use is that of a racing driver. They spend weeks preparing for an event, studying the circuit, testing how the car responds, examining telemetry second by second and viewing hours of footage from previous events. On race day they approach the car all psyched up ready to grapple with the intricacies of the race - and discover that someone has forgotten to bring the seat.

      It's that kind of pointless, time wasting idiocy that gets right up my nose with vs2008. Lots of silly loose ends that - IMO - the IDE should quietly and efficiently sort out for you. Instead it keeps dropping them in your path and tripping you up.

  8. Anonymous Coward
    Thumb Down

    Where's the dissection?

    This just seems to be a parsing of the marketing digest. i was hoping for some in-depth analysis of the features comparative to VS2008...

  9. Nat Pryce

    Developer productivity featurs?

    What about navigation, code analysis and refactoring? Are they still awkward, slow and unreliable?

  10. Anonymous Coward
    FAIL

    Eh?

    Did I really read that? Are you actually complaining that silverlight 4 isn't included despite the fact that you then go on to say that it's not available till the 14th...

  11. Vincent Ballard

    Search?

    How about the real basics, such as search? Have they caught up with Eclipse by allowing you to limit searches to declarations of methods/properties or writes of fields/variables/properties?

  12. Ocular Sinister

    Does it still...

    * ...crash 50% of the time when opening an XAML file?

    * ...leak memory like a sieve?

    * ...regularly corrupt the screen with random pixels?

    * ...feel like molasses on a cold day when working?

    1. Anonymous Coward
      Thumb Up

      Re: Xaml

      Just a quick thought on XAML files:

      Right Click -> Open With... and set Source Code (Text) Editor as the default.

    2. Vehlin

      XAML Editing

      Having spent the last 3 weeks writing a WPF app in VS2010 RC I've not had a single crash with XAML files, Memory has been known to be sucked up a bit (I had one VS2010 process on 650MB at one point) but overall it's been fine, much more pleasant to code in than its predecessors.

  13. Nexox Enigma

    Heh

    The most amusing part of the article would have to be:

    """Internet Explorer is down to a mere 61 per cent market share"""

    vs.

    """Silverlight runtime has muscled its way onto over 50 per cent of web browsers"""

    So MS hasn't even managed to get all of their own browsers running their own framework. Nifty.

  14. Anonymous Coward
    Heart

    "Nice package, shame about the platform"

    Nice tagline. It's not like any of us need to be told again that Windows sucks.

  15. Anonymous Coward
    Gates Halo

    What's wrong with the platform?

    Windows 7 rocks. All of the people I know that have had problems with Windows 7 have been third party driver related. As for Eclipse vs. VS, no contest, VS wins hands down in some many other areas.

    1. Steen Hive
      Gates Horns

      Windows 7 does rock

      hmm never thought I'd say that. :-)

      But Visual Studio wins over Eclipse in surprisingly few areas - the native debugger being one that comes immediately to mind. The MS Compiler is usually pretty tight with good compile times too.

      Eclipse is such a mammoth project that it is a whole platform unto itself and a direct comparison with VS is kinda lame anyway. Eclipse gets a lot of somewhat justified stick for being a resource-hog and a bit slow, but if the betas of VS2010 were anything to go by, it's got some competition in that department.

      Just for spite - VS loses out 100% to Eclipse in coding any language targeting anything but windows, from embedded systems up to big-iron. It even loses out ON windows for the likes of Adobe Flex, PHP, enterprise Java, etc.

  16. Petrea Mitchell
    Boffin

    F#???

    How the heck does F# follow C#? This makes no sense!!

    ...Everyone knows the next one after C# is supposed to be G#.

  17. Anonymous Coward
    Thumb Down

    Visual Studio 2008

    ..is clearly the best C++ IDE that mankind knows of. Only aliens might have something better.

    Linux, Solaris and MacOS do not having anything comparable, at least for C++. And please don't tell me that Eclipse can do that for C++. C++ tooling feels like a rectal cancer check.

    What I do not like is that MS apparently got infected by the Managed Language Disease and have decided to implement VS2010 in .Net.

    Java and .Net are probably responsible for the operation of more than one Gigawatt-class power station, which could be spared by just using something more efficient. Like this:

    http://sappeur.googlecode.com

    It's BSD licensed and quite useable now. You have to break pointer cycles, though.

    The Delphi-knockoff Lazarus (open source !) is also noteable.

    1. Skydreamer
      Thumb Up

      Code::Blocks

      Code::Blocks works very well for me on Linux - the feature set may not look like a phone book but is quite respectable and helps me get the job done without my wishing for more:

      http://www.codeblocks.org/features

    2. chuckc
      Stop

      hang on..

      I am really tired of hearing people assert that VS is the best IDE ever. I have used it extensively to develop C++ libraries on Windows platforms and I still remember having to hack something into the code to get memory leak backtraces? Xcode does that better with Instruments. Another thing, does VS allow to use multiple cores to build several objects concurrently _without_ having to split the solution into several projects? Xcode will use 2 cores if you have 2 cpp files in a single project. Does VS integrate with SVN without external tools? Can I use LLVM with VS? What is the load time for a 200+ source file project compared to Xcode?

      As much as I hate iPhone app development, Apple just gets things right, whether it's for the end user or the developer.

  18. Chris Hills
    Thumb Down

    Backwards compatibility?

    I now have 5 versions of the .Net Framework installed - 2.0 SP2, 3.0 SP2, 3.5 SP1, 4 Client Profile, 4 Extended. This is getting silly!

  19. Anonymous Coward
    Coat

    Aren't we missing something?

    I click on an article about Visual Studio 2010 and there are no pictures of Dawn French?

    Yeah, the trenchcoat's mine, fnar fnar.

  20. Anonymous Coward
    Thumb Up

    Dawn French

    ...symbolizes the size requirements of VS2010. I like that.

  21. Anonymous Coward
    Anonymous Coward

    @jlocke

    "Linux, Solaris and MacOS do not having anything comparable, at least for C++. And please don't tell me that Eclipse can do that for C++. C++ tooling feels like a rectal cancer check."

    Who needs Eclipse? vi, gdb and the command line have worked fine for me even when I was developing back end trading servers at banks, IDEs bring nothing to the table and just get in the way of what I want to do. If you're the sort of programmer who needs an IDE to be productive then you're a half witted moron who shouldn't be let within a mile of a compiler but just left in your playpen with a copy of VB6 to drool over.

  22. Anonymous Coward
    Flame

    @boltar

    It is just very productive to inspect a data structure recursively with VS2008. Much faster than gdb's print. Or navigate code with the right-click menu.

    When the program does what I want I build it on Linux and just verify all is Ok.

    But I guess real programmers like you never debug programs - you write correct stuff on the first attempt, right ?

  23. Anonymous Coward
    Anonymous Coward

    valgrind

    ..is also a great tool of Linux which I use after debugging some functionality on Windows. Using both Windows and Linux is probably the best approach to C development.

  24. Anonymous Coward
    WTF?

    @jlocke

    "When the program does what I want I build it on Linux and just verify all is Ok."

    Yeah , sure. What programs do you write, variations on Hello World? Because any sophisticated C/C++ app will require a boatload of #ifdefs in the code to compile on the 2 separate platforms unless you're using some library like Boost to do everything for you , but even then its unlikely to be completely portable in all situations.

    "Using both Windows and Linux is probably the best approach to C development."

    Riiiight. So I want to code on linux using a multiprocess approach communicating via pipes or shared memory and utility exec'ing using master slave pty control. Then I need to port it to Windows. That'll be fun.

  25. Anonymous Coward
    Go

    @boltar

    It is actually possible to write programs that easily port from Windows to POSIX and the other way around.

    Just refrain from using something platform-specific or encapsulate that in a wrapper lib.

    Wanna see:

    12k lines of code, a compiler/translator, very fast:

    http://sappeur.googlecode.com

    I concede that compilers are especially easy, but nearly everything else can be platform-agnostic, too. There are GUI libs around and shared memory can be wrapped in a library. Windows or Domain Sockets aren't required often, so you can use TCP sockets.

    If you need them for some reason, build a wrapper around it.

    Same with locking/multithreading.

    Another approach is cygwin, but that probably does not nicely integrate with VS.

    Nobody forces you to use platform-specific APIs directly !

    1. Anonymous Coward
      Anonymous Coward

      @jlocke

      "If you need them for some reason, build a wrapper around it."

      Which brings us back to code with #ifdefs

      "Nobody forces you to use platform-specific APIs directly "

      You're missing the point - I want to use the Unix API. Its fast , doesn't rely on 3rd party libraries being installed and is usually more flexible.

      Show me a portable version of fork() for starters. Even after 20 years Windows still can't do it properly.

  26. Anonymous Coward
    Go

    @boltar, 2:

    I forgot to mention that I contributed to an Object Request Broker platform a couple of years ago which ran on WNT, Solaris, AIX, HPUX and even MVS/OE. Some guys privately made a BeOS port...

    We had all in nice wrapper libs (for Sockets, Mutexes, Shared Mem, Files etc) that were properly tested. No big deal whatsoever. Just that compilers had different levels of strictness about minor issues. The MS compiler was normally better than gcc in its warnings.

    We did not use SourceSafe, but CVS. A very good choice.

    Currently I suggest:

    * VS2008 as debugger/IDE

    * subversion for source control

    * valgrind as memory checker

    * cygwin as the shell/file tools

    Of course pure Win or pure POSIX setups can be used, too. But one can get portability at low cost, so if customers demand it, one can easily do that.

  27. Anonymous Coward
    Go

    @boltar

    ""If you need them for some reason, build a wrapper around it."

    Which brings us back to code with #ifdefs"

    Indeed you will have a small number of #ifdefs in those libraries. So for example, your File API Wrapper might introduce 10 #ifdefs. There is indeed *some* effort related to that. But you certainly do not look daily at those #ifdefs, because you have debugged your wrappers once and they are realiable now.

    You do *not* have #ifdefs scattered around your "main" body of code. Instead you will use the Wrapper classes at lots of places.

    Regarding fork() - this is an issue because Windows/NT and all of its descendants do not have a proper replacement for that functionality, as far as I know. No way to inherit file handles and so on.

    But the modern way of application architecture uses threads, anyway. So this example is a bit of odd.

    If you start with a new software design you can normally limit yourself to using the subset of features you can reliably use on several operating systems, including windows/NT-type, POSIX and probably also zOS and VMS.

    Porting a legay POSIX app to Windows is probably a bad idea, though.

    And I also stick to the idea that windows/VS2008 is a great debugging platform and Linux should be used for valgrind and svn server.

  28. Stephen 1
    FAIL

    Compiler errors

    Our code base, which compiles cleanly at maximum warning levels, on both GCC and VS2005SP1 causes internal compiler errors on VS2010 in template code.

    It also buggers up some of the properties macros ($OutDir at least) when you import old projects so you have to tweak them to get it to compile in the first place.

    It may have lots of new wizz-bang features, but if it can't compile C++ code properly I think we'll be sticking with VS2005 for a while yet, so that's 100 licences they won't be selling here.

    This was the release trial by the way, not the beta.

  29. Anonymous Coward
    Thumb Down

    @Stephen 1

    Besides saving license cost on VS2010, you will also save costs on new RAM or a completely new PC (Because it does not accept more RAM).

    MS decided to go the .Net route this time, and that means highly inefficient RAM use.

    VS2008 is pretty good, though. Still done in C++.

  30. iamapizza
    Heart

    DLR is not a feature

    Quick correction - Dynamic Language Runtime is not a feature, it's what's commonly referred to as 'a big mistake'. It's been introduced to allow for the porting over of IronPython and IronRuby but will only end up promoting worst practices. Anyone remember variants? :)

    Author sums things up pretty well with this sentence: "There is no shortage of new features, so much so that Microsoft itself has done a poor job of communicating the extent of the changes. " (hence the want for babies...)

  31. Mike Bell
    Unhappy

    @Nat Pryce

    Something I used quite a bit in VS2008 is Refactor - Promote Local Variable to a Parameter. Sadly, that feature seems to have been dropped from VS2010.

  32. Giles Jones Gold badge

    Demos

    I've sat in on a few Gold Partner sessions and found them a bit lacking. There's simply no practical examples of the new features. When the presenter starts talking about the Start page and how you can hide it then you really wonder why you're bothering sitting through the presentation.

    Moving on, at times I think there's great ideas and developers at Redmond, they're just managed by complete idiots. After all, who else would withdraw free mobile development tools only to reinstate them due to the success of the iPhone.

  33. E 2

    @MinionZero

    That's why UNIX is a Windows programmers best friend. UNIX is a text processing environment. Windows - you need an inflexible GUI app for every little thing.

  34. Shakje

    Let's be frank

    As a developer who spends about equal parts (moving more towards C# the last few years) developing in C++ and C# in VS, it's almost as if MS moved a load of the innovative people from the VC++ team across to the VC# team.

    I think it's probably fair to say that the people in the forum who are complaining about VS are C++ coders, and the C++ IDE has always been horrible and clunky, but for those lucky people who code C# it's just more improvements (I agree with iamapizza, I can see some of the new C# features being misused horribly) and mostly in a positive direction. It would be really great if there was more, well I guess, effort put into the C++ side of things, but with C++0x taking so long to even come near to fruition, I'm not surprised that it still seems to take a bit of a back seat. And anyway, at least things are still continuously moving AWAY from VB..

    That said, I haven't tried 2010 yet, but I'm looking forward to firing it up over the next few days.

    1. ilovemymonkey
      Thumb Up

      C++

      I attended the first two uktechdays seminars this week and one of the focus points on the monday was C++ and how they are aware they have neglected it in the past few releases and, how they have subsequently in 2010 added in loads of new features for C++, including the re-introduction of the MFC Class wizard that was removed to much criticism.

      This link details the new C++ features in 2010 and .net 4

      http://msdn.microsoft.com/en-us/library/dd465215(v=VS.100).aspx

      I personally have been using 2010 since yesterday afternoon and so far love it, it looks nicer, the intellisense is great, the text is sharper which, while a small thing does make a huge difference. I personally think that M$ are building their way back up again with decent software, VS 2010 and windows 7 (which I also think is a great OS)

  35. Anonymous Coward
    WTF?

    What Are You Talking About ??

    "... and the C++ IDE has always been horrible and clunky, but for those lucky people who code C# it's just more "

    Are you still using MSCV 6.0 or something like GDB ?

    VisualStudio 2005 and 2008 are the best C++ IDEs that exist to the present day. Maybe not as comfortable as the C# version, but much, much better than anything else, including Eclipse and the Linux IDEs.

    I like working with it and I am curious to see the Alien-Tech C++ IDE you must have seen once.

    The company I currently work with force me to use the SUNWSpro C++ debugger and it is a big piece of horse output. The only good thing is that I can use dbx without the buggy Java GUI they have bolted onto it.

    All other debuggers I have seen are either the dbx/gdb/gdbtui style (reliable, primitive) or they pretend to be something like VS2005, but don't manage to be that.

  36. Anonymous Coward
    Thumb Down

    RAM and CPU Needs of VS2010

    ...are approximately 2.5 times higher than Visual Studio 2008. 40MB vs 100MB to work with a medium-sized project (ca 10000 lines of C++ code, win32 native).

    On my moderately powered laptop (2GB RAM, 1,7 GHz CPU), the responsiveness is significantly worse than with VS2008, but one can still use the debugger properly. Jumping to a class declaration from a method definition sometimes is very sluggish.

    Still, MS did a pretty good job, taking into account that this is not a native application.

    Nevertheless, a waste of CPU and memory resources, as all Java and .Net software is. I will stick to VS2008.

  37. Anonymous Coward
    Go

    Lazarus Rocks !

    I suggest that every developer with an open mind try out the GPL Delphi Clone Lazarus:

    http://www.lazarus.freepascal.org/

    It is fast (though apparently a bit slower than Delphi) and it is fun to use, when you are accustomed to it. The debugger does NOT limit you working speed, as the SUNWspro and the MSVS2010 do.

    Their motto is "write once, compile everywhere" and that is a sound philosophy, IMHO. I only tried the win32/x86 version, though. They say PowerPC is ready and others like SPARC under development.

    TurboPascal/Delphi is one of the great marvels of software engineering that has never been fully appreciated. Most developers just seem to be the stupid sheep who move with the flock instead of being an individualist cat seeking the good life.

    Admittedly, Delphi is not cross-platform and it is expensive, but Lazarus fixes this now.

This topic is closed for new posts.