The Unofficial Windows 8 Developer FAQ

Early this week I’ve been talking to a few current and former Microsoft staffers about all things Windows 8. In my discussions I’ve started to gather some gossip in around what happened to Silverlight and lastly the specifics around the DevDiv fall out between Steve Sinofsky and Soma.

Should I share the chat logs it is an entertaining read however what did struck me throughout the conversations was how much positivity Microsoft has been squandering due to petty internal squabbles or “dare not speak of that, for the overlord Sinofsky shall smite thee down for saying the nameless one out loud”.

Today, I’m going to attempt to do something Microsoft staff should have done long ago or didn’t do correctly or simply were held back from doing so. I’m going to release the Unofficial FAQ on “What Just happened” in Microsoft for developer(s) worldwide.

Note: This is all based off internal gossip, second hand information and blah blah, so if you want to call bullshit on the below do so but back it up with specifics on what actually happened – don’t just say “that’s b.s” as we’ll take that as a deflection attempt at setting the record straight.

Ready.. (Remember this is from the perspective of “if I was still a Product Manager at Microsoft positioning not official etc.).

The Unofficial FAQ

Q. Is WPF Dead?

A. Yes and No. Yes WPF as you see it before you is end of life that is to say no more code will be written for the “platform” given Windows 7 and Windows 8 have different DNA going forward. No as in when we decided to move everything over to leaner Windows 8 platform we had to put both Silverlight and WPF on a diet in order to get Mobility parity / compatibility in check. The Upside is we’ve fixed some of the UI rendering issues that have plagued you in the past; the down side is we’ve had to sacrifice features here and there in the process.

 

Q. If I make an Application today in WPF it won’t work in Windows 8 tomorrow.

A. Not correct. Expression Blend uses WPF still in Windows 8, so in a way you’re covered as long as VS2012 and Blend continue to take their cue from the previous XAML Rendering that has been in place since Windows 7. There are certain things you can’t do in Windows 8 going forward though, that is to say new features won’t work in both Windows 7 and Windows 8 for obvious reasons. If they aren’t obvious then …stop coding now.

 

Q. Do I have to learn HTML5 or C++ in Windows 8 now?

A. No. The neat trick here is that we took the body of work found in Silverlight and made it handle the rendering of XAML. Now we didn’t take it as-is we again had to scale it back and use it as a starting point for a reboot of WPF/Silverlight to ensure two things happen going forward. The first is that we have WPF/Silverlight parity issues resolved in terms of performance and developer centric API changes whilst at the same time we had to find a way to make Steve Sinofsky believe that Silverlight was killed off. The last point wasn’t a technical issue it was more of a political one and so in order to help give him the illusion of Silverlight’s death we renamed a few namespaces and adjusted a few features here and there to give the appearance of “new” on the “old”.

 

Q. Why did you change so much in Windows 8 to confuse us all on old vs. new?

A. We had to find a way to put Internet Explorer back into the hands of the masses in a more aggressive manner. In order to facilitate this internal metric we needed to also scale back Silverlight’s popularity given when you think about its future roadmap and Internet Explorer the two will end up competing with one another. Having Internet Explorer start taking over the HTML5 discussion would also help us win hearts and minds with the non-.NET crowd which would then help boost our internal metrics around Linux, Php, Apache and MySQL/Oracle compete (that has often plagued us for many a fiscal year).

Once we’ve placed Internet Explorer onto many devices worldwide we will then ask developers to fork their beloved HTML5 in a way that lets them access Windows 8 further. This in turn will help us regain the lost dominance we once had before all of our Internet Explorer staff left the company to work for Google Chrome. Additionally, it will help us with our many year attempts at attracting more developers to our Windows Server & Tooling business units.

Now to answer your actual question it’s important to know the previous strategy for Internet Explorer as now the problem we face both internally and externally is how we are going to balance Internet Explorer’s future with XAML given the old “Silverlight” concept was directly competing with this strategy. In short we had to make it feel there was a lot of change in the room and decided that letting you believe that what’s really happened is that WPF & Silverlight were merged as one and that Silverlight 5 wasn’t the last release as really Windows 8 is Silverlight 6 Desktop.

Letting you believe that would keep you preoccupied with that branch of thought where what we need you to do is come back to the Internet Explorer way of thinking – there is no plugin only a browser.

Q. So… you saying Windows 8 is really Silverlight 6?

A. Yeah in concept yes. Technically no, but if you take a step back from our bad messaging, public relation screw-ups and lastly our idiotic executive we pretty much did what you asked – we fixed WPF and Silverlight parity & performance and we made it also work on both desktop and mobile. I give you Windows 8.

 

Q. Well ..why didn’t you just say that? Why did you scare us with C++ or HTML5 rhetoric?

A. I have no answer suffice to say there was lots of infighting going on and I don’t see Soma and Sinofsky sharing a beer or two at a BBQ in the near future unless the bottle was broken and one has the other pinned down with a desire to kill..

 

Q. You said mobility and parity are you saying Windows 8 is compatible with Windows Phone?

A. Yes. Windows Phone 7 was kind of a hold our place in the line while we figure out what to do next release. It was badly marketed and in the end we were too late to enter the market – not to mention we weren’t ready to talk about the work we were doing with Windows 8.

Now that we’ve finally hit reset on Windows Phone via our 8.0 releases we’ve now found a way to put the XAML rendering we have in Windows 8 onto the phone. Well to be fair we really kept Silverlight’s DNA alive in both which has now let us enable you to write applications on both platforms via our new upgraded API’s and tooling (again to give the appearance of new).

This is in part why you can’t use Windows Phone 8 code on Windows Phone 7.x compatible devices,  Additionally you would see how we swapped the two out and start to guess what really happened during the Soma vs. Sinofsky fight.

Q. I don’t think that’s technically correct.. if you look at Windows Phone 7 and then look at…

A. I’ma let you finish by stating that the phone may not have changed radically but Windows did that is to say if you were going to drag Silverlight’s work into the new Windows 8 whilst releasing Windows Phone 7 previously then which of the two do you change? The phone or operating system? – Answer is you do both but incrementally.

Q. Hang on so all of Windows 8 is now Silverlight? That doesn’t make sense..

A. No. Windows 8 core is,  (as the messaging and PowerPoint decks say,) new. Now the XAML piece that bolts on top of that core is what I’d call “Silverlight 6” that is it’s all the work that has been done on WPF/Silverlight since their birth converging as one.

Q. Why did Sinofksy and Soma duke it out?

A. It comes back to Sinofsky’s dislike for Silverlight that was in place years before Windows 8. Internally what had happened was the Windows 8 Planning teams felt that Microsoft had lost its way on the importance of web both from a tooling and platform perspective. Silverlight was simply a distraction that got out of control and what they felt was that HTML5 was getting more and more market acceptance. As such it was time to put the genie back in the bottle and double down on Internet Explorer again with an eye this time on integrating the web with the operating system via some minor fork in both JavaScript and HTML5 (eg iecompatiability tag)

This of course didn’t go down well with Developer Division as this in turn meant that they had to scrap all the work done with Silverlight to date! The Silverlight team then went to work proving that both options are still viable and that for XAML, Silverlight would be a better candidate to ensure that path continues to occur.

Essentially it was an internal two horse race for a while with the deciding vote going to Sinofsky. Unfortunately it was an unfair race given his alleged dislike towards Silverlight, so this in turn become a tense standoff between the head of DevDiv and the head of Windows. It’s rumoured that Soma and Steve had a huge falling out over settling old scores and as a result Silverlight was put into a “do not talk about it” status mode.

Despite the executive fallout the Silverlight team (aka XAML team) were moved under the Windows org chart and put to work dragging the old into the new but with a clear direction to forever wipe the name Silverlight from their minds. It’s rumoured that in planning meetings the words compatibility and Silverlight were no-go words.

It’s all gossip in the end, but that’s what’s being said at the local water fountain anyway.

It could explain why Scott Guthrie went over to Azure. It could explain why you see some of the old Silverlight bloodlines talking in the Windows 8 presentations but finally, it could also explain why the “strategy has changed” remark got former Executive Bob Muglia in a whole world of trouble.

Summary

Look. The above could very well be fiction and time will tell exactly what has happened here but the more I think about Windows and it’s Phone counterpart the more I start to think what has really happened is a clean reboot to WPF/Silverlight has occurred for the greater good.

The downside is that we’ve all been preoccupied with the new UI of Windows 8 and lastly the community wanted to know what the future of the brand Silverlight/WPF was per say (this is awkward). Instead of getting actual answers they were given deafening silence and finally, to this day the overall developer relations overall from Microsoft has been both lazy and poorly executed.

What we are seeing is Microsoft power brokers asleep at the helm, specifically their evangelism is dead and lastly their messaging around the transition for Silverlight/WPF has been fumbled to the point where it’s easier now to believe Microsoft has hit “Shift+Delete” on these two products rather than to read the above (too much carnage on the roadmap now).

