30 Nov
2012

Visual Studio Light Edition

Category:UncategorizedTag: , , :

I noticed this blog post from Scott Hanselman the other day about Visual Studio Express 2012 for Windows Desktop. This post included a screenshot from the installation program. Something that really took me by the throat is this:

image

Notice that the Express edition of Visual Studio seems to require no less than 4.15 GB of hard disk space! So I decided to try out the Professional edition of Visual Studio just to find out that it needs 7.56 GB to install!

image

Ask yourself, how on earth can an IDE that requires 7.56 GB to install be fast enough to even be usable at all? What kind of monster machine is required to not even choke to death when I accidentally open a second instance of Visual Studio? We’ve all seen those dreadful white screens of death, right?

Yes, I know that we’re living in 2012 and that disk space is very cheap. Yes, I know that RAM memory grow on trees these days and that CPU power is growing increasingly. But is this kind of footprint justified for an IDE that proclaims productivity? Or is it just me?

After recovering from my amazement I tried installing SharpDevelop, an open-source IDE for building .NET applications.

image

SharpDevelop seems to be more than happy with just a mere 64 Mb of storage. I tried opening a large solution and it loads pretty darn fast. So, I should just shut up and go with SharpDevelop then? See, this is where I have to admit that I have a slight problem.

See, I depend heavily on Resharper for doing C# development. This amazing code-by-keystrokes tool is both a blessing and a curse. Any serious developer who builds .NET applications has to admit that whipping up some C# code without a tool like Resharper is incredibly painful, to say the least. This tool is truly a blessing and this is why I can’t go with SharpDevelop as my IDE of choice when building application for the .NET platform. But on the other hand, Resharper is not a stand-alone tool as it needs Visual Studio to host it. To me, this is a curse.

Visual Studio 2012 in it’s current form has become too heavily packed with features, which I don’t use anyway, so that’s it’s no longer usable for me to host Resharper. I’m no longer willing to make that tradeoff. I tried using Visual Studio 2012 with Resharper, but I turned back to Visual Studio 2010 after a short while. From a performance point of view, Visual Studio 2010 isn’t running great either. So I guess this is just a necessary evil that I have to overcome for building .NET 4.0 applications.

I understand that Microsoft’s business model is building platforms and tools for the world to use. It’s a business like any other business, focused on earning money. There’s nothing wrong with that. This is why Anders is so keen on statically typed languages, because they require more tooling and tooling is what brings in the money for his division. It’s as simple as that.

But it doesn’t have to be all bad! What if the Visual Studio development team would come up with a stripped down version of Visual Studio? Think about how awesome this could be. What should be in the box? Just the basics! The code editor, the solution explorer, the debugger and the ability to host add-ons. No designers, no SQL Server integration, no TFS integration, etc. ? Just the most basic features. That’s it! The installation footprint should be no more than 500 Mb, ideally only 100Mb. Wouldn?t that be awesome? This would be would actually solve my current development needs!

I hereby tag my fellow Elegant Coder David Starr, who recently joined the Visual Studio team at Microsoft. You can do it David!  The best is yet to come!

So I’m eagerly awaiting the next release cycle of Visual Studio in order to see whether I’m up for a treat ;-).

Until next time.

