The Surface Pro 2 could make for a really interesting developer machine. Plug it into external keyboard/monitor when you're at your desk, then just pick it up and take it on the road when you want to. I'm tempted, but part of me can't shake the idea that I'd be replacing my laptop with a tablet, even know I know that's not quite true.
Also: Windows. I used to use it, but I've been working in OS X exclusively for a few years now, and going back to the Windows Command Prompt might kill me.
I don't doubt that Powershell is good, but it's different. I've grown to appreciate being able to use all the same commands on my dev box as I do on my servers, and while Cygwin covers the basics, it doesn't do it all.
With newer versions of Windows, Microsoft has attempted to bring powershell on par with the linux terminal. Supposedly, every admin function possible in the OS is now capable of being performed in Powershell.
The only downside is that some if the commands are uneccessarily verbose in comparison.
Their push into headless Window Server deployment has certainly driven Microsoft to shore up PowerShell. Recently they're taking on declarative server configurations (ie: puppet) with their own brand of it -- Desired State Configuration.
Cygwin + MinTTY can make Windows bearable, but, if you have already moved to Mac, why bother? OSX combined to MacPorts makes for a very functional development environment. The only very specific downside is that it won't run Visual Studio.
Ubuntu has been working with touch for some time now and I would expect it to work adequately. I assume the keyboard/cover emulates a keyboard, so keyboard access should not be a problem. My worst fears come from hardware support. After having bad experiences with laptops that come bundled with Windows, I am fully aware hardware can be designed not to work with Linux.
I know you can on the Surface Pro 1. So I don't see why you won't be able to on the Surface Pro 2. Its an x86 machine as per their own requirement, bios have to be unlocked and the ability to disable secure boot must be present.
I still use windows but most of my day is spent in putty shells, git bash, phpstorm, pycharm, and and dbForge. It's not so bad. I'll probably move to a surface pro 2 with 256 or 512 from my ~3 year old Dell Latitude.
Yeah, Vagrant seems like one of the best options. But buying a computer that will require me to run everything inside of a VM feels a little messy. Although maybe it'll force me to compartmentalise my projects properly...
It may seem like it at first, and it may actually be depending on your role. I spend a lot of time working on Silly Business Shit and dealing with things in IE-land, in an industry filled with mostly Microsoft customers/users. It's nice to be able to work on both sides on the same machine.
Also: Windows. I used to use it, but I've been working in OS X exclusively for a few years now, and going back to the Windows Command Prompt might kill me.