If Microsoft had of come out and said something to the effect – “Look you asked us to fix WPF and Silverlight. We did that, we came up with a way now that lets you develop for our platform in three ways. The first is C++ if you want deeper access to Windows then we’ve tided up our Com++ API’s to a way that C# developers have found palatable. If you don’t want to do native code then you can build applications like you have done with Silverlight in the past, but the difference is it will now  Windows only (sorry). If you then want to build apps that are cross-platform then again we’ve got HTML5 and Internet Explorer story brewing, whilst it’s important to understand that we will not be looking to expand our developer story beyond Windows anymore (there is a certain amount of control HTML5 will give but we still believe Internet Explorer is a better bet overall).

Then they show a few slides on how you can write-once deploy to both Desktop, Tablet and Mobile via the XAML/HTML5 and C++/C# story then it becomes a bit of a consolidation discussion vs. a “they’ve killed my favourite toy” discussion we see today.

They didn’t do that. That would require actually someone in the company with a backbone or marketing muscle that goes beyond ass kissing to Sinofsky. The problem we have right now ladies in and gents is we are all suffering from Microsoft’s internal bickering and as a result companies are looking to seek alternative to Microsoft for fear that this petty squabbling will continue to spread from not  only the mobility market share losses but to potentially the operating system as well.

Microsoft also has to figure out how to also re-engage their hardware vendors going forward given their failure rates in Windows Phones weren’t profitable for these guys and now with Microsoft Surface sending mixed signals it well has now turned into a bit of a question mark above the companies head around whether it can survive beyond its current dominance of desktop market share.

Inside Microsoft Server share has dropped significantly and it’s why you see a lot of effort in the web platform stack around enticing Php and MySQL folks back to the logo.

The only thing left for Microsoft to control is Office, Desktop and XBOX. Beyond that, they don’t have dominance anymore.

Again someone explain to me why Steve Balmer is good for the company?

 

Related Posts:

Ex-Silverlighters and how they influence the vNext

On the Interwebz, when you stumble your way through the various “Silverlight is dead”-style blog posts, what you will most likely see is the theme around skill transference.
Silverlight advocates of the past, who have now switched over to WinRT, have begun to spread the message that not all is lost. You can take your Silverlight skills to WinRT!

It’s Kool Aid Time: this year’s batch is Raspberry.

When I read posts like these, I simply shake my head and admittedly get a little annoyed at the existence of such posts. More to the point, I’m also getting weary of seeing MVP’s of the Silverlight of yesterday flipping the script and now putting out a public audition for WinRT MVP auditions.

I get the mindset that often goes into these style posts, and in many ways you have to give these folks credit, as they have simply have moved on. Unfortunately like most people inside cubicles around the world, the luxury of riding the new wave(s) is often restricted to a small cluster of adopters and influencers.

You know these people: they are usually the same people on stage at a conference somewhere telling you what you’re doing wrong and how you should adopt vNext tech to do better.

Back to reality.

I’ve been at the birth of a new technology; I’ve been in a team that spent millions on marketing and seeding the new technology to over 6 million .NET devs and around 500 million PC’s worldwide. You could say I’ve seen a lot and learnt a lot from that experience.

The one consistent ingredient to seeding a technology is what we collectively call the “influencer”. The idea is you round up a bunch of Community Leaders, you shower them with Glass Awards, titles like MVP, or at the very least make them feel important or as your “favorite”, and then you get them to tell people your message (as the theory is that this in turn adds authenticity to your message).

When I was an Evangelist, I went from being an unknown non-.NET developer in an Adobe/Macromedia scene, to being suddenly invited to speak at Microsoft Conferences, Twitter Followings, Facebook Friend Requests, Invites to Business Deals/Meetings and so on. You feel as if you’re now the one being dated whilst at the same time you in turn make others feel the same the ripples of influence continue.

That’s how you artificially pump a community up around a technology adoption. There are different flavors to the approach, but ultimately, your job is to become a band manager and not the rock stars (you scale more).

The messaging framework.

When the time comes where you need to broadcast your message to the crowd of followers, your main focus is to ensure you get traction around repeatable messaging. That is to say, you ensure that you all sing from the same hymn sheet and with enough repetition this message will be the consistent soundbyte you hear at a local conference near you.

For example:

  • Silverlight isn’t dead; it will be around for 20 years.
  • You can take your Silverlight skills today and reuse them with Win8 tomorrow, as in the end it’s just XAML and C#, right?
  • And so on..

These are examples of how you frame the conversation to break down resistance, or what Steve Jobs would call the “distortion field”. It’s sneaky, and often if you’re not paying too much attention, it will creep up on you and then you find yourself saying the above as if it became suddenly your idea (kind of a mutated confirmation bias at work?).

Change is the enemy.

That’s how you flip the script; that’s how you get people to stop looking behind and start thinking about what’s coming up. You can shift an entire community from the old to new in under 2-3 years using that formula mixed with enough conference blitz, blog post(s) and so on.

This is, however, all a false sense of change. That is to say at the conference / front lines, it looks as if things are moving forward fast, quick everyone get on the new wave!

At the cubicle level, the environment that when the conference etc. is over and everyone retreats back to their various developer enclosures. They are still likely staring at WinForms, Windows XP, WPF, Silverlight and so on for the next 1-2 years minimum.

This is where the thinking around change truly festers, as now it’s less about having XAML and C# skills but more about how to use them in an upcoming project. The bottom line is if you are writing Silverlight/WPF, the very notion or idea that you can transfer your skills in 2-3 years when Windows 8 dust settles is really pie in the sky broad stroke thinking.

Today, you have to File-New Silverlight/WPF Project, as it’s realistically the environment in which you are likely to get success in this .NET space. You could go down the path of HTML/JS and really get ready for devices of tomorrow, but that’s tomorrow, this is today.

Silverlight is at the end of it’s life, and in turn anything that takes a dependency on it is sure to decay over the next year or so. Windows 8 is not a desktop release; it’s a tablet release. The future around how Windows 8 plays a role in businesses of tomorrow is still a huge unknown.

Microsoft really needs to stop switching gears so fast here. If the future is to gravitate towards the next wave, then fine. Change is good, yet do so in a manner that has clarity attached.

Stop hiding behind the sound bytes of the usual muffin eaters at the same conference(s). Stop just abandoning the toys of today because they aren’t as shiny as the ones you make tomorrow.

Spend more time in the transition or bridging between the old wave and the new wave, whilst lastly settle on a message around how you transfer and not throwaway messaging of “well if you know how to write code you can write better code tomorrow”.

I think it’s clear we all can learn a language or two. That’s not the point, the point is: What incentive do I have to relearn (or go backwards in) in order to move forward?

WinRT is Silverlight 1.1 or 2.0 when it comes to development experiences. Windows Phone 7 Development vs. Windows 8 Development isn’t as clear as it could be. Lastly, if Silverlight has no more releases left in it, then how do other products like Lightswitch, Expression Blend, Visual Studio, etc. get affected by the end of life stigma?

Related Posts:

Decoding Windows 8 UX Principles– Let Context breathe instead of the UI!

Last night I was sitting in a child psychologist office watching my son undergo a whole heap of cognitive testing (given he has a rare condition called Trisomy 8 Mosaicism) and in that moment I had what others would call a “flash” or “epiphany” (i.e. theory is we get ideas based on a network of ideas that pre-existed).

The flash came about from watching my son do a few Perceptional Reasoning Index tests. The idea in these tests is to have a group of imagery (grid form) and they have to basically assign semantic similarities between the images (ball, bat, fridge, dog, plane would translate to ball and bat being the semantic similarities).

This for me was one of those ahah! Moments. You see, for me when I first saw the Windows 8 opening screen of boxes / tiles being shown with a mixed message around letting the User Interface “breathe” combined with ensuring a uniform grid / golden ratio style rant … I just didn’t like it.

There was something about this approach that for me I just instantly took a dislike. Was it because I was jaded? Was it because I wanted more? ..there was something I didn’t get about it.

image

Over the past few days I’ve thought more about what I don’t like about it and the most obvious reaction I had was around the fact that we’re going to rely on imagery to process which apps to load and not load. Think about that, you are now going to have images some static whilst others animated to help you guage which one of these elements you need to touch/mouse click in order to load?

re-imagining or re-engineering the problem?

This isn’t re-imagining the problem, its simply taken a broken concept form Apple and made it bigger so instead of Icons we now have bigger imagery to process.

Just like my son, your now being attacked at Perceptional Reasoning level on which of these “items are the same or similar” and given we also have full control over how these boxes are to be clustered, we in turn will put our own internal taxonomy into play here as well…. Arrghh…

Now I’m starting to formulate an opinion that the grid box layout approach is not only not solving the problem but its actually probably a usability issue lurking (more testing needs to be had and proven here I think).

