Feeds

Will Microsoft devices sit happily on a single platform?

A development challenge

Internet Security Threat Report 2014

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. ®

Choosing a cloud hosting partner with confidence

More from The Register

next story
Mighty Blighty broadbanders beg: Let us lay cable in BT's, er, ducts
Complain to Ofcom that telco has 'effective monopoly'
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
Broadband sellers in the UK are UP TO no good, says Which?
Speedy network claims only apply to 10% of customers
Yahoo! blames! MONSTER! email! OUTAGE! on! CUT! CABLE! bungle!
Weekend woe for BT as telco struggles to restore service
Fujitsu CTO: We'll be 3D-printing tech execs in 15 years
Fleshy techie disses network neutrality, helmet-less motorcyclists
Facebook, working on Facebook at Work, works on Facebook. At Work
You don't want your cat or drunk pics at the office
Soz, web devs: Google snatches its Wallet off the table
Killing off web service in 3 months... but app-happy bonkers are fine
prev story

Whitepapers

Why and how to choose the right cloud vendor
The benefits of cloud-based storage in your processes. Eliminate onsite, disk-based backup and archiving in favor of cloud-based data protection.
Getting started with customer-focused identity management
Learn why identity is a fundamental requirement to digital growth, and how without it there is no way to identify and engage customers in a meaningful way.
Driving business with continuous operational intelligence
Introducing an innovative approach offered by ExtraHop for producing continuous operational intelligence.
10 threats to successful enterprise endpoint backup
10 threats to a successful backup including issues with BYOD, slow backups and ineffective security.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.