Feeds

Will Microsoft devices sit happily on a single platform?

A development challenge

Eight steps to building an HP BladeSystem

The world can be a confusing place. Often a one-size-fits-all solution looks to be just the thing but ultimately it turns out that it fits no one.

Microsoft is touting a single development environment for desktops, laptops, tablets, phablets, mobiles and the Xbox. Can this deliver?

The platform for PC, phone and tablet comes together under the jurisdiction of the Microsoft development group run by Joe Belfiore. Because device manufacturers work with Qualcomm and a Microsoft reference platform, there is reduced device fragmentation.

It is not as locked down as Apple – Microsoft lists a dozen Windows Phone manufacturers – but nor is it as “will it won’t it work?” as the myriad Android devices and operating system versions.

With the new generation of Windows all devices run on the same Windows core and share the same APIs, including Windows.ApplicationModel, Windows.Foundation, Windows.Storage and the like.

There are some differences: Windows does not support Xbox SmartGlass, challenges and achievements which I think is a huge shame. OneNote really should be able to pop up “Achievement unlocked 100G: key stakeholder brought on-board”.

Similarly Xbox doesn’t support lock screens or, more prosaically, printing. That will have to happen as Xbox becomes more of a home hub.

There is a difference of motivation too. The PC is largely used for creating information and the Xbox for consuming it; phones and tablets sit in between.

Blurred vision

This is reflected by the various input devices, with Xbox having a controller, Kinect and Voice, while tablets have pen and touch and PCs a keyboard and mouse.

But all this becomes a bit blurred with new user interfaces, not least Cortana. There is Kinect for Windows (and jolly good it is too) and it would be no surprise if there was a phone with Kinect waiting in the wings. The code for Kinect directly translates to mouse or touch input so building something cross-platform is easy.

A sensible way to do things cross-platform is to use HTML5 and JavaScript for the mark-up and logic and C++ for shared libraries and background services.

WinJS is available on all the platforms but is not required; you can use standard JavaScript. But for swift application development WinJS offers a mechanism by which code can be made to take advantage of the special features of each of the devices and is developed cross-platform.

You can get a lot of re-use by picking the right architecture pattern

Developing cross-platform is the ultimate objective. Code can’t just be written for one and then be expected to automatically convert, but you can get a lot of re-use by picking the right architecture pattern, abstracting any platform-specific stuff and using fragments and modular components.

That of course saves time as well as effort and leads to what you ultimately want to achieve: a consistent user interface across all three.

All the work can be done within Visual Studio, using the same files and file structures regardless of platform. It all becomes one project with flavours rather than separate developments efforts.

The upshot is that a much larger base of developers can be recruited to implement a corporate app. The learning curve is reduced for people used to producing software in Visual Studio for a PC. They can rapidly start developing for Windows Phone and Xbox.

Keep it in the family

In a company where there is a lot of internal development it is much more elegant than the traditional solution of contracting out the mobile part, with all the ensuing problems of specifying and managing the project. It is also better than hiring in mobile developers for a project.

And if the trend of business going towards mobile and cloud holds true and there is more need for tablet and phone development than desktop, mobile can be phased in over time. Existing developers transfer their skills and move with the requirements.

From a project management, staffing and implementation perspective the ability to use the same people to develop across all three platforms makes life much easier.

But that doesn’t answer the question posed at the beginning: will it end up as a one-size-fits-none? The answer to that is, it depends.

Designers and developers need to plan for the different implementations; it is an incremental effort but that is far easier than multiplying the effort.

Building code that can run, and run right, on everything from a 100+ inch projection screen to a 4.5-inch phone screen is an interesting challenge.

There are rumours that Microsoft, along with the whole world and its dog, is planning a smartwatch. Translating down from 4.5 inches to 1 inch might be a yet another interesting challenge. ®

Securing Web Applications Made Simple and Scalable

More from The Register

next story
Auntie remains MYSTIFIED by that weekend BBC iPlayer and website outage
Still doing 'forensics' on the caching layer – Beeb digi wonk
Apple orders huge MOUNTAIN of 80 MILLION 'Air' iPhone 6s
Bigger, harder trouser bulges foretold for fanbois
Bring back error correction, say Danish 'net boffins
We don't need no steenkin' TCP/IP retransmission and the congestion it causes
GoTenna: How does this 'magic' work?
An ideal product if you believe the Earth is flat
Samsung Z Tizen OS mobe is post-phoned – this time for good?
Russian launch for Sammy's non-droid knocked back
Telstra to KILL 2G network by end of 2016
GSM now stands for Grave-Seeking-Mobile network
Seeking LTE expert to insert small cells into BT customers' places
Is this the first step to a FON-a-like 4G network?
Yorkshire cops fail to grasp principle behind BT Fon Wi-Fi network
'Prevent people that are passing by to hook up to your network', pleads plod
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Top 8 considerations to enable and simplify mobility
In this whitepaper learn how to successfully add mobile capabilities simply and cost effectively.
Seven Steps to Software Security
Seven practical steps you can begin to take today to secure your applications and prevent the damages a successful cyber-attack can cause.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.