Ok, I’ve arrived at a conscious opinion on why I don’t like the front screen, now what? The more I thought about it the more I kept coming back to the question – “Why do we have apps and why do we cluster them on screens like this”

The answer isn’t just a Perspective Memory rationale, the answer really lies in the context in which we as humans lean on software for our daily activities. Context is the thread we need to explore on this screen, not “Look I can move apps around and dock them” that’s part of the equation but in reality all you are doing is mucking around with grouping information or data once you’ve isolated the context to an area of comfort – that or you’re still hunting / exploring for the said data and aren’t quite ready to release (in short, you’re accessing information in working memory and processing the results real-time).

As the idea is beginning to brew, I think about to sources of inspiration – the user interfaces I have loved and continue to love that get my design mojo happening. User interfaces such as the one that I think captures the concept of Metro better than what Microsoft has produced today – the Microsoft Health / Productivity Video(s).

 

Back to the Fantasy UI for Inspiration

If you analyze the attractive elements within these videos what do you notice the most? For me it’s a number of things.

imageimageimage

I notice the fact that the UI is simple and in a sense “metro –paint-by-numbers” which despite their basic composition is actually quite well done.

image

I notice the User Interface is never just one composition that the UI appears to react to the context of usage for the person and not the other way around. Each User Interface has a role or approach that carries out a very simplistic approach to a problem but done so in a way that feels a lot more organic.

In short, I notice context over and over.

I then think back to a User Interface design I saw years ago at Adobe MAX. It’s one of my favorites, in this UI Adobe were showing off what they think could be the future of entertainment UI, in that they simply have a search box on screen up top. The default user interface is somewhat blank providing a passive “forcing function” on the end user to provide some clues as to what they want.

The user types the word “spid” as their intent is Spiderman. The User Interface reacts to this word and its entire screen changes to the theme of Spiderman whilst spitting out movies, books, games etc – basically you are overwhelmed with context.

Crazy huh?

I look at Zune, I type the word “the Fray” and hit search, again, contextual relevance plays a role and the user interface is now reacting to my clues.

image

I look back now at the Microsoft Health videos and then back to the Windows 8 Screens. The videos are one in the same with Windows 8 in a lot of ways but the huge difference is one doesn’t have context it has apps.

The reality is, most of the Apps you have has semantic data behind (except games?) so in short why are we fishing around for “apps” or “hubs” when we should all be reimagineering the concept of how an operating system of tomorrow like Windows 8 accommodates a personal level of both taxonomy and contextual driven usage that also respects each of our own cognitive processing capabilities?

Now I know why I dislike Windows 8 User Interface, as the more I explore this thread the more I look past the design elements and “WoW” effects and the more I start coming to the realization that in short, this isn’t a work of innovation, it simply a case of taking existing broken models on the market today and declaring victory on them because it’s now either bigger or easier to approach from a NUI perspective.

There isn’t much reimagination going on here, it’s more reengineering instead. There is a lot of potential here for smarter, more innovative and relevant improvements on the way in which we interact with software of tomorrow.

I gave a talk similar to this at local Seattle Design User Group once. Here’s the slides but I still think it holds water today especially in a Windows 8 futures discussion.

Related Posts:

WP7 Developers! Developers! Devel…wtf is the designers?

I just noticed something about the overall Windows Phone 7 community outreach story. Well I’ve noticed a few things, but the main thing I noticed was the designer haven is non-existent. Looking at the Create.MSDN site which for me appears to be the front-door to “getting-started” with Windows Phone 7, there appears to be no upsell or solicitation in anyway for the “design” community to pay attention to Windows Phone 7.

Huge mistake firstly.

image

The reason this is not a bright start to the phone, is if you look at all the successful apps on the iPhone and even Android market-places, there actual apps clearly have someone with design muscle flexing their wares proactively. Inside the Windows Phone 7 ethos, it’s admittedly paint by numbers style design (Metro) but still there is potential vein of richness here should you but show some bread-crumbs.

The major selling point for Windows Phone 7 is metro, folks inside the WP7 marketing team can flog “apps” all they like, but in my opinion I’d declare the phone having apps as hygiene (i.e. Well? I expected you to have them so what? you want a high five?..what else you got?). Metro is the differentiator, despite my grievances with User Interface experience(s) I do recognize that pushing these bitter points aside, the phone needs to focus on this and this alone when it comes to the consumers?

Sitting down and having designed a UI for this phone for an upcoming (reveled later) I’m a little frustrated at the amount of Googling (Yes, I said Google, not Bing. Bing is an ass backwards Search engine imho) I’ve had to spend in finding vector icons, inspiration (design stealing) and lastly techniques / resources others have framed when it comes to handling design related issues.

For instance, I’m not a fan of accent colors inside the phone – in that I like certain amount of colors but Red, Green and Orange are imho off-limits. The reason being is most situations that call for “state” often rely on a stop-light palette. If you have your entire UI Green and you have “You’re now connected” green highlight somewhere, well..it gets lost in the accent theme.

On top of that the dark/light auto-inversing is a funny beast to tackle. I get that it inverses the color palette’s in a fairly smart way at the same time it catches you a little off guard when you sit down to design. As now you have to keep that in the forefront of your mind whilst designing and at the same time accommodating for foreground and accent color adjustments as they occur.

To a developer this is simply state flipping in and out but for an average designer that’s a lot of conscious palette planning / thinking going on there and not a lot of resources around hinting at that either (Try googling that now, tell me what you find!).

These are the typical scenarios you’re likely to face as a designer, the techniques that go beyond “Look mah, I used the default color palette and I managed to ship! gimme my $1million app store sales now mkay!” moments.  It goes deeper and you can’t rely on external blogging threads to carry this workload. As they also have a habit of becoming out dated mixed with spam sites re-gurgitating your blog feeds as their own in order to sucker punch you with Google ads.

My point is simple, the designers are clearly not part of the conversation here and whilst developers, developers  and developers is the normal mantra of Microsoft it’s also the major reason you’re failing at the products. If you want proof, go check out he MSDN metrics around Expression sales and uptake of Silverlight solutions that go beyond the default theme(s) created by either Microsoft or Telerik, ComponentOne, Infragistics etc.

Paint by numbers gets you the default positioning of your product and nothing is wrong with prescribed UI. That is until you scope out the iPhone AppStore reviews long enough to see that your application now needs to do something beyond Tip Calculators / FlashLights and Twitter feeds. If you come up short on Function then you better at least deliver on Form.

Microsoft’s AppStore is filled with overloaded function it now needs personality and it needs more design focused bloodlines to underpin the Metro differentiation. If Microsoft can’t factor this into the outbound marketing today, then at least make a start as this will also set Microsoft up for a stronger position for when Windows 8 arrives (given Metro seems to be full steam ahead).

Point and case. Try for giggles, re-create the Office UI inside Wp7 today without leaving Create.MSDN.com and using the default Icons out of the directory found buried inside Program Files (which somehow we’re supposed to inherently know)?

How about Brandon  (Marketing Director for Wp7) take the $1k ransom for Scott Adams (Dilbert) and put that towards the funding for hiring a designer minded person to run the wp7 community outbound initiatives. There’s a lot of people who could lift that burden and if anyone in Microsoft want some recommendations, ping me, I’ve got a list of candidates.

Related Posts:

Please welcome the XAML platform team to Windows!

image

I got word of a leaked email early yesterday that confirmed what I had been told in passing gossip – the XAML team being disbanded.

This morning I awoke to not just one email but five of them from my various sources all attached with mixed opinions on what it means. Here is my famous (internally in Microsoft, I would send these style of emails about Adobe and their competitive threats) "What Just Happened" response.

We’re pleased to announce the transition of the XAML
platform team from the Developer Division to the Windows team.  While the
team has been working side-by-side with the Windows team for the entire project,
this step brings them into our team formally. 

It is time to start moving the battleships into the attack formation. In that time to start the consolidation into the new ux platform we are about to remake again.

On the upside it means you have a consolidated outcome likely to hit our hard-drives in the next 2-3 years on the downside you have what I would call a technology freeze in effect. If the new iteration of WPF or Silverlight does not comply with the vNext vision, do not hold your breath for a new announcement anytime soon that does not involve Windows 8 future(s).

The team will continue their work on Windows 8 as planned
and will join our Developer Experience (DEVX) team. This transition allows us
to bring together our platform development team in a single-management
structure.

That doesn’t sound to bad, I mean on the surface its just a single management restructure. A day in the life of a Microsoftee where every fiscal year or often more than once you are given new managers because the strategy – scratch that – tactics have changed. That in itself is probably your biggest hint of all around the word commitment, this is not just a case of waiting for a restructure to occur once every 5 years – it happens often.

To clarify, do you keep swapping your generals around in war to the point where the troops effectively stop caring who they are reporting to? Probably not a smart idea but nonetheless.

