.NET development on a Retina MacBook Pro with Windows 8

I remember sitting in Building 5 at Microsoft with some of my coworkers, when one of them came in with a shiny new 11” MacBook Air. It was nearly two years ago, and we found it pretty odd that the OEM’s building Windows machines sucked at industrial design in a way that defied logic. While Dell and HP were in a race to the bottom building commodity crap, Apple was staying out of the low-end market completely, and focusing on better design. In the process, they managed to build machines people actually wanted, and maintain an insanely high margin in the process.

I stopped buying the commodity crap and custom builds in 2006, when Apple went Intel. As a .NET guy, I was still in it for Microsoft’s stack of development tools, which I found awesome, but had back to back crappy laptops from HP and Dell. After that original 15” MacBook Pro, I also had a Mac Pro tower (that I sold after three years for $1,500!), a 27” iMac, and my favorite, a 17” MacBook Pro (the unibody style) with an SSD added from OWC.

The 17” was a little much to carry around because it was heavy, but it sure was nice getting as much as eight hours of battery life, and the screen was amazing. When the rumors started about a 15” model with a “retina” screen inspired by the Air, I made up my mind I wanted one, and ordered it the day it came out. I sold my 17”, after three years, for $750 to a friend who is really enjoying it.

I got the base model with the upgrade to 16 gigs of RAM. It feels solid for being so thin, and if you’ve used the third generation iPad or the newer iPhone, you’ll be just as thrilled with the screen resolution. I’m typically getting just over six hours of battery life while running a VM, but Parallels 8 allegedly makes some power improvements, so we’ll see what happens. (It was just released today.)

The nice thing about VM’s are that you can run more than one at a time. Primarily I run the Windows 8 VM with four cores (the laptop is quad-core, but has 8 logical cores due to hyperthreading or whatever Intel calls it) and 8 gigs of RAM. I also have a Windows Server 2008 R2 VM I spin up when I need to test stuff in a “real” server environment, and I give it two cores and 4 gigs of RAM.

The Windows 8 VM spins up in about 8 seconds. Visual Studio 2012 takes a few more seconds, but count part of that as the “ReSharper tax” as it does its startup magic. The real beauty, the thing I looked most forward to, is that beautifully crisp C# text. Consolas has never looked as good as it does at 10pt. as it does on this display. You know how it looks great at 80pt. when conference speakers demo stuff on a projector? Think that sharpness, only tiny. It’s just gorgeous.

Beyond that, everything is just so responsive and fast. Builds of large projects happen in seconds, hundreds of unit tests run in seconds… you just don’t spend a lot of time waiting for stuff. It’s kind of painful to go back to my 27” iMac (which would be better if I put an SSD in it before its third birthday).

Are there negatives? A few minor issues, yes. As is the case with OS X, not everything scales right. You’ll see some weirdness at times with splash screens and icons and such. Chrome’s text rendering (in Windows) is apparently not aware of how to deal with higher DPI’s, so text is fuzzy (the OS X version is super sharp, however). You’ll also have to do some fiddling with keyboard settings to use the Windows 8 keyboard shortcuts.

Overall, it’s as close to a no-compromise development experience as I’ve ever had. I’m not even going to bother with Boot Camp because the VM route already exceeds my expectations. You definitely get what you pay for. If this one also lasts three years and I can turn around and sell it, it’s worth it for something I use every day.

Win8VMinParallels

15 Comments

  • You are really getting six hours of batterylife while using a VM? I am using vmware fusion 5 and just get about 3 hours while running a windows 7 VM because fusion constantly has about 30% cpu-usage even when the VM is idle :(

  • That could have something to do with Windows 7 and/or Visual Studio 2010. Since forever, I often found Visual Studio 2010 holding the CPU captive when it was seemingly idle, which would zap the battery. Restarting VS seemed to temporarily fix the problem. I haven't seen the 2012 version do that yet.

  • So do you typically develop on only a single screen? I've been using dual 24" screen for years and lately find myself wishing I could add a third one.

  • Pretty much. I used to do two giant screens, but I stopped awhile back. I found that all it did was leave more opportunity for distraction. I doubt many would agree with me on that. Having to alt-tab keeps me very much on task.

  • I've never correlated the ease of distraction with multiple screens... but you make an interesting point.

  • So how do you find the VM performance to be on the same SSD as OS X? I've had my VM on an external in the past but those are HHD not SSD. How much diskspace do have and what are your Parallels settings for the Dev VM?

  • I don't understand what you're asking. Everything I described is on the same drive.

  • I've never run a VM on a different drive, HDD or SSD, and never had an issue.

  • I use Parallels 8 and windows 7 on my NEW macbook and i can take only 3 hours on battery. Also i have heat issue. When i actively work on my project with ReSharper help then my laptop getting very very hot!

  • Have you run VMWare in comparison to Parallels? I have been using VMWare but have considered switching since it seems to lag a bit. Just curious.

  • I have not. If I'm to believe the reviews, Parallels has a slight edge.

  • What kind of "scaling" in Parallels do you use to run Visual Studio? "Scaled" or "Best for retina"?

  • Whatever the native resolution is, with Windows using 150% on the font scaling.

  • Great article Jeff. I was really glad to hear of your years of good experience as I recently switched to Mac for .NET dev and have been blown away, so far.

    I actually wrote a blog on how to set up the resolution (found a trick to get it to look almost perfect in a Windows VM), keyboard mapping and some VM stuff, http://blog.excella.com/set-up-windows-development-envornment-on-macbook-pro/

  • Great article. I'm considering making the switch myself. Thanks for sharing.

Comments have been disabled for this content.