Uncertainty and the Nanny Stack

Three concrete steps or verbal commitments would assure us Silverlight and WPF developers that there is an integral, irreplaceable, and front-facing role to play in Windows 8 and into the future.

I grew up in a small town, about 5 hours from the nearest capital. For the first decade of my life, my parents owned a pet store. They worked hard and it grew to the largest pet store outside of the capital city, though we certainly weren't rich.

It was an industrial town, where the majority of people in the town got their income through the steelworks. One day talk started that the steel mill was going to be closed. As you can imagine, when most of the town expects to have no job tomorrow, they stop spending pretty quickly. Overnight, a huge number of businesses, including my parents, suffered real cash flow problems.

Many months later, the steel mill was sold, and it turned out the town didn't need to be so worried. But it was too long for most small business, who were forced to shut down and almost declare bankruptcy, including my parents. I remember that as one of the most stressful times of their lives.

I learnt a couple of lessons watching this:

Speculation is bad for the economy. The steel mill never closed, but rumours that it might created so much uncertainty that many businesses were forced to close overnight.

Putting all your eggs in one basket (in this case, opening a business in a town wholly dependent on one large business) is great when the going is good, but one day the rug will be pulled out from under you.

The rumours and speculation started the downfall, but my parents don't blame them - they recognise that they needed a backup plan.

Putting these lessons into context, here's what I think about the Windows 8 announcements:

Microsoft's radio silence is creating some speculation that could put real people's jobs at risk.

On the other hand, the people who's jobs are at risk are because they let themselves become wholly dependent on one stack, without a backup plan.

Silverlight "chicken littles" are making the problem worse for themselves. By creating such a hullabaloo over the future of Silverlight, they're putting their own dumb selves out of business (you think your customers aren't looking at your Silverlight.net posts and deciding to go with Flash?) despite no announcements from Microsoft.

In politics I subscribe to the belief that the morals and values of the community should inform the government, not the other way around. When government is making decisions about what is good/not good for its citizens, it's described as a "nanny state".

In the Microsoft community, we seem to be in love with the "Nanny Stack". We expect Microsoft to decide whether the future is HTML or Silverlight. We expect Microsoft to have firm plans for the future, since most of us don't. And we blame Microsoft when they don't get their message 100% right.

As a community, we need to take more responsibility for our role in directing the future of the stack. Then we might learn not to put all of our eggs in one basket, and not let a little speculation destroy our businesses.

Welcome, my name is Paul Stovell. I live in Brisbane and work on Octopus Deploy, an automated deployment tool for .NET applications.

Prior to founding Octopus Deploy, I worked for an investment bank in London building WPF applications, and before that I worked for Readify, an Australian .NET consulting firm. I also worked on a number of open source projects and was an active user group presenter. I was a Microsoft MVP for WPF from 2006 to 2013.

Coming from a Silverlight background, like many fellow Silverlight developers I don't understand what the deal is with the sudden focus on HTML5.

A light dawn on me one day that in order to look outside the box and not "keep my eggs in one basket", I need to do something drastic and work out why Microsoft (and others) see HTML5 as a serious "platform".

This drastic step for me is actually fairly simple:

Go to an Apple store, and buy myself an iPad

Seriously use it for a few weeks. Understand the benefits, what's missing, what's great.

Re-evaluate from there

The annoying part is that I actually quite like the Microsoft stack, but this radio silence and direction meant that I had to go buy an iPad to see what's really going on.

Microsoft has always delivered interoperability from COM OLE to .net, so backward compatibility with it's previous undertaking is hardly to be expected to be an issue.
Of course, user friendly developer support is different. Visual Studio .net features are selected keeping existing market user base's system speed, so maybe developers will have enough work at jobs till their tools make corresponding advance. For eg. VS2010 outclasses the VS98.

Microsoft's radio silence is creating
some speculation that could put real
people's jobs at risk.people's jobs at risk.

I disagree that there's silence. Microsoft are saying plenty. It's just that they are not saying what people want to hear, so people deny hearing the message and demand to hear what they want to be told.people's jobs at risk.

As to everything else: You all saw a
very small technology demo of Windows
8, and a brief press release. We're
all being quiet right now because we
can't comment on this. It's not
because we don't care, aren't
listening, have given up, or are
agreeing or disagreeing with you on
something. All I can say for now is to
please wait until September. If we say
more before then, that will be great,
but there are no promises (and I'm not
aware of any plans) to say more right
now. I'm very sorry that there's
nothing else to share at the moment. I
know that answer is terrible, but it's
all that we can say right now.

I think that's a fair comment, and I think there's more to the story than we know, but the "radio silence" isn't a great thing. That said, my point isn't that it's Microsoft's fault, it's the communities fault for letting that radio silence matter (and amplifying it by acting like the sky has fallen).

@Colin then the rest of the dominoes will fall like a house of cards. Checkmate!