The dev, test, and pm leaders who will be leading the
team reporting to AlesH, YvesN, and LindaAv are:

• Sujal Parikh, Development Manager 
• Eduardo Leal-Tostado, Test Manager 
• Joe Stegman, Group Program Manager

The leads and individuals joining our team are receiving
this mail and have received communication on next steps.

If most of you who have been involved in the Silverlight ethos are reading then the name, Joe Stegman will probably stand out the most. Joe’s background in the .NET space goes back a ways but in the end Joe’s really been one of the guys under the hierarchy crust of commitment pledges keeping things in the development side of things in check. Officiating his role further in this equation for me is a bit puzzling as it’s kind of the same thing different org tree?

These changes in leadership and organization are
effective today.  For the purposes of finishing out the fiscal year and
the performance review process the team will operate under the existing
management structure.

That is a swift maneuver. Nothing surprising though.

Now onto Soma’s email to the troops which kicked the previous email off (Notice how VP’s etc all pile on from one another with "what he said was.." like somehow being apart of the thread is being seen as a role of importance. Classic Microsoft Victory Email formula, just once I’d like them to send out just one email outlining the change. This is what I’m talking about when I say Microsoft Culture is retarded.

I digress.

MICROSOFT CONFIDENTIAL

Over the last couple of years, our Client and Mobile team
has done a fantastic job of building a number of XAML related technologies that
have been a huge value add to the Microsoft client platforms and an
instrumental part of delighting our developer customers.  The agility and
customer focus that the team has demonstrated over the years has been a
pleasure to watch.

Ooops. Btw this was supposed to be confidential. So do not tell anybody.

Over the last couple of years? From memory, I recall WPF being around for more than a couple of years? Never mind, I keep forgetting everyone internally has forgotten about WPF.

Soma is kind of saying, "thanks for the hard work troops, you managed to outpace most products in Microsoft with your constant brilliance around the word agility, which being said here comes the but to that placating statement.

Today, we are making some organization changes to bring
our platform technologies under a single management structure.  These
changes are centered around three focus areas:

• The team working on XAML technologies for Windows will
move to Windows.

• The team working on XAML technologies for Windows
Phone, Xbox and browser plugin will move to Windows Phone. 

• The Client and Mobile tools teams, including Windows
Phone tools and XAML tools, will stay in DevDiv.

These changes are all effective immediately.  From a
performance review perspective, we will do this year’s performance review under
the DevDiv organization model.

"Today marks a new day troops, for we storm a new beach" is kind of the response to that next piece.

Firstly you have parts of the XAML team(s) parked inside the Windows organization. First impressions on twitter are that "Way to go! Means XAML and Windows are finally going to get along and create awesome XAML experiences"

Have I not shown you the Annie video? Moreover, have I discussed the Orphan Syndrome? "My dad’s going to come for me, he’s rich you…you..you just wait and see"

To me that read as being a case of cherry picking parts of the team to socket into the windows division and their new coding charter will come next. If it involves XAML it will be based around what XAML vNext is likely to be – HTML5 meets Jupiter.

Same with the Phone team, it is what I would call "please standby for further orders" moments.

As for the tooling teams, well you got Cider and Expression Blend team is what that really comes back to. Given most of the Client employees have left, I am not sure what that means suffice to say I am not holding out for a new release for Sketchflow for starters and I am guessing that the Blend teams are not exactly getting high fives for poor sales and download rates to date. If I were in that team, I would be updating my LinkedIn account quickly.

I want to thank Kevin Gallo and the team for all the
great work that they have done over the years.  Moving forward, I’m very
excited to bring the client platform efforts closer to the platform
teams.  There is a lot of very exciting and critical work underway as part
of our next wave of platform releases and I am very eagerly looking forward to
seeing the team’s work in the hands of our developers and customers.

Remember when Mary Jo posted a while back on how Kevin Gallo would be taking over the reins of Scott Guthrie. That’s probably the quickest promotion and I’m not ready to say demotion but I’m not ready to say continuance either – that I’ve seen?

The positive part there is the "next wave of platform releases" that sounds a lot like a continuation of what we have in front of us. Make no mistake there will be a Silverlight 5 and a WPF vNext released next fiscal, its already got most of the code done and it would be foolish to not release those when they can – especially after MIX2011.

Releasing those two would also buy you time for the next 2 fiscals at most. As by doing this you create this calming effect around "see, we’re still working on it..honest" to placate the developer hordes.

That is up to you, you can buy into that sure, and it is hard to debunk given there is not much visibility behind what we are likely to see next – especially given this is tradition within the Microsoft roadmap(s).

For me personally, I’d like to corner Microsoft If I could into giving more concrete assurances that whatever the next wave of bets are that they are either backwards compliance or have parity around what we have today in terms of conceptual features today.

Features for me are not will I be able to still hit F5 without changing code. Features for me are the concepts that are on the table today, around how one manages the out of browser and in-browser functionality – everything from casual gaming through to enterprise ready features (printing, isolated storage, data binding etc).

Going forward.

I think what has happened in this email is the equivalent of me saying "I really like this car, now can we take the wheels and put them over there. In addition, can you take the steering wheel and dashboard and put it over there. Lastly, can you take the engine and well. Just leave it in place for second; I’ll get back to you later on where we can put that next"

It’s clear there is a consolidation happening that I think we can all agree on early. How will the consolidation impact the average .NET developer is likely to be dramatic enough to warrant some applications having to have code refactored down the track – you will not escape that sorry.

Does this mean .NET is dead? Who actually knows what .NET vNext will be so it is hard to simply say "yes" and it could very well be a reset of .NET to fix a lot of pent up frustration in the way it sticks together today.

What I am certain of is WPF is definitely officially done. The chance of WPF going beyond what it is today is slim. Some journalists etc. will gloss over this as its not news but let me be clear in saying at Microsoft we really had no clue just how deeply seeded this product became.

In Australia it’s used quite heavily and it’s something I personally noticed whenever I used to travel around the country meeting Microsoft customers (both as an Evangelist and Product Manager). I used to send emails internally stating "I think we underestimated is usage, as it definitely appears to have more devs using than Silverlight" which was later brushed aside as being "Not realistic".

I think post September the announcements that are to follow will give these warnings probably some second thoughts around what parking WPF in the retired bay is likely to mean for Microsoft when it comes to the words "trust" and "commitment"

The product and developer satisfaction surveys for the last few years haven’t been something you’d brag about internally which for me indicates a strong sense of "fatigue" within the ranks of our beloved .NET developer communities.

It’s now one thing to announce what the next version of .NET will be its entirely different thing to convince and sell these fatigue customers that this is defiantly the bet this time. Silverlight, WPF and WinForm are available today and millions are shipping software solutions using them.

Microsoft now has to figure out a way to convince the millions that the "Windows 8" wave of vNext will fix all of these problems and more – and – will not require a reduction in feature parity along with extra boost in tooling.

If I know, my Microsoft and I like to think I do, good luck J

Full email below:

From: Julie Larson-Green
Sent: Monday, June 20, 2011 9:35 AM
To: Grant George; Jon DeVaan; Julie Larson-Green; John
Cable; Yves Neyrand; Craig Fleischman; Bambo C. Sofola; Scott Herrboldt; Greg
Chapman; Julie Bennett; Jeff Johnson; Ales Holecek; Mohammed El-Gammal; Chuck
Chan; Michael Fortin; Eric Traut; Jensen Harris; Linda Averett; Alex Simons
(WINDOWS); Gabriel Aul; Dennis Flanagan; Iain McDonald; Samuel Moreau; Dean Hachamovitch;
Michael Angiulo; Antoine Leblond; Tami Reller; Chris Jones (WINDOWS LIVE);
Jonathan Wiedemann; Ulrike Irmler; Adrianna Burrows
Cc: XAML Team; Kevin Gallo; S. Somasegar; Terry Myerson;
Sharman Mailloux Sosa; Brad Fringer; Steven Sinofsky
Subject: Please welcome the XAML platform team to
Windows!

We're pleased to announce the transition of the XAML
platform team from the Developer Division to the Windows team.  While the
team has been working side-by-side with the Windows team for the entire project,
this step brings them into our team formally.  

The team will continue their work on Windows 8 as planned
and will join our Developer Experience (DEVX) team. This transition allows us
to bring together our platform development team in a single-management
structure. 
The dev, test, and pm leaders who will be leading the
team reporting to AlesH, YvesN, and LindaAv are:

• Sujal Parikh, Development Manager 
• Eduardo Leal-Tostado, Test Manager 
• Joe Stegman, Group Program Manager 
The leads and individuals joining our team are receiving
this mail and have received communication on next steps.
 
These changes in leadership and organization are
effective today.  For the purposes of finishing out the fiscal year and
the performance review process the team will operate under the existing
management structure.

There will be an informal Q&A session today to
welcome everyone and answer any questions that folks might have.
• XAML team welcome – 2:00-3:00 in building 37/1701

Please join me in welcoming these folks to our
organization!
Julie
 

 

From: S. Somasegar 
Sent: Monday, June 20, 2011 9:16 AM
To: Client and Mobile Team
Cc: Developer Division FTE; Steven Sinofsky; Julie
Larson-Green; Terry Myerson; David Treadwell
Subject: Bringing together client platform efforts

MICROSOFT CONFIDENTIAL

Over the last couple of years, our Client and Mobile team
has done a fantastic job of building a number of XAML related technologies that
have been a huge value add to the Microsoft client platforms and an
instrumental part of delighting our developer customers.  The agility and
customer focus that the team has demonstrated over the years has been a
pleasure to watch.  

Today, we are making some organization changes to bring
our platform technologies under a single management structure.  These
changes are centered around three focus areas:
• The team working on XAML technologies for Windows will
move to Windows.
• The team working on XAML technologies for Windows
Phone, Xbox and browser plugin will move to Windows Phone.  
• The Client and Mobile tools teams, including Windows
Phone tools and XAML tools, will stay in DevDiv. 

These changes are all effective immediately.  From a
performance review perspective, we will do this year’s performance review under
the DevDiv organization model.

I want to thank Kevin Gallo and the team for all the
great work that they have done over the years.  Moving forward, I'm very
excited to bring the client platform efforts closer to the platform
teams.  There is a lot of very exciting and critical work underway as part
of our next wave of platform releases and I am very eagerly looking forward to
seeing the team’s work in the hands of our developers and customers.  

The follow-up emails will provide more details on the
changes to those impacted.  Please join me in wishing Kevin and the team
all the very best as we move forward.  If you have any questions about
this change, please let your manager or me know.

-somasegar

Related Posts:

The mission to land a .NET developer on Jupiter.

image

Ask not what Microsoft can do for you but what you can do for Microsoft. That’s really the inspiring quote that President of the new colonization group – aka Windows  – needs to say to the unwashed masses of tomorrow.

Microsoft is taking on a mission that looks to go beyond the moon, they want to land on Jupiter and it will be done with Apollo. Still confused?

If you’ve not paid attention to all the codenames flying about the place you’d be forgiven to be confused as there’s a space theme happening and with these code names its quite interesting to see how the objectives for the next generation of Microsoft is likely to shape up.

Jupiter is rumored to be the reset button to Windows Presentation Foundation (WPF) and Silverlight. A reset is the latest suspicion as just yesterday I found out that the XAML ethos within Microsoft has been disbanded and set to various corners of the company.  Some went to Internet Explorer team, some went to Windows teams and others went to Google, Amazon and Facebook.

Why disband the teams? It is time for pencils down folks, let us stop piling on code for the existing stuff but now let us set our sights for the future, let’s be bold. Let us be daring. Why land on the moon when you can land on Jupiter floating on a cloud of Azure? (Ok, I lost myself in that metaphor as well).

Ok fine, I have gone through the seven stages of Silverlight/WPF grief and I am at acceptance I think.

The Mission.

In order to better prepare for the mission ahead, let us think about the various things we need to account for prior to launch (September).

Replace Crew Members.

image

Inside Microsoft there is a lot of toxic turmoil going due to internal re-orgs (which is fairly common) that fueled with how the Global Financial Crisis has affected employees etc. it’s no secret that Microsoft are losing some quite influential and dare I say, hard to replace staff to places like Google, Facebook, Amazon and so on. I personally know of three employees who have hated working for Microsoft for quite some time but have been stuck due to housing prices in Redmond etc not being ready enough for a resale – that is – until Google, Adobe, Facebook and soon Amazon have campuses of their own in Seattle.

Now the super geeks have alternative employment options. Microsoft is now on notice, treat me better or I will leave. The later choice has been winning in my opinion and the more the new found employees have sent me messages of "Omg, its way better over here than Microsoft" which has to be salt in some current employee’s wounds whom are likely staring down the barrel of uncertainty in the company given its end of year commitment scoring mixed with the demise of what we used to call the Silverlight/WPF & Blend ethos. What to do!.

Reaching Parity. 

image

A gentleman and fellow .NET scholar Jose has done the best he could in reverse engineering Direct UI (rumored to be the leaked incarnation of Jupiter). He has some insights that are both great and disappointing at the same time. The great part is it could very well be the next iteration of what has to come in the landscape of C# and XAML for tomorrow’s UX Pioneers.

The downside is its 3-5 or maybe more steps backwards in the current feature parity you have all eagerly waited for over the past 4 years. There are some fundamentals in the room whilst there are concerns around some of the other features that may or may not make the cut for version one.

If I know Microsoft and I like to think I do, this is likely to be yet another one of those traditional "version 1" moments whereby the team(s) behind the product eventually stumble across the finish line, exhausted but barely breathing enough to shout "Give me feedback on what you want in version 2, it will be better I promise" followed by some metaphor about how it’s a marathon and not sprint to the finish line (We got great mileage out of that with Silverlight and I dare say you could get a few more products out of it yet).

The tooling is likely to be not in place during this version 1 lifecycle as my sources tell me that the Blend Team aren’t cranking out the vNext improved world of Microsoft. I know Steve Sinofsky has had a few ambitions about what the Tooling should look like in the perfect world of Windows vNext frontier and I am guessing he did not play well with others in the Devdiv team(s) to share such ambitions.

That being said, either there is a skunk works tooling team hidden in some random building in Microsoft that others do not know about or the tooling story behind this next frontier is unlikely to be in place before Sept or for whenever this next version of our beloved Silverlight/WPF ethos occurs.
What I mean to say is welcome all to Microsoft 2005. Hold onto your Winforms or ASP.NET MVC  for a little bit longer and for those of you in Silverlight/WPF investment land(s) – try to not focus on the future but the now (best to keep your code base as lean as possible and not to tightly wound in client-side logic).

Put vital organs into Escrow.

image

Microsoft are quick to throw technology at a problem first and then ponder as to why the problem existed. I’ve often personally seen strategies – wait, that’s not correct, strategy requires forward thinking – tactical decisions (better) made around trying to grow developer audiences.

The assumption are

"ok, we’re not making our tech palatable enough, lets steal stuff from Ruby On Rails, Apple or Oracle to make it better".

The absolute harsh reality is often a lot of non-Microsoft customer(s) etc. just don’t like Microsoft (Ever liked a girl/guy and they don’t like you back? You try changing your clothes, hair, car etc. and still nothing. Welcome to the Microsoft Developer outreach program, you will fit right in).

The other side of this coin I guess is those of you who adore Microsoft for what they are. You spend thousands of your own dollars to go to various events to listen to Microsoft confuse the absolute crap out of you. The problem is lately, they seem to be a company you just cannot bet on for the future.

Grandiose plans to land on Jupiter may be bold, daring and exciting but is it dependable? Can this company commit to a master plan and is this a plan or just a tactical political brain dump mixed with a lot of Microsoft experimentation.

Is it a case now of not waiting for the next Service Pack but now waiting to see if a product can get past version 3 and 5 before you really consider it as a viable option of the future?

In order to prepare for this next mission, someone has to donate some good will to the fans of Microsoft technology. That means you cannot stick to the ye olde "need to know information" mentality. You got to bring your roadmap(s) for the future and you got to show us that you’re telling the truth that you want to aim for Jupiter and not some closer planet or worse – the unknown void beyond Jupiter.

Commit and stop being assclowns.

image

Commit to us so that we may commit to you. No more lies, No more "I’ve got a secret, can you guess!" and lastly no more internal political child play spilling over and into the blogosphere. It’s time to be a big boy company and use big boy strategies with big boy plans mixed with a lot of big girl personality (somehow that did the ladies no favors).

If we are to take on this mission, it’s time for a smarter playbook around transparency and if Steve Sinofsky is willing to bring the "come to Jesus" moment for the company around consolidating the entire product lines into a consistent continuous experience across all devices with a developer/designer experience to boot. Great, I personally will print out a t-shirt that says "I’m back in team Steve" (heh my old team inside Microsoft was called Team Steve…Steve the manager though was a arrogant jerk, different story, different time).

Right now its just a case of me holding up a really sick puppy that others have kicked and telling you all about the neglect its owners have given it. (If I quote that metaphor I was given last night by a friend).

Related Posts:

The 6 things that annoy me when you design my software.

1. Stop making bottleneck software

image

Technically you could write most software today as one big mega-class with loads of switch / if&else statements. If you did that, not only would every other developer you come across immediately punch you in the nose but it would also become hard to maintain over time.

We agree that would be stupid right. I mean one large file for all code! – yet why do I always see software designed in such a way that it becomes the Swiss army knife of all tasks associated to the user, in that it becomes feature-heavy based around feeble arguments of "but the user wanted.."

The user is 80% of the time a jackass.

You are armed with a plethora of programming models today, stop crowding (thereby creating UX bottlenecks) the user interface for every single role known to man. Figure out the "persona’s" attached to your software and if need be, make smaller contextually relevant versions of the software per person (whether it be modular or separate specific installations).

2. Third Party Controls do not negate the need for a designer.

image

When I first left Microsoft and joined the working class (mwahah), I was often thrown into the deepened of projects that needed some UX makeovers. Given I have both a programming and design background it seemed a natural fit so sure, go with the flow I say. I’d walk into a typical gig and sure enough I’d see 3rd party controls lurking about (ie Telerik, Component One etc).

Nothing against these brands but if you are dealing with WPF or Silverlight then let me give you a heads up on why this is a bad idea. Firstly, the 3rd party controls are just a quick dirty fix to get around bad UI design, I get it, budgets are non-existent so you do the best you can. Secondly, these controls are made for multiple developers around the world, so there are many keys to turn on and off for them to snap together – which means your controls are not on a diet. Thirdly, you need to walk a mile in the shoes of say a C++ programmer or some language that used to have to play a game of memory Tetris to really grasp the concept of the second point.

Diet is the keyword. If you are dealing in Silverlight space the leaner and smaller footprint your code has, the snappier things are going to get. I am not talking about pure CPU no-holds bar processing time; I am talking about rendering pipeline time. I am yet to see an example of 3rd party controls improving performance and not subtracting them.

Stop outsourcing design for third party controls and I am looking at you graph boy/girl.

3. Every screen has a soul.

image

In UI Principles space there’s this little concept call false affordance. It means something that looks like it was supposed to do xyz but does nothing (i.e. Push the button and all negative energy will disappear scams).

If you have some software that has a hierarchy of navigational elements, you click on the first node, and it does nothing but expand to the second node but at the same time shows a view with some "weak" summary (i.e. description etc.). Stop, you are doing it wrong.

Every click has a purpose of existence. If you have a dashboard, what is its purpose? Think about its relevance in the grand scheme of things. Should it be fresh content daily/weekly/monthly? Is a holding pattern screen necessary?  The screen, which is like the UX principles are buffering between two major waypoints – you know the one screen in the app that really has no purpose other than to get you from A to C but somehow you felt the need to keep B in place.

If you have a screen that is filled with say two Input controls and that is it. That is a freakin dialog box, it is not a screen. Stop being lazy and think about the problem not how easy it is for you to just whack up an app. It’s not about you, it is about them *points to the end user*.

4. You are not a magician so quit giving me the constant "surprise" moments.

image

Ever used an application that when you click on something random inside a screen suddenly a piece of User Interface randomly appears somewhere in the screen? Maybe hidden inside a secondary tree node somewhere?

This is not a magic show and you are not a magician. Progressive Disclosure is great when done in a way that leads the user on a journey, no more "I’ve just modified the screen, if you guess what I just did you get a fluffy kitten" moments.

5. Humans are smarter than you think

image

I have covered this quite a lot but let me re-iterate in the theme of this post. Over 90% of the world’s computer population right now has some piece of overly complicated unnecessary piece of crap software installed on their hard drive that they have somehow managed to figure out partially its inner workings.

The benchmark for success right now in this space is so low you could trip over it and still succeed.  My point is the end users are actually smarter than you give them credit for. If you are in a team and someone says, "Yeah our users aren’t smart enough to.." challenge that jackass upfront. As did he conduct a survey where One in Five housewives came back being dumber than he anticipated?

If an average worker-bee can sit through SAP ERP or any piece of software that Oracle/Microsoft throws at them, they can sit through your software as well.

The trick is to make it enjoyable for them, to be the software that does not feel like the others – the stand out. Rather than holding them hostage to complexity because of your own arrogance, try to think less about the complexity levels and more the enjoyment levels. Software should be enjoyable as we work WITH software – we do not USE it.

6. I did not buy a cat so it could be my master.

image

My kids wanted a kitten and so me being the "fun" dad I bought one. Today that cat rules the house most of the time because we react to it, not the other way around.

In software, this often is similar to what happens. We buy software thinking it will save us time and money as it will improve the master/slave relationship to our daily lives. Instead, we become more enslaved in its processes.

An example. Today I went to my bank ANZ (which I am ditching – F*K you ANZ). I said, "I’d like a copy of my home mortgage statement to give to your competitor so I can leave your dumbasses – i.e. YOU ARE FIRED"

I watched the teller pound away at a keyboard for like 5mins before she arrived at a point of some kind that then needed her co-worker to give her instructions on generating a printable report.

I am sitting there thinking the following things:

  • Why are you typing so much?
  • Why can’t I do this online myself? You give me access to every other account functionality yet why not this?
  • Why am I giving you everything but a DNA sample to authenticate I am who I say I am still to this day?

My point here is that aside from a crappy online service from ANZ Bank, the teller herself should have a simple input control that has a button next to it. Inside that input control, she types, "Print <AccountNumberXYZ> Mortgage Statement as of Today"

The input box then does the following:

  • Looks up my account number and verifies it still is active.
  • Takes the verb Print to mean "fetch" and the words Mortgage Statement as being what should be fetched whilst the word "Today" meaning as in Now(). Then spit out a piece of paper with that information. In otherwords “PrintMortgageStatementWorkflow(custId, date);”

I think I make my point(s) in saying why are we jumping through hurdles to make software do the work when it feels like we are a separate background thread in the software’s world.

Related Posts:

Confirmation Bias explained in terms of Silverlight & HTML5.

Today I want to talk about HTML5 & Silverlight specifically around the existence of what I would class as "Confirmation Bias". First, lets look at the Wikipedia definition of this term.

Confirmation bias (also called confirmatory bias or my side bias) is a tendency for people to favor information that confirms their preconceptions or hypotheses regardless of whether the information is true.[Note 1][1] As a result, people gather evidence and recall information from memory selectively, and interpret it in a biased way. The biases appear in particular for emotionally significant issues and for established beliefs. For example, in reading about gun control, people usually prefer sources that affirm their existing attitudes. They also tend to interpret ambiguous evidence as supporting their existing position. Biased search, interpretation and/or recall have been invoked to explain attitude polarization (when a disagreement becomes more extreme even though the different parties are exposed to the same evidence), belief perseverance (when beliefs persist after the evidence for them is shown to be false), the irrational primacy effect (a stronger weighting for data encountered early in an arbitrary series) and illusory correlation (in which people falsely perceive an association between two events or situations).

The Setup.

image

One does not have to travel far in the digital news space before one see is a case of this tendency being played out. The way it plays out is companies like Microsoft, Adobe, Google and Apple are all touting the HTML5 existence as being the right path forward.  Immediately after this path has been presented a flurry of activity within the comment streams begin to occur with rants like "HTML is compatible, boo hiss at plugins" etc.  These rants are at the end of the day somewhat truthful as arguments put forward that HTML is probably the most purist form of technology on earth is somewhat in a sense correct – well to be specific, its really the only technology that has had absolute universal agreement on adoption.

At present, these rants typically do not zero in on what the heart of the HTML5 bias parasite is really attaching to. It is that the perception if more people adopt a given technology you in turn gain a wider pool of acceptance and stronger monetization models flow onwards. That is to say that if HTML5 were to be 100% compatible on all browsers / desktops tomorrow therefore we all stand a greater chance of success over the current routes which are a mix of device technology bets through to a skirmish in and around desktop development strategies.
The Reality.

The truth of the matter is that HTML5 is a placebo that the industry is being suckered into embracing – hear me out before you froth at the mouth of disbelief. A placebo such as this is given to us all because we are living under the assumption that friction for adoption of a technology is too hard and secondly that with HTML5 the browsers will all agree on a universal standard thus we are back to a baseline of user experience one can all bask & share in. Let me clarify these two points in more detail and how ill-conceived they are.

The Adoption.

image

Adoption firstly is a developer discussion not a consumer discussion as take Silverlight for example. Silverlight was a new technology, we had zero adoption at the start and it was just a name of a concept when it was first announced to the world. We knew straight away we had a long marathon ahead of us and we would often say things like "it’s not a sprint, it’s a marathon" as we weathered, the adoption storm(s) (mainly Flash vs. Silverlight). Immediately we knew that the core focus of our strategies around seeding this technology was developers, developers, developers – we had to convince every developer around the world that Silverlight was everywhere, no friction attached! In short, we needed to stimulate the illusion of what makes confirmation bias so powerful.

Many would now argue that consumers are not interested in installing plugins, it is not just developers it’s the "soccer mums" at home who are not technology savvy. Roughly over 100million installs of Silverlight occurred during the Beijing Olympics in 2008 and consumers of the site(s) would spend around on average 20mins+ viewing time (broke records as all other sites at the time had around 3-5mins) so before we use the "soccer mum" argument, understand, technology today isn’t as scary as the 1990′s once was. That is to say people online will install a virus if you convince them that the content they are about to get post install is worth a click of a mouse button as again, developers, developers, developers oh and marketers.  We proved developers are the ones that need convincing, not what they use as an excuse for hesitation in around adoption – confirmation bias.

The Browsers.

image

Browsers secondly are and will continue to race to the HTML5 parity finish line. At MIX 2011 you saw Dean & Steve give the "oh isn’t that interesting" competitive shallow comparison between Google Chrome and Internet Explorer 9, specifically on how Internet Explorer 9 is "better" now (developers, developers, developers).  The race has only just begun and you are already seeing the competitive knife fights begin, like two old enemies taking short, fast but deep cuts at one another (Google may respond or may not). Parity is the false promise now and it has got everyone transfixed on the innocence of it all – technology placebo!

Taking a step back from the discussion, one should consider the next steps post parity, that is to say if tomorrow all browsers were absolutely in line with one another around HTML5 then well, what’s the differentiator left? Speed? Performance? Extensions…  The browsers have to grow in terms of market share and Internet Explorer team aren’t ones to sit idle and do their jobs for the greater good of the people! The Google Chrome teams are made up of a lot of ex-Internet Explorer team so that inherited competitive DNA will definitely come out as well. The fork will occur, and I predict Windows 8 will be such fork.

The browsers will eventually make extras adaptable to the developer’s needs, things like Google Gears or Internet Explorer’s "Slices" are all essentially plugins that dip ones toes in the water to guage reaction from the developers, developers, developers.  Imagine if Internet Explorer 10 was on 80% of the world’s Windows based machines and you had HTML parity but still stuck in the ye olde JavaScript/CSS wasteland(s). The Internet Explorer team come out with a strategy in around allowing you to write Desktop & Device experiences that are universal but the tax is you got to use a special additive set of API’s to get it working (wrapped in some IF/ELSE statements for detection of Windows 8 devices/desktops). Do you pay that tax? And aren’t we not back to where we are today? A fork in experiences.

HTML5 vs Silverlight isn’t about which of the two is better, its which one can easily sell to developers, developers, developers. If this confirmation bias continues, what you will see is Silverlight shifted from being a plugin and more as being a additive solution to the HTML5 experience promise but with less emphasis on its existence and more on Internet Explorer 9 & Windows 8.

The Burden of Proof.

image

Want proof? Silverlight has always given up its annual numbers of installation every year it’s been at MIX – I was told today by an internal source that numbers have dropped!. It’s something inside the Silverlight team we used to agonize over as to how we can hide the stalled uptake but inflate it just a little to convince people that it’s winning! – This year, no numbers were announced.  We did see many Windows Phone 7 and Internet Explorer discussions though but hey, it is a web conference right? (Is that why no Windows Presentation Foundation discussions occurred this year? As opposed to years before?)

My point is simple.  As a developer you’re in the seat of power & influence, understand your role in this equation as once all become a little more collectively alert as to what’s going on the you in turn can shape what happens next. Corporations like Microsoft, Adobe, Google and Apple are more preoccupied with both Advertising Penetration stats. They would do whatever it takes, to get those numbers high, so play them do not let them play you.

News Articles worth reading:

Related Posts:

  • No Related Posts

WPF lip service at it again

image

I’ve been watching the WPF Disciples list regarding FIXWPF with some obvious keen interest. The thread has taken on an interesting level of discussion and guys like Pete Brown are doing the right thing, listening, responding and taking notes.

Jaime however has jumped on and given the – we’ve heard it all before – riot act around the UX Platform guidance. You know the one, Good, Great and Ultimate splits sprinkled with “it depends” and basically comes around to the pitch that Microsoft is probably best known for around commitment pledges.

This isn’t an attack on Jaime, I’ve worked with him before and I liked his work in the past, as all he’s doing is talking to party lines and it will be the same guidance you are given no matter who you talk to inside Microsoft.

That being said the bulk of it is lip service and i’ll explain why.

RE: HTML5 vs Silverlight vs WPF (Good, Great and Ultimate).

This guidance is probably the oldest response to keeping the three pillars apart. It hasn’t changed in over 3 years and is unlikely until you see some dramatic increase in footprint regarding Internet Explorer 9 + HTML5.

The idea is to provide developers a linked approach to how the three dovetail with one another and when you look at it from the right angle it almost looks plausible. The reality however is it is poor guidance for one and secondly it doesn’t address the question.

The question really being asked is “which should I bet on” not “which is the right technology for the right job” as quite frankly for 80% of solutions out there i’d confidently state that all three could achieve your needs for line of business applications. The three each have their own taxes  you will end up paying but welcome to software and that’s life.

Back to the question, which should you bet on and this is where the lip service falls short. As the question is also asking which is Microsoft likely to continue investing into – the fact that Jamie for example is no longer a full time WPF evangelist and is now in the Wp7 evangelism rhythms is an indication to that answer. No Microsoftie is going to come out and say “yeah, you better get off WPF unless your writing C++  bridges to .NET, as its going to get murky soon” as the last time a softie even hinted at that kind of raw honesty was Bob Muglia and he was a Senior Vice President – currently looking for a new job.

Choosing between the three really is coming down to your team mates, your needs and lastly your personal investment in learning / continuance in your career. They are really the three core principles involved in making the choice between the three and the usual good, great and ultimate speech has never really returned any hint on success – I dare Microsoft to provide evidence of success here.

If your team mates are all HTML developers with ASP.NET Web Forms skills, then the question they are all having is around which is the easiest and best route to success next. WPF can provide you a core foundation for Silverlight/WPF development but it will test your patience and confidence levels greatly. There is a lot of information decay online around which version of the framework/API still work today vs when they did in the past and lastly WPF seems to have more questions than Silverlight go unanswered – according to StackOverflow.com.

Silverlight is still up for grabs although its clearly shifted its strategy from when I was on the team to be more of a Windows Phone 7 platform and less about the web more so as time continues to flow.

HTML5 is basically a bunch of new tags that are ready for browsers, but in the end you’re still hacking around in the weeds with JavaScript and CSS. To be fair, if you’re an ASP.NET WebForms team, then HTML5 would probably be the quick win – but – its not as much fun as Silverlight / WPF?

My point is, its confusing and the usual lip service really doesn’t bode well for Microsofties as they come off looking like they are a PR machines for one and secondly any trust within WPF vs Silverlight discussion has been eroded due to constant shifts in vision – clearly it highlights that this has been and will continue to be highly tactical reactive product management and less strategic.

RE: Customers want us to invest more into Silverlight.

Jaime goes on to say:

First of all,  a lot of our customers are telling us to invest more into Silverlight.  Let’s say (again made up) that demand is  4-to 1. How do we justify a revamp of the graphics architecture in WPF.  This is not trivial work; the expertise in this space is limited, we can’t clone our folks to 5x to meet everyone’s needs.  

Unless Microsoft’s feedback channels have gone through a massive upgrade / radical change in the last 6 months, I call bullshit on that one. The customers are likely to be folks like NetFlix or Vertigo? (we have no real tangible customer feedback pipelines in Microsoft. It was a nightmare to sift through the chaos to get such answers)  and secondly the reality of that comment is what I call “Oh dear, he didn’t say that” moment. If i was a journalist i would use that firstly as fodder for “See Microsoft just stated they have no interest investing into WPF” – not  only would it be fair game, it’s obviously correct so it’s also not healthy right now.

It’s important to also add that if you starve a product of its marketing budget, then your overall awareness for the product is going to drop dramatically. It’s also fair to state that if the bulk of your attention across the board within the company is on Windows Phone 7 and Silverlight, then its even more likely the customer focus is skewed towards what you’ve been waiving and shaking your hands at the most. To use a metaphor “It’s like giving a child candy and then asking if they should give you more vegetables?”

My only real response to that question is who’s going to walk up to AutoDesk and tell them “Well, we could fix performance issues in 3DS MAX 2010 with you, but sorry, Silverlight is our preferred bet… best you figure out an alternative route filled with C++ and roll your own rendering pipeline".

Jaime goes on to address the likely cost of WPF

Let’s assume we did take on the work.  My guess (again, I am not engineering) is that it would take two years to implement and thorougly test a release.  At the stage that WPF is at, a rearchitecture or huge changes on the graphics stack would be 80% about testing and 20% about the dev work.    It is not a trivial amount of work.   Would we get the performance you want across myriad of devices? We don’t know. WPF bet on hardware, and there is new devices out  there that are trading hardware for battery, weight, or simply for cost.  it would suck to do that much work, make you wait a long time, and then not get there. Let’s get real on the asks; you say “improve perf” but you are asking us to do a “significant re-write”; these two asks are different. 

He has a point, it would be a significant impact to the resources allocated to WPF to get it back to the core promise that was made in 2007 – trust us right? things keep changing? we don’t have a plan just right now, but as things happen we hopefully will!.

It’s a good thing that there are 200+ engineers right now ready to pounce on this problem so it should be a large amount of work, but with that many engineering cycles nothings not attackable according to Scott Guthrie, CVP of Developer Division.

That was a cheap shot Barnes! and it was. My response to Jaime’s remarks there would be “This affects me how?” as in the end you, Microsoft asked me to invest in you years ago. I did, and now you’re telling me its too hard and costly for you to invest back into me? how is that fair and again why am I trusting you over and over when you keep changing the rules? Is this not an abusive relationship now?

RE: We speak to customers.

Comments like this for me a red flags -

3)      You are asking us to listen to our customers.   We agree there and that is exactly what we are doing. Please keep in mind, you are not the only customer – even if you are my favorite one :) -.

