Build 2016 has come and gone and the conference was pretty exciting in terms of Microsoft’s predictions and developments for the upcoming year. Many are already excited and intrigued by the future-oriented investment in Bots, the mind-blowing possibilities of HoloLens as it finally ships to developers, or even the noticeable UI changes that are coming as part of the Windows 10 Anniversary Update later this summer.
But there’s one new feature coming to Windows 10 which, in my opinion, hasn’t received nearly enough attention, and is so big as to blow all the others away. And that’s Project Centennial.
Regular Microsoft enthusiasts will be familiar with that codename and know that it’s the company’s solution to bringing regular desktop apps, known as Win32 programs, to the modern world of the Universal Windows Platform.
Regular Universal Windows Apps (UWAs) can be downloaded and installed from the Windows Store with just one click, and they work everywhere – PC, mobile, tablets, IoT, Xbox (soon) and HoloLens. However, Centennial UWAs will only work on PCs for now because the repackaged Win32 apps inside of them still require access to those powerful native Windows APIs. But they still benefit from many aspects of standard UWAs, and that will make a big difference for end-users, which is why I believe Centennial to be a huge feature.
Project Centennial was announced last year, among a bunch of other app “bridges” designed to encourage developers to bring their programs and services to Windows 10 and Windows 10 Mobile. But Centennial is different from all the other bridges, because it has the possibility of changing Windows forever, by addressing its biggest strength, and fixing what some view as its biggest weakness.
Windows is Windows mainly because of its adaptability on different systems and its openness towards third-party programs. But that’s a double-edged sword. For every game you can install on your system that uses incredible cutting edge graphics, there are a thousand unwanted toolbars ready to take over your browser. For every Skype call you make to your family, there’s another menu you need to read and click through before actually getting Skype to install. And for every unused program you uninstall, there are a thousand registry entries and files that get left behind to clutter and slow down your system.
All of these problems have been a staple of Windows for decades now. It’s the main reason why people often end up choosing alternative systems: OS X for some; iOS and Android to a growing number of users. It’s also the reason why being the “IT guy” for your family and friends ends up feeling like you’re the victim of some ancient curse that forces you to waste days troubleshooting obscure Windows bugs.
But Centennial has the potential to fix all that and bring even more unexpected improvements, from better device battery life, to faster systems, to fewer tech-related calls from grandma.
Project Centennial can do all of that simply by converting a regular Win32 desktop app to a UWA, or an .appx package, as it’s known. Just by going through that process, a regular desktop app can now be installed or uninstalled as easily as a Store app. In other words, all it takes is one or two clicks. Imagine all the hours spent trying to explain to someone how to install something like Word on a PC, and now they could do it with one simple click.
There’s also the added benefit of actually having these apps in the Store. Yes, repackaged Win32 apps will be able to be submitted to the Store, just like a regular UWA. While Microsoft still hasn't defined exactly how and to what extent these apps will be allowed on the general Store, there’s a lot of potential here. Having a centralized, safe location for all of your most-used apps would simplify the PC experience and bring it much more in line with what people expect from their modern devices.
No more system slowdowns
Up until now, Windows systems have been notorious for slowing down over time. And, barring malware or covert bitcoin miners on your system, that’s mainly caused by old registries and files that get left behind even after programs are uninstalled. All of those still need to be read and loaded into memory when a system boots.
Just to give you the same example that Microsoft gave on stage at Build, the latest ultimate version of Visual Studio writes over 700,000 registries to your system when installed. And that’s just one, albeit complex, program. Now imagine what happens to a system after a few years of use, with hundreds of programs and updates being constantly installed and uninstalled. It’s enough to drive even high-end systems to slow down. But all of that could soon be a thing of the past.
The way Centennial’s converter works is that Win32 apps get repackaged as Universal Windows Apps and all their files and registries get dumped into one single location. In other words, apps will no longer spew registries and files everywhere on your system. Instead they’ll have their own app folder and ‘faked’ registries which can be called inside the app but which don’t actually end up in Windows’ “big registry”.
This means that Windows itself should always be nice and clean just like the first day you bought the system. It also means that apps get cleanly uninstalled, leaving no clutter behind. If you’re a Windows power user and have had to deal with system slowdowns, this almost sounds too good to be true.
Better battery life and performance
Battery life is another improvement that may come, albeit in a sort of roundabout fashion. Desktop apps are so powerful because they can tap into all the system’s resources and run in the background as much as they want. But that can quickly become a problem when a program doesn’t play nicely and doesn’t manage its resources right.
But Universal Apps play by different rules and the OS manages those resources and the way an app can behave in the background. That’s why even a repackaged Win32 app may end up with better power management and resource management practices, even if none of the app’s code is changed.
And because of the way Windows 10 tombstones modern apps (UWAs) when they’re not in use, this could help save battery life. Not to mention the fact that UWA apps relinquish system resources easily and automatically, so you may end up with better performance in some situations. And again, this should happen all without the developer lifting a finger.
As you can see, all of these potential gains could transform Windows from a legacy-tied, “old world” operating system into a modern one that’s more easy to use, performs better and offers a lot of power to developers and users. In other words, it would make Windows a lot more like the leaner operating systems that run on our phone and tablets, in a good way.
But that assumes that a lot of developers will jump on-board with Project Centennial and all the most popular Windows programs and games get converted to Universal Windows Apps. And that’s a very big assumption.
Microsoft said that the developers it talked to were very excited about Centennial, and the fact that all their investment in Win32 apps would now be leveraged on Windows 10. However, it’s very doubtful that we’ll ever get to a place where a user will only rely on Universal Windows Apps.
For one thing, even repackaged Centennial apps will have a few limitations that regular desktop apps don’t: no NT services and no driver installs. These are limitations imposed partly for security reasons, but also because these scenarios probably wouldn't work with the converter.
Secondly, while most new services and apps may eventually end up as UWA, older programs may never get the conversion treatment, so users may still rely on regular Win32 apps with their messy installs and even messier uninstalls.
The good news is that the benefits mentioned above aren’t all or nothing: even if only some of the apps you use end up being converted through Centennial to UWAs, you’ll still see some of the benefits. So what will most likely happen is we’ll end up in a world where most users rely on a mix of Win32 and UWAs that will make systems run smoother but still not as well as on their first day.
Still, this is an important improvement and it’s arguably one of the most important steps in bringing Windows into the 21st century. And who knows, perhaps as the Centennial tools mature, and the Universal Windows Platform gets more robust, we’ll truly get all of our apps and services in a simple-to-digest way that leaves our systems running smoothly.