Microsoft officials showed off some of the new functionality that the company plans to deliver in the Surface 2.0 software development kit this summer on April 12 at the Mix '11 conference.
The Surface 2.0 product, if you need a refresher, is the "smaller ass table" cousin to the Surface 1.0 (known affectionately in some circles as the "big ass table"). Surface 2.0, which is being manufactured and distributed via Samsung, is expected to be priced at around $7,600 when it debuts later this year. The Surface 2.0 is expected to be thinner, cheaper and more versatile (able to be used horizontally or vertically) than the Surface 1.0.
At Mix '11, Surface developer Luis Cabrera touted the coming SDK as enabling developers to create "write once, touch anywhere" applications. He noted that the SDK will allow programmers to create applications targeting both Windows 7 and Surface 2.0 devices, which makes sense, given the underlying UI inside the Surface 2.0 is Windows 7.
On top of the core Windows 7 operating system inside the Surface 2.0, Microsoft is providing a Windows integration layer, as well as a shell UI (user interface) and relevant application programming interfaces (APIs). There will be "core" APIs and Windows Presentation Foundation (WPF) APIs. The core APIs supported will be for raw images and touch events that are not tied to a particular framework, and mostly used for XNA. The WPF APIs will include framework APIs, common controls and specialized controls, Cabrera said.
The Surface team created its own common controls -- things like SurfaceWindow, SurfaceButton, SurfaceInkCanvas and SurfaceSlider. These controls were necessary because Windows isn't touch-optimized, and existing comparable controls were designed for a mouse. Microsoft also has built an Input Simulator, which will allow developers to create Surface APIs on any Windows 7 PC. The Input Simulator will allow programmers to use a mouse to simulate multi-touch experiences, like grabbing a photo in two places and stretching it to enlarge it, as Cabrera demonstrated during his standing-room-only session at Mix.
Cabrera said there will be a Surface 2.0 configuration tool that will allow developers to choose color themes, backgrounds and specific Surface applications to launch. There also will be a Surface Migration PowerToy tool to allow devs to move Surface 1.0 applications to the Surface 2.0, he said.
I'm curious whether any of the shell/API functionality that Microsoft is building and supporting with Surface will be carried over to Windows 8 -- at least concept-wise. And it looks like I'm not the only one with that question:
Cabrera said the Surface 2.0 SDK will be free and on MSDN when it is ready this summer. In the interim, he advised developers interested in Surface 2.0 to use the existing toolkit for Windows Touch, calling it a "step in right direction."