image The reason they are red flags as the response at the end of the day says “trust us, we have this covered” as nowhere does Microsoft really ever decompress what customers they have spoken to and any substantial numbers to support it. For all you know, NetFlix and Nokia are the two customers they spoke to and NetFlix executive being on the board of Microsoft whilst Nokia’s new CEO was one of the ex-executives at Microsoft – well you can see how easily you could tear the argument apart if you set about doing so.

The point is, there’s no response you can give as the actual comment is supposed to make you feel isolated and that what you’re saying really is most likely a vocal minority.

Here’s the real deal guys and pay attention to this one as it will bake your noodles. Inside Microsoft there is no one team that handles customer feedback. Multiple teams do it and they approach it from a variety of angles. In the entire time i was a Product Manager and Evangelist within the WPF/Silverlight teams I never once saw or even heard of a central database of customer feedback. The closest we had was an annual survey / report that we collected which gave a health check of the entire Microsoft brand & its products. It was quite shallow in gauging what customers wanted and it’s main purpose was to be used as a large measuring stick for all roles almost in Microsoft to gauge success/failure was per year.

The only way you would get data from customers was if you invited them to Redmond (which is effectively the same as a band inviting a fan over for dinner and asking them what they could do better) or you outsource your needs to a company like Adaptive Path, Forester, Gartner etc to come up with a survey / research around the topic at hand (Don’t be shocked folks, but Gartner Research can be bought for the right price).

