Windows 10 is a big opportunity for Universal apps, and Gallo notes that, along with expanding the WinRT APIs in the next release, Microsoft will be opening up some more Win32 APIs to Universal apps. It'll also be adding controls that work well on the desktop, as well as in touch. That's an important change, as it aligns closely with Windows 10's desktop focus and its support for windowed Universal apps.
Microsoft has a lot of work to do. While developers are happy with the current Universal app model, its expansion across the entire Windows ecosystem means that, as Gallo says, "The next version has a very large target, a broad ecosystem." Microsoft needs to deliver quickly to move the industry forward, with support that lets users work with the devices that meet their needs - not what developers think they need to use. Gallo is clear about this, "Users will pick and mix, in interesting and unique ways. People pick the set that meets their human needs. There is no uniformity."
So what of the future? Gallo told us that Microsoft would be continuing to deliver on what it announced six months ago at Build. "The biggest asset we bring is the breadth of devices we support," he said, "But also the biggest challenge we have. There are other inputs, like Kinect, that no one else has. We need to be best on every device."
That's a challenge for Microsoft and for Universal app developers. While Microsoft is making it easier for developers to deliver those universal front ends, there's another, much bigger, part of the story that's yet to be told: how its middleware and services fit into the story.
One of the first Universal apps to hit the various Windows stores was Tweetium, a Twitter client developed by long time Windows developer Brandon Paddock. Tweetium began as a Windows 8.1 app, using a HTML5 UI. When Microsoft unveiled Universal apps, Paddock was able to quickly deliver an initial Windows Phone build. He could take advantage of the small screen views he'd designed for Windows snap views, and comment out the code written for working with specific Windows 8.1 functions.
Actually turning that prototype into a full-blown app took more work. There's a lot to consider when bringing an app from the relatively unrestricted PC world to a phone. Code that's designed for specific OS features needed to be wrapped or shimmed so it worked unchanged, letting Paddock deliver common features with different user experiences - so the common settings page could be displayed from the Settings charm on Windows 8.1 or from an app bar menu item on phones. Then there were more complex tasks, tuning app usage for phones with slow processors and only 512MB of RAM. Paddock notes that has improved performance on PC-class devices, "One of the great things is that this work benefits PCs, too, so the app is now even faster on my Surface Pro 3. The same goes for improvements I made to the app's portrait and snap layout, which is what you see when you run the app on most phones."
Sign up for Computerworld eNewsletters.