Microsoft Build 2015: Keynote and first day

Watching the Build 2015 keynote and the first part of the keynote was focused on Azure which was a not so subtle hint that going forward Windows is taking a back seat for the future direction which will be focused around delivering services and middleware. There was also the introduction of Visual Studio Code for OS X which gives an insight into the future of Microsoft, the change of attitude that if they’re going to get the net generation of business start ups to use Azure instead of the current situation of using Google or Amazon, then it requires Microsoft having to accept that they (Microsoft) will have to go to their platform of choice rather than demanding that the they come to the Microsoft platform. As one article on Arstechnica pointed out not too long ago, go around San Francisco and other hotbeds of start ups and you’ll see MacBook’s and Linux laptops – Microsoft has accepted that developers are open to using Microsoft’s cloud service but only if Microsoft is willing to accept that it will involve supporting for non-Micosoft platforms.

Moving onto Windows 10 the biggest announcement orientates around the delivery of iOS and Android ‘compatibility’ that sound more akin to the sort of ‘Windows compatibility’ that Mainsoft delivers with its WISE SDK where some win32 API’s were provided to allow win32 developers to re-use large amounts of their code and target the *NIX platform. The best example of its use in the real world was the brief appearance of Internet Explorer and Outlook Express on Solaris and HP-UX where it acted as an abstraction layer rather than a runtime such as WINE or a virtual machine – the abstraction required that the programmer had the original source code and modify it then compile it where as WINE allows you to run the applications it is by recreating the win32 API and wine taking care of handling the platform differences such as mapping directories as drives with assigned letters. Hopefully that’ll close the gap between Windows 10 Mobile and iOS/Android but one would have to hold off getting to excited because I’m sure there are little gotchas that might make or break whether some developers will bring their applications to the platform.

Another big announcement was the inclusion of .NET and win32 applications being sold in the Microsoft’s online software store but with a slight twist – the win32 application demonstrated rather than the traditional win32 which requires an installer which meddle around with every part of the operating system where as the win32 applications for the store will be modified to allow the store itself to take care of the installation and updating procedure. Part of that difference also includes the fact that rather than the application sitting ‘natively’ on the operating system it instead runs usual Microsoft’s own virtualisation technology which sandboxes the application in its own little self contained unit where, I’m going to guess, that file type registration (along with other universals that normally require administrator privileges) for example will be registered with the application store application which in turn as as an intermediary between the operating system and the application itself meaning the registry is left free of the usual garbage build up that normally results from frequent installing and uninstalling of applications over time. In the long run I’d love to see Microsoft reduce the ‘cut’ that they take to something like 10% so then eventually the vast majority of end users end up purchasing all their software through the application store which will avoid so much of the drama and heartache that comes with owning a Windows computer these days not to mention the TLC required to keep it running.

There was some small snippets relating to the new name for the next browser which will be called Microsoft Edge which also has its own extension capabilities which will enable the re-use of code used for Chrome extensions where Joe Belfiore noted that with a few modifications it was possible to get an extension working with Microsoft Edge. It is great to see that Microsoft has finally made the split; kept Microsoft Internet Explorer for legacy and enterprise support whilst moving forward so that even I, as a non-Microsoft user, will benefit now that a major player has pushed out a legacy free web browser which a focus on web standards that will hopefully translate to web developers taking advantage of these new standards rather than catering for the lowest common denominator out of fear that they would be incompatible if they joined 2015.

Unfortunately there are still are downsides; the GUI is still an atrocious mix of GUI kits meaning that the scaling on high-dpi screens as haphazard and half-assed at best – having given Windows 8.1 and the latest build of Windows 10 a go, things really haven’t improved all that much and won’t improve until Microsoft go fully WinRT/XAML top to bottom rather than this half assed half baked compromise that results in the shitty experience so far that I, along with many others, experience on the Windows platform. I would really love Windows 10 to succeed but given their reluctance to even clean up Windows tells me that they really don’t have much of a long term platform in terms of maintaining Windows as a consumer facing platform other than kicking it down the road and ensuring they don’t annoy their big name enterprise customers who don’t want another repeat of the Windows 8.x fiasco. I’ll keep an eye on the stuff that is happening – their server work is really interesting but their client is very much ‘meh’ which probably explains why Valve/Steam is covering their base with the work they’re doing on Linux with its partners.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s