Having a listening post inside Microsoft around what customers want or need is chaotic at best and it depends on who’s listening and what the initial agenda is – more so how it maps across. It has nothing to do with constructive feedback or channels of delivery as the higher the decision making goes the further the customer feedback gets from these decision makers.

RE: Let’s compromise?

Jaime does go on to discuss the compromise:

he WPF has looked at the trade-offs, and risk many times.  We are also looking at what customers need. Jer, to you it is all about graphics.  To many others, it is about data.  So, how do we serve all customers??

The strategy is exactly what you have seen/heard:

1) WPF 4.5 is going to have some significant data binding performance improvements.  

2) We are not redoing the graphics framework, but we are doing a lot of work to let you interoperate with lower level graphics so that if you need more graphics perf you can get it, and still keep the RAD of the rest of the framework. 

I often see this style of response from Microsofties (hell, I used to give it). It’s one of those responses you just go “What the f… If you’re going to piss on my head from above at least have the courtesy of telling me its fresh water harvested from a pure spring – make an attempt to keep the illusion alive at the very least.” yes its colorful but the point is, please stop treating me like I’m an idiot as I’ve not given you any indication i think that of you have I?

Cheap shot again, sorry Jaime but we both know that’s a classic “let’s take this offline – abort abort” throw away pacification tactic. As what it really translates to:

