← Back to context

Comment by cutchin

4 years ago

I've been primarily a linux user for some time, so I've gotten pretty desensitized to various applications looking vastly different on the same system. But in the last several years that's mostly gone away - Gnome knows how to change the theme for QT apps and KDE can configure GTK themes so things are actually remarkably uniform.

But then when I fire up Windows, it is just this bizarre mix of all these different UI frameworks. I guess Windows isn't the big cash cow it once was for Microsoft and maybe it's not the highest development priority anymore, but still it's remarkably off-putting and I have no idea why they would let it stay in this state.

I read they were introducing a new UI framework to unify everything (Project Reunion), but I can't help but think that will mean it's just another different-looking toolkit thrown into the mix.

With all that said, Microsoft's commitment to backwards compatibility is fairly legendary so there could be an actual technical reason some things can't be redesigned with a newer toolkit.

As far as I know Project Reunion is not really a UI framework - it's more about refactoring Windows APIs into individual libraries which can be used across different OS versions. This should enable apps targeting all versions of Windows 10 to use the latest stuff, in a similar fashion to polyfills in browsers.

This is probably to encourage developers to build software using the new Windows 10 APIs. Which is something they definitely have a problem with - I've been using Windows 10 quite heavily since the first beta and I don't think I've ever seen or used a third party Windows 10 (fluent / modern / metro) application.

  • It is a bit more than that, and I bet with Windows 11 announcement we will get a more clear picture on it.

    It is also a way to bring into Win32 side most of the API that really matter on the UWP side of the fence, most likely (although they are yet to confirm this) as migration path to UWP developers.

    .NET Native, C++/CX are pretty much dead, and C++/WinRT keeps missing many of the tooling available on C++/CX for XAML applications.

    So I expect them to migrate the APIs into an OS version independent layer, and then give the mercy shot on UWP apps.