After an enthusiastic launch in 2012, Windows RT (Microsoft’s tablet which looked, but didn’t perform like Windows 8) received a cool welcome from consumers, lost the support of hardware manufacturers and has now been dropped by Microsoft too. Until now, Windows developers have been writing apps differently for Microsoft’s different hardware and operating systems, coding for different screen shapes and sizes. However, with the dropping of Windows RT, Microsoft are signalling a change in course when it comes to building apps for their diverse platforms.
Microsoft are now making a lot of noise about universal apps which promise to help designers write for all devices in C++, C# and JavaScript from Visual Studio. Using the Universal Windows app template, it should be a lot easier to translate your code to the specifics of different devices and systems. For developers in the Microsoft universe, getting to grips with this new approach will be essential. Already available for app design in Windows 8.1 for desktop and mobile, the universal app designer will be ubiquitous in Windows 10. This is all part of a broader move to unify and streamline coding in an increasingly diverse and specialized marketplace and it’s a considerable undertaking on Microsoft’s part.
Why did the old model need to be replaced?
Microsoft is indeed a massive corporation, and if these figures are to be believed, were it a country it would outstrip the economy of Croatia. Given its size and range of offerings - from software to hardware and consumer to business markets - it’s hardly surprising that the architecture behind its many tools is diverse. While a rich mix of tools and approaches can be a strength, it can also lead to flabbiness and confusion. At present, developers need to write apps for Microsoft’s different systems in different ways and this makes building apps for Windows a complex and challenging task.
Windows RT was a classic example of the limits to this approach. While it received some good reviews, it was simply too limited to become popular. Developers needed to write apps for Windows RT differently to how they wrote apps for Windows 8. Since it didn’t include many apps to begin with, few consumers bought into the system and, surprise, surprise, few developers wanted to put in the effort of writing apps that no one would use.
What are Universal apps and what to expect from them?
Dropping Windows RT must have been a blow for Microsoft, but their new approach demonstrates a willingness to adapt and be pragmatic. Put simply, Microsoft have adjusted their approach to the diversity of modern devices by reigning in the enormous number of APIs and frameworks which are currently proliferated around their empire. Rather than having many different ways of writing code, the plan is to offer one single place to write for all the different devices.
What this means is that you’ll no longer have to write different code for different devices - Visual Studio will take care of this for you. Whether it’s for tablet, Windows phone, laptop or PC, the apps you write will be configured for the specifics of each. Whatever the hardware, users will experience a consistent design and UX and appropriately tailored experiences for their devices. Additionally, all Windows apps will now be available in one Store and this should save developers a lot of time.
Universal app design is in fact already available for apps running from Windows 8.1. However, come the release of Windows 10 (which could be as soon as mid-2015), this will become the way of building apps for the future. Windows are a little cagey about exactly when all this will be ready. Nonetheless, more information will be released over the coming months prior to launch and you can get an idea of what it will look like here. For those who have developed apps for previous versions Microsoft have produced some handy guidelines on how you can upgrade your ready built apps to the universal model.
One code everywhere
The explosion in hardware and types of device over the last few years has produced a revolution in design and technology. It’s an exciting time to build apps but the challenges for of writing code for the diversity of devices available is also considerable. Windows Universal apps is a signal that one of the industry’s giants is responding to this change however.
Going further, tools like Xamarin.Forms take the idea of writing in one code and then let designers build amazing User Experiences for different operating systems. Given the range of products out there, allowing developers to write in one language for all platforms is an important offering from Microsoft, and we’re looking forward to seeing how this simplifies coding in the future.