39 thoughts on “Visual Studio Light Edition

  1. Un-needed bloat and lazyness. Praying for the day JetBrains comes out with Resharper for Notepad2.

  2. So while I think it’s ridiculous that it’s so big, this is a pretty ridiculous straw man. You don’t really think that all of the on disk assets are loaded into memory? Don’t get me wrong – it’s too big for get up and go, but there is a lot more “in-the-box” than the bits to create a web page.

  3. If they had VS that had just those things, it would pretty much be perfect.

    I never use any of the other stuff. Hmm… perhaps this is a job for Visual Studio Shell?

  4. Although it has been a while since I’ve tried out SharpDevelop, at the time it felt clunky and unpolished. It wasn’t really aimed at web development. I don’t know what the current state is though.

    I like the new Visual Studio, the dark theme is nice and in combination with ReSharper it’s a decent editor. But like so many I hide all the toolbars, sidebars and other crap. I totally agree with the point you’re making, but I don’t think we can expect it any time soon…

  5. I’m not saying that VS pulls the entire 7 GB in memory. But we can all agree that it’s footprint on storage/RAM/CPU is just too high, even for an IDE.

  6. I installed VS2012 Express to natively compile some node modules. I was aghast at its footprint as well and whats worse is the uninstall process – It leaves 22 installed features behind for manual removal. Maybe David Starr can address that as well.

  7. actually VS2012 is much more responsive than VS2010
    as they say in PC gaming circles: get a better PC
    😀

  8. LOL someone griping about the install size of VS2012 and is using Resharper – the most bloated memory hog IDE bloatware that constantly requires reboot when it freezes the computer.

  9. I am being totally sincere when I ask this, Jan. Is your primary concern that the package size for the installer is too big?

    If yes, the obvious reason for this is that the installer itself contains uninstalled bits. It’s just a lot cheaper to install based on install type instead of to actually packaging to SKU.

    This is a simple trade off of money and value.

  10. I use Visual Studio 2012 and ReSharper about fourteen hours a day, often more. Many of the VS features I only use maybe once or twice a week, but I am ever so happy they are there, and 7GB out of my 550GB hard drive is a very small price to pay for having all the features I may need, without the stress of being stranded without a feature.

  11. I am not sure I understand the concern here. Visual Studio has to be many things to many different types of developers who are all developing different types of applications. The result is a development environment that has a lot of features in it in order to accommodate this variety. And there is no other IDE on the planet that can offer such a complete development experience as Visual Studio; though there are a few that come close such as the Java IDE, NetBeans.

    True, Visual Studio does have its drawbacks but none of them would find many developers from wanting to develop with this platform.

    As it regards “Resharper”; no doubt it is a very fine tool. However, one look a the vendor’s web site that sells this software will show anyone why it can be quite bloated and as a result disruptive. For example, one feature is that it provides instant analysis of every line of code written. Does anyone have any idea the amount of overhead that such complexity involves and the subsequent disruption it can incur?

    If one is going to complain about Visual Studio in this vein, than you cannot disregard the same with the third party tool that the poster is promoting.

    There is a reason that compile time errors are not found dynamically as with Resharper; it is for the efficiency of working. Though we would be all lost without Intellisense at some level, I often find it so annoying that most times I would be happy to simply turn the bloody thing off but it is so useful at others. Combined, I can’t see how a developer wouldn’t go stir-crazy with all the constant popups telling him or her what he or she may have done wrong or could do better.

    As to the last, tools such as Resharper often do not do provide the results one would expect since the internal optimizers in Visual Studio are so sophisticated that well written code at any level will almost always be optimized for the best result; thus making Resharper somewhat redundant.

    In any event, if the poster is working 14 hours a day on a regular basis, than he is not working at his most efficient with or without Resharper. I would suggest substantially reducing the working hours and he will probably get better results simply working with Visual Studio all by itself…

  12. Well, I have had the opposite issue. Visual Studio 2012 runs faster on both my machines then does 2010. And is it happens, Visual Studio 2012 runs faster on a VM then Sharp Develop does natively on one of those machines.
    Then we could talk about the every moment features such as code formatting (well perhaps you don’t care, but I do). VS beats SD in every way. There are very few areas SD beats VS.
    Also, you can’t run Resharper in Sharp Develop.

  13. Most of the size is help files and things like that; the intellisense and so on. It’s justified.

  14. The problem is what everybody deems necessarily from a minimalist perspective is different. What you think is essential in a stripped down package is probably not the same as me. That said, there are clearly largely unused features in each version and they eventually get deprecated as such (sometimes to many complaints from the minority of users). It’s huge. Surprisingly huge. But I bet when you start looking at the bits and pieces and what we can actually include/exclude, if you get a big enough crew looking at it, you’ll find that most of it is, unfortunately, necessary. So what’s the answer? If you are concerned about bloat, use SharpDevelop and let JetBrains know. Maybe they’ll make an extension. Or maybe it’s not possible and that’s another reason SharpDevelop is so small!

  15. SharpDevelop appears to use the same amount of RAM as VS 2012. Around 233MB for SharpDevelop and 220 for VS 2012. Both with the same project open. VS 2012 has ReSharper installed.

    As for the install size, the VS installer installs a crapton of stuff like ASP.NET developer edition, SQL Express, MSDN Help documentation, not to mention the prerequisites like the Framework itself, etc. Some people don’t need all the extra stuff, which might be why they have the option available to customize an install. That way you choose what you need and nothing more and the installer installs that, rather than installing everything.

    My experience has been that 2012 has been snappier. I had some issues with extension conflicts early on, so if you are having issues that might be worth investigating.

  16. I think VS should be more like Eclipse, you get the basic of an editor and you add the plugins you need.
    I already have installed some plugins for work in Python, Ruby, HTML, Javascript, Java, C/C++ and the size of all this is not bigger than 250 mb (300 mb in the worst case).

  17. I agree. 2012 is waaaaaaaaaaay more responsive than 2010. Do you remember how long it took to close VS2010?? God..that annoyed the hell out of me! How can it take less time to open the IDE (and a solution) than it did to close?!!?! What the hell??

  18. I would love a cut down version of Visual Studio. But…

    “I’m no longer willing to make that tradeoff. I tried using Visual Studio
    2012 with Resharper, but I turned back to Visual Studio 2010 after a
    short while.”

    Visual Studio 2012 is significantly faster than 2010. I don’t understand why you’d choose 2010 for performance reasons.

  19. Ok…So Visual Studio Express 2012 is “smaller” than full-up Visual Studio 2012?

    So what?

    What happens when you install both Visual Studio Express 2012 and Web Developer? Doesn’t that bring them closer to parity? My Visual Studio 2010 has the usual tools: C#, VB, F# _and_ web development tools. My Visual Studio 2010 Express had a separate install for C# and for the Web tools…does that not hold for Visual Studio 2012 Express as well? Just saying….

  20. The size itself isn’t the point. The fact that it’s crammed with features I don’t use and have to pay an immense performance penalty for it. The title of the post says it all really. I would love to get my hands on a light-weight version of VS. Such a version wouldn’t have a large footprint either as it is obviously correlated.

  21. I see no any reason to compare products BY SIZE. What’s “size” in PC at all? Just measure “can it fit my flash?”. From program POV is that DLL 1MB or 2MB – who cares? Second, SD is just an enthusiastic toy – it never was SOLD. Try yourself to sell product for $1000, which occupies 10MB! :)) Just a market.

  22. I must side with many others here – VS2012 is BY FAR faster than VS2010, and it looks BY FAR better too. You can stay on 2010, or even 2008 if you wish, but you will harm only yourself – no one else will even notice.

  23. What performance issues are you running into?

    The Visual Studio 2012 product seams very good at not loading things you ahv not said that you want to use… so any feature that you don’t use should be silently waiting, taking up no resources but disc, for you to discover them..

    Which features do you not use?

  24. Does sharp develop have intellitrace – Real time stepping through every method, in production? Didn’t think so. Oh and HDD space is infinite these days, who cares, really. The RAM footprint should be more the concern.

  25. Cannot agree more! The sole reason I had to uninstall Resharper was due to it slowing down the IDE and I’m on a quad-core system with striped SSDs and 8 GB of 1600Mhz RAM! Those half a second delays and constant parsing of solution files are just enough of a hindrance to me to offset any of its refactoring goodness (besides VS 2012 has most of the refactorings built in now days). Plus Resharper doesn’t support C++ at all.

  26. Any addon will slow down VS though. I’ve been using CodeRush for the last half a year and while it’s slightly faster than Resharper, ultimately I ended up uninstalling it a few weeks ago as it was slowing down the IDE just a little too much for my liking. Also it was annoying when I openend a reasonably large C++ project it would freeze up completely.

  27. While I am flattered that some of these comments seem to think I have any kind of influence over something like this, let’s be clear. I DO NOT.

    I am not in any position to do anything about what concerns Jan.

    That said, I now understand the root cause and am trying to decide how to write about it without getting fired 🙂

  28. And another thing: writing in C# is not painful it’s awesome. Its just happens that R# makes it even more awesome.

  29. In my experience, I seem to require less tooling when programming dynamic languages than static languages. What I mean is that I have the feeling that I don’t miss any tooling (I’m using Sublime) when I’m writing code in a dynamic language and when I’m using static languages I never seem to have enough tooling.

Comments are closed.