The next big thing from Microsoft is about to drop for the millions of Windows users around the world. Windows 10 will be available as a free upgrade for any current Windows user starting July 29th. As is the case with any new version of Windows, lots of questions arise about what developers should expect and how they should guide the development and maintenance of their Windows apps.
Microsoft has made Windows 10 available as a public beta since October of 2014 as part of the Microsoft Windows 10 Insider Preview programme. This has provided Microsoft with a rich test bed for Windows 10 on all sorts of systems and hardware.
From the start of the public beta, Windows 10 was ready for virtual deployments with popular platforms like VMWare and Fusion to give developers a chance to test their apps with new features and APIs. The full release of Windows 10 has been widely tested and is expected to have a very stable launch.
It should be no surprise that Microsoft is pushing hard to drive huge adoption rates of Windows 10. Currently, Windows 7 and Windows XP hold the biggest percentage of installs while Windows 8 was largely not adopted by end users. It’s important to remember that the Microsoft Support Cycle for Windows XP ended in April 2014 and mainstream support for Windows 7 saw its sunset in January of this year, 2015.
To entice these users to adopt the newest release, most users of a previous Home of Professional version of Windows are eligible to upgrade for free to Windows 10. Further, Microsoft has already established that Windows 10 is ready for many different types of hardware and will present a unified Windows experience across mobile, desktop, home theatre, gaming and even the Internet of Things (IoT).
Many users of Windows stick to older versions to support legacy software. Microsoft is addressing these users as well by enabling legacy apps (called Classic Apps) to run on Windows 10 as first class citizens.
Microsoft’s announced Project Centennial introduces access to the Universal Windows Platform (UWP) for classic apps built with the Windows API. UWP enables developers to support new Windows 10 features in their classic apps without having to port or re-write any code. This will remove a critical barrier to adoption rates of Windows 10 for business and enterprise deployments.
With Windows 10, Microsoft is also introducing the Windows 10 IoT Core platform, which enables UWP apps to run on inexpensive ‘maker’ boards including Raspberry Pi 2 and Arduino. It also gives developers the opportunity to build backend server, mobile, desktop, and now IoT apps for Windows. IoT is the next frontier in terms of enterprise and industry solutions that integrate physical and environmental capabilities into existing and new applications through IP protocols.
IoT is revolutionising computing and applications within a real-world context to automate and improve how humans interact with applications through a physical environment. This revolution is enabled by smaller, more powerful and cheaper hardware, as well as the proliferation of the Internet to these devices.
Ultimately, the success of Windows, once again, rests on the shoulders of … developers, developers, developers! Thankfully, Microsoft Windows developers don’t have to wait to start building and testing their apps for the full release of Windows 10. Today, any developer can download and start building with the Windows 10 Insider Preview by signing up for the Windows Insider Programme.
Getting Ready for Windows 10
To start getting apps ready for Windows 10, developers should first test that an application’s development stack (its tools, libraries and components) are compatible with Windows 10. Next, use the preview to ensure that your app runs in Windows 10 as expected. Any problem areas can be isolated with IFDEFs for any code that breaks WinRT sandboxing support.
End users expect Windows apps to adopt the new Windows 10 styling and theming. When it comes to the fickle nature of consumers and app abandonment, there’s nothing more jarring than a look and feel that does not match the operating system it is running on. Modern application development platforms can provide downloadable Windows 10 style files which make it straight forward to give a Windows app the Window 10 look and feel without having to overhaul code or user interface elements.
Developers should also ensure that their apps support touch and gesture for tablets, smart phones, and other mobile devices running Windows 10. Developers will also want to start enhancing their apps by supporting new Windows 10 APIs for the Action Center, Cortana, new UI controls, etc.
With Windows 10 running on all these new platforms and devices, it is important to consider how traditional desktop UI/UX patterns translate to new multi-device form factors including 4k monitors. End users will expect their Windows 10 apps to run seamlessly across desktop, smart phones and tablets. Building a multi-device app for all form factors can be a big challenge for developers.
Modern development frameworks and libraries include components that abstract the complexity of building multiple form factors so that developers don’t have to build separate application forms, maintain and track changes against multiple and separate code bases, or write custom code depending on the display and user interfaces available at runtime.
IDE’s designed to deliver multi-device apps give developers a clear path to develop applications that not only run on Windows 10 but also other platforms like iOS, OS X, and Android with a click-to-compile single shared code base.
Microsoft expects this release to be a huge success with forecasted adoption rates of Windows 10 soaring to over one billion devices within the first two or three years. This sends Microsoft Windows developers a clear signal; get your apps ready for Windows 10, today.
By Brian Alexakis,Product Marketing Manager at Embarcadero Technologies.