This morning I saw a question posted to the local OzDotNet mailing list I subscribe to (i love me some DL action). I thought I’d keep this response on my blog for two reasons – I love the sound of my own voice (dah) and this is starting to become a default response I keep giving over and over privately and in parts publicly?
I have noticed in a few places discussions comparing the UI and API of WinRT with Silverlight, and suggesting that it (WinRT) is preferable. Mostly, these were quite old posts (a series of 6 or more at SharpGIS was my first sense of this).
It does raise the possibility that Windows / Microsoft will rebirth or rethink some technologies.
Related (in my eyes, anyway), apparently there is a wider discussion about Windows 9 (based on leaks and conjecture) suggesting that there is to be a complete rethink of Windows market segments in Windows 9 “Threshold”.
It’s summarised here in InfoWorld (December 2013) in an article by some bloke named Woody Leonhard.
He sets the tone in his first sentence:
“If independent leaks are to be believed, Windows chief Terry Myerson appears to be dismantling the Jekyll-and-Hyde monstrosity that is Windows 8, instead replacing it with a triumvirate of products that people and companies will actually want.”
I’ll be interested in Scott’s comments on the triumverate of products, including the quote that refers to Terry Myerson’s supposed intentions.
I don’t know much about the future of Microsoft because I suspect not many INSIDE Microsoft themselves have a clear definitive handle on that (not to sound jaded, i honestly do believe they are still haggling over how to raise the broken into fixable solutions).
I would say this, the company has built up enough equity in the past to make a full focused run at Consumer adoption for products that would typically sell reasonably if not better in enterprise/smallbiz but they in the end hit a wall. I think it was mainly they didn’t understand the consumers needs and were to busy trying to graph compete strategies they have used on Enterprise into the same space as consumers (Internally Microsoft can be quite aggressive and paralysed with fear around competitive events – its a huge weakness imho).
If you were to unpack Windows 8 today and really take a step back from it all, there’s not a lot of negativity associated with what they have done. I look at Windows 8 as the parity release between Silverlight/WPF and all the fixes customers (devs) wanted but it was delivered in a way that traumatised the base. It could have been delivered with a softer approach to change management in that instead of holding a gun to our collective heads with the intent of “upgrade or else” simple things like namespace / sdk related issues would have been enough to build confidence with the developer base around migration / roadmap. A developer would be fine with with Windows 7 WPF/Silverlight development today provided they know eventually with a Windows 8 upgrade the performance and scaleability issues would naturally resolve themselves (ie devs dont spend to much time haggling over the rendering pipeline).
If you then combine Windows Phone 8 (which is really still in many ways the Silverlight behaviour) you again then tick the other box around reach on mobility devices. You are still locking them down into a world called “windows” which doesn’t piss a lot of enterprise companies off, especially with the current turbulence in the device market we see today. Enterprise companies right now are a little paranoid or scared about their mobility adoption strategies because its one thing to say “I want breadth” and another to say “i want breadth and depth’ when it comes to User experiences that count. If a company wants to get their “mobility” story together, they often associate mobility with web because breadth is far more attractive story than a depth discussion. Breadth means HTML/JS because it means I don’t have to have specialist teams (Java, ObjectiveC, C#/Mono etc). Depth requires the opposite because you can only put off that problem for so long before someone within a team suddenly comes to work wearing his/her “Java Conference 1998″ t-shirt and smells funny because they do Android development.
Microsoft had an opportunity to do a simple rinse/repeat on the “Embrace/Extend” model with Windows and like I said, Enterprise would likely have been fine to play in that sandpit (of course they’d keep pushing on the “make my C#/XAML apps work on all” angle every step of the way).
In keeping Enterprise bellies full that would have stabilised at the very least their largest piece of the profit share pie, in that they would have bought themselves another 2-5 years to focus on Consumer more without having to pay the tax on losing hearts/minds of business grade solutions. This would have also given them more adoption metrics around the mobility + desktop upgrade story because if a company buys 10-100 units of one piece of hardware because it was easier to develop against well thats 10-100 forced adoption(s) on users which after a while could turn into positive/negative evangelist for those products (Forced adoption is not a bad strategy …its just ethically horrid).
But.. sadly none of the above has happened, instead Sinofsky wen’t rogue, went aggressive not just internally but externally and let his own self-inflated arrogance steer the ship in a direction of aggressive change management which has backfired. Now the new heads of state have to figure out how to salvage what they have left into meaningful pieces that can essentially tap into the above behaviours.
The article is right, you have really three options – fade out you core business (enterprise) and go full retard on consumers adoption, reverse the namespace/SDK engines and build a bridge between old and new but lose what small foothold you have on consumers – or – abandon consumer focus and retreat back to safety around enterprise/small business.
I’d place my money on the 2nd option, bridge building but that’s going to be filled with a lot of apologies and the only way they can even attempt to make that work is to ramp up their DPE practices beyond where it is today (that is a lot of people on a lot of planes, apologising and seeding a new/existing audience with solutions). The head of DPE (former CEO of Skype) is a business development numbers guy who clearly has no real passion for DPE, so i don’t see how even if they find a way to build that bridge can make that happen (it’s an attitude issue as well as a technical one).
Building a bridge between old and new is not as scary as one would assume (well i don’t anyway), there is a lot of positive work put into the Windows 8 SDK’s .. i don’t think anyone can say out-loud that Microsoft doesn’t get their shit together technically when given the chance, there is and has always been more positives in their technical abilities than negatives – it just always always always comes down to the way in which they deliver the message and react to developer/customer issues of the day.
Is it really a case of just refactoring Windows 8 namepsaces or proxy classes of some sort to convince Developers to continue on WPF/Silverlight path? … Is it a matter of just investing more in that “devigner” tooling problem (Expression Blend makes a comeback but with less reliance of “reflection” based property grids).
*shrug* .. i can personally see a way they could rebuild and get on with the Windows 9 approach and I don’t think it requires a radical overhaul but more architectural common sense.