It is funny that having read through the tales of woe such as the ‘Core Rot’ over at ‘Mac Performance Guide’ but then I decided to hang out on a Windows 10 forum or two and see how the ‘other half live’, the result of which being that maybe the grass in’t always greener on the other side. I look at what is happening in the Windows 10 world and it is a train wreck – developers heading for the door when it comes to UWP ( link ) along with all the horrible limitations, Project Centennial which sounds great on paper but takes away a lot of the incentive to ever move from Win32 to UWP because it allows developers to get many of the UWP perks without having to move to UWP.
Keep in mind that once ‘Project Centennial’ goes into full swing that there are very few benefits left over by moving to UWP – with UWP you get to target Windows 10 Mobile but why would anyone care? not to mention if one holds out long enough that Microsoft will eventually cave and have win32 support on Windows 10 Mobile via Continuum. How about Xbox? their opportunity to dominate the market was undermined the moment they decided to ram Kinect down the collective throats of gamers – you know, the gamers that like sitting on their sofa with a bag of Doritos whilst hurling abuse at some player half way around the world, yeah, that guy really wants to get off the sofa so he can jump around.
As I’ve said in the past, Microsoft had an opportunity around 20 years ago to clean up the mess that is win32 if for no other reason than giving them the ability to being able to respond to market changes by having an operating system that is flexible, modular and robust enough to adapt when required. The problem is that they didn’t make the move and thus created the mess they’re in today. Heck, their biggest mistake was the Windows NT core and jumping on the UNIX Haters Handbook bandwagon rather than playing it safe and going with a BSD or BSD/Mach core so then at least they could focus their attention on the value added higher level layers which would be a lot easier to deal with today; eventually win32 would be replaced along with the XOrg server where compatibility would be provided by having an Xorg session sitting inside the main display server in much the same way you can run Xorg applications on OS X. You could maintain the same stable BSD core, update it to UNIX 2008 (being the latest), embrace llvm/clang with a focus on delivering a top notch IDE with Visual Studio.
There was an interesting post by the creator of the Oculus Rift about the lack of GPU power in the Mac’s that are available but it is important to understand one important fact – the vast majority of computers, Mac or Windows PC, do not have the power required to power it. The minimum requirements is a nVidia GTX 970 which is out of the reach of the vast majority of people. The other part of the equation was the ‘computer that is good enough’ quip when in reality if you’re a vendor you have to pick your battles – do you enter into a dick waving contest to try and win the hearts and minds of gamers or accept that it is a niche that’ll never be won so why even try in the first place. In the case of the Mac platform it would never had made sense and it’ll be interesting to see what happens when the Oculus Rift makes it to the market with games available – it’ll remain a niche until an affordable version without such hefty requirements becomes mainstream but that is at least 2-3 years away at the earliest.