Guy

08 Jun 2011

Great points Paul.

I'll say it again, D9 was about the end user EX. If they didn't want to engage with devs they shouldn't have mentioned the technology at all.

The sad thing is lots to like in Mango and Win8. Instead of lots of headlines about how happy developers are lots of bandwidth about silverlight/ HTML5 etc.

Despite any shortcomings, one thing about Apple is they're on message and they don't talk about it until they can deliver code to play with. MS could learn from that. September is a long way away at the current rate of innovation by Google/ Apple etc

In the light on the yesterday OSX Lion announcements, I think that MS rushed the Win8 demo to be ahead of Apple on innovations like full screen apps, slide from border to show the controls and other similarities.

Pual, great and well written Article.
Isn't it the same metaphor as the Shovel vendor during the Gold Rush!

BTW: Are we going back to HTC?

Oleg

08 Jun 2011

Very well said!

The irony of things though that not putting all eggs in one basket means start using HTML/JS/CSS stack, that is exactly where Microsoft is pushing.
Sometimes I think that it is exactly the plan - to scare .NET developers out of their comfortable sleep.

David Clarke

08 Jun 2011

For those who suggest Microsoft always delivers backwards compatibility, does anyone remember Windows Mobile? There was a similar silence regarding support for Windows Mobile in VS2010. As a result I'm now supporting a Windows Mobile app using VS2008 because there is no other option. If Microsoft had come clean a little earlier we would probably have chosen a different route for our mobile app.

WRT purchasing an iPad - if HTML5 will convince the holder of the purse then all power to you. And yes it is possible to develop HTML5 apps for the iPad that will for the most part behave like native apps.

If you want a cross platform mobile app strategy then you might like to look at MonoTouch which allows you to continue to use C# across Phone7, Android, iOS.

Ark-kun

09 Jun 2011

In politics I subscribe to the belief
that the morals and values of the
community should inform the
government, not the other way around.
When government is making decisions
about what is good/not good for its
citizens, it's described as a "nanny
state".

In the Microsoft community, we seem to
be in love with the "Nanny Stack". We
expect Microsoft to decide whether the
future is HTML or Silverlight.future is HTML or Silverlight.
How can developers change Microsoft's adoption of Silverlight? Are we able to vote to change the Silverlight's government?

Butler Reynolds

09 Jun 2011

What it really comes down to is this: I don't want to be a javascript programmer. Blech.

Joe Gershgorin

09 Jun 2011

The reason you see a lot of WPF/Silverlight devs upset is because HTML5/JS is in many ways a huge step backwards.

I already know a good amount of HTML/JS, I simply don't want to develop in it for LOB apps for the same reason I don't want to replace my Core i7 computer with a 386, it will hurt my productivity, development and app maintenance times. Developing will simply be less enjoyable.

Let me put it to you this way, what if Google announced that their next browser would use inline C++ for all new features, and when asked if people can still use HTML/JS they simply said to wait 4 months for the answer, do you think that would cause any kind of fury among the community?

I don't understand all this argument HTML5 vs. plugins.
My point of view is that plugins (Silverlight, Flash, Unity, Reader, etc.) will always exist.
The standards (like HTML) are great but will always lag behind the latest and greatest technology. Many of the things you see on HTML sites were only possible with plugins but, any new technology requires a plugin to be supported by a web browser.
If you're using Silverlight or Flash, only to display a form, a graph or play a video, you could do it in HTML. But, when will we have things like webcam access and GPU accelerated 3D graphics in every browser? That's what we are going to have in future versions of Silverlight and Flash.
Check out this Silverlight demo: http://www.yvision.com/2011/05/16/boxfall/
You can't do it in HTML5 but, thanks to Silverlight, it runs in all major browser, on both Windows and Mac OS.

Frediano

16 Jun 2011

Why would -more- choice be perceived as such a negative?

OTOH, folks have been claiming that it all started going to hell, just after DEC totally missed the boat with RT-11 ... over 30 years ago.

Can't tell you the last time I programmed in MACRO-11. Oh the wasted hours. Just when I had finally memorized 173000G. What is truly scary is, that useless number is still occupying wetbits somewhere. It needs to go, to make some room.

It's officially hard to take any of this gnashing of teeth seriously.

I mean, people's jobs are at stake.

mika

16 Jun 2011

Even though a lot of MS developers might have the 'Nanny stack' mindset, I don't think it really matters. Once you have a lot of experience as a developer, its quite easy to switch languages / platforms. Often if I put some effort into learning something new I am always kicking myself for not doing it sooner, it generally turns out to be easier than I thought.

Whilst I work exclusively with the Microsoft stack, I think I am putting all my eggs in the 'Software developer' basket, not the Microsoft basket. If some tech comes along that removes the need for developers I may well be screwed, otherwise I feel I am only a few months of hard work away from being a developer in any stack.