“Look, we don’t have engineering cycles to really fix the core problem so what we are going to do is shift the focus in other areas in the hope you will just leave us alone long enough until we can regroup for a better story next year”

Cheap shots again.. but.. in my defense, I’m just thinking on both sides of this conversation. How would I react to the responses in WPF Disciples as a Product Manager / Evangelist and lastly how would i respond to the answers I just gave as a customer / adopter of Microsoft UX Platform.

Is this about Jaime or WPF though?

Now, normally remarks like the ones Jaime has given on a public mailing list are usually ones you give a free pass to with regards to most Microsoft staffers. As at times you find staff arm themselves in the riot gear and just bolt straight into the fray of civil geek unrest and try their best to calm peoples opinions from spiraling into a negative back to a positive.

Jaime, isn’t a young pup fresh out of Microsoft boot camp. He’s a seasoned Technical Evangelist at Corp, who over the years has had deep roots with the WPF team in terms of influence and awareness of their future(s). I’ve personally worked with Jaime a few times and he is very talented and smart person, so my point here is that what he’s just outlined was a slip between what he knows privately as to what’s going on vs what he shouldn’t disclose publically. Furthermore, he speaks for the WPF team and no matter how many times he can throw the prefix “personally, my thoughts are” to his remarks, if that’s what he’s thinking then its highly likely that’s the outcome you’re likely expecting or going to expect.

This isn’t about Jaime though, and I cannot stress enough that I have enormous respect for him professionally and personally. It’s about Microsoft and WPF, and this is simply a highly visible case of internal thinking spilling over into a mailing list. I cannot stress this enough, if this reads as me kicking the crap out of Jaime’s remarks on a thread then please can i simply say it’s not personal its the role Jaime is acting out that is up for grabs. You represent Microsoft, you speak as if Bill Gates himself sat in a room full of journalists and outlined his thoughts, there is no “but he’s a nice guy” moments.

image

This is why i have created FIXWPF.org and will work night / day to expose this kind of lip service but instead of opinionated pieces or argumentative out of context text grabs, i instead will hope to back it in a more factual manner with real-world data, so situations like this aren’t a case of constant streams of :-

“trust us, we have it covered”.

No you don’t have it covered, as it costs to much remember?

Related Posts:

Going full Metro.

I uploaded one single Metro inspired design that I once did for Microsoft India/Asia and the next thing I know I’m being asked to do more for other clients. I shouldn’t complain, money is money and I’m the type of guy who will unzip if the price is right – there’s a lasting image.

image

It seems that when you show someone large monochrome simple shaped designs, folks often gravitate towards them over some of my other usual gradient filled drop shadow filled designs. At first, I am shocked if not appalled at how they could dismiss one design which takes me much longer for a design that essentially looks like a colored in Wireframe mockup.

Metro simply put feels like I am shoplifting design. It’s not a lot of work and the main focus I have is controlling myself from adding too many elements to the screen or keeping the typography unbalanced. Color selection is also important as you have to keep that tightly controlled otherwise it ends up being a rainbow pixel barfing.

Metro is Developer art friendly.

One such client I have at the moment has expressed an interest in getting me to come in – as per usual – at the tail end of a sprint season of coding and well make it look “pretty”. They have also asked if I could weaponise the approach so that other teams within the company could leverage the same work within their projects.

image

What to do.. I need to make my design(s) for WPF/Silverlight engaging, useable and lastly repeatable. Metro like a super hero from the 1950’s, makes its way to the top of the conscious thought pile. Turns out those crazy beige loving engineering culture filled geeks in Redmond may actually be onto something here. Metro’s secret is that it creates a way in which designers and developers can finally reach a compromise on design.

Using large blocky shapes and minimalist approach to screen while peppering large amounts of typography whilst also not saying the words “Wireframes colored in” – boom, you have a design revolution within the .NET community its name – METRO.

Metro isn’t all monochrome rainbows and puppies…

There is a catch though with Metro, one that as a designer is starting to ride my last nerve. They all look the freaking same. I can’t help it, I get into a pattern and before I know it I’m knocking out a mutated design that I did 5x metro designs ago. I feel like I am cheating now, it feels bad that I am in what I call a design rutt and It’s hard to break out of given most inspirational sites like TheFWA.com have no metro goodness.

image

There are only so many times I can look at the Microsoft Health / Futures videos before I also end up copying their designs without realizing it. I simply crave others like me who are injecting large enough doses of Metro to stop a gradient filled elephant in its tracks. I need to get off this crack or I’ll end up living in a typecast world filled with basic shapes and colors.

Metro’s concept isn’t isolated to Microsoft.

I am also starting to see the world in glyphs, typography and bold colors. I pass a highway sign and I go “ooh, that color could be used in a design of mi…stop it!…stop..”. I pass elevator filled corridors and I can’t but help notice Helvetica is the weapon of choice most of the time in commercial metro filled buildings. I’m going full metro!

Metro is the future of glass.

This morning, watching my usual twitter feeds I come across a re-tweet from one of my design demi-god like heroes – Mark Coleran. In this link filled with the future(s) nectar I so willingly crave, is a video projecting what the world would be like if we had more glass and multi-touch screens. At first I am absorbing this eye candy like a fantasy user interface addict that I am – only, boom..there it is, metro.

I’m Scott Barnes, and I am now addicted to metro. If you or a family member are suffering from Metro affixation, please contact me together we can find a way out of this disease / addiction.

If you want to see more of my designs, you can do so here:

Related Posts: