Because many people are asking me how developing software on the Surface 1 Pro works, I’ve decided to write this second recap here. Right now my Surface is about 8 months old and the general availability of Surface 2 and Surface 2 Pro are a good reason to recap.

First of all I’ll give you a rough overview of what’s installed on my Surface Pro right now - Microsoft Windows 8.1 Enterprise

What am I using the Surface for?

Well, because I’m using my Surface Pro almost every day it’s solving different requirements for me. During meetings and while reading I use Microsoft OneNote in order to keep track of important information. I’m using it also as common couch-device to quickly research things on the web, to locate a restaurant or to read news online. For mail management and appointments I’m of course using Microsoft Outlook 2013 which offers a touch-friendly user interface which was enabled by default when I installed Office 2013 on the Surface. What about development?

Can you use Surface Pro as development machine?

In short, yes you can. It’s a great device for doing development using** Visual Studio 2013** or other IDEs. Because I’m mostly creating SharePoint Apps I don’t have the requirement of installing all SharePoint bits locally. So for SharePoint App Development the Surface Pro is perfect. Also when it comes to Provider-Hosted or Auto-Hosted Apps, Surface works like a charm. By using SQL Server 2012 Express I can create my Database-Projects in Visual Studio 2013 and develop my App from the backend to the frontend here. I’m currently also interested in developing Apps for Windows Phone 8, which requires a Hyper-V for running the Windows Phone 8 Emulator. Because Surface 1 Pro was shipped with an Intel CoreI5 CPU I can easily run Hyper-V on my Surface. So again, this works fine on Surface Pro.

Another great benefit is Surface’s screen resolution. With a resolution of 1366×768 pixels Visual Studio and it’s Tool-Windows are big enough to use them for a whole day of working without rearranging the windows every 30 minutes.

What are the disadvantages of developing on the Surface PRO?

In my eyes, there are only two disadvantages when we talk about the Surface PRO as a Development Machine.

  1. The Keyboard: I won’t talk about on-screen-keyboard or pen support right here, because these options are useless when it comes to development. Microsoft is currently offering two Surface Keyboards, the TouchCover – which is the cheapest one – has no feedback when hitting a key. I own a TouchCover and it’s great for typing mail addresses, URLs, tweets or status updates. But for me it isn’t the best choice.Second option is TypeCover, TypeCover is a small Keyboard with real keys but again it’s tiny – or my hands are too big :) – yes it’s more comfortable than TouchCover but for daily development it’s simply not perfect. My Solution is currently a Microsoft Comfort Curve 3000 with US Layout. It’s a wired Keyboard, but I’m writing as twice as fast as I do with TypeCover.
  2. Battery. Well this problem may be solved today with the availability of Surface 2 Pro, but also for Surface 1 Pro owners there is a solution appearing at the horizon, Microsoft is going to ship the PowerCover, which is a TypeCover like Keyboard with an integrated battery. Currently my Surface Pro runs about 4hrs on battery (compared to an IPad that’s bad but compared to a regular development notebook it’s more than ok, isn’t it?)

Let’s recap this article again. Surface is an every-day-device which allows me to develop software – including real world projects from our customers; In addition to that I’ve incredible pen support which makes OneNote officially the Killer-App!  Also as couch-device I found no real disadvantage. In bottom-line I’m happy with my SurfacePro. I hope all you developers out there have now a common understanding of what you can do with Surface 1 Pro and what isn’t possible. With the combination of an external keyboard and mouse, it’s definitely an option. Happy Surfacing’