Some Thoughts About My Week at Build and Windows 8
![]()
(UPDATE: I added a more careful version of how I feel about the future of Silverlight to the bottom of that section.)
I spent last week at BUILD (all caps?). What a good week for Microsoft! Now that I’ve had a day or two to consider the big announcements and shake off the reality distortion field of Steve Ballmer (err, wait… wrong Steve) , I thought I’d share some thoughts and impressions. Forgive me if these are a little disjointed. It’s been a lot of information to synthesize, but I wanted to share early.
Overall feeling: sincerity
First a note about the mood last week: there was a lot of excitement. For the most part, the conversation shifted from concerns over an opportunity lost (bemoaning the fate of Silverlight) to one of opportunity gained (450 million potential metro app customers). The “XAML is not dead” message became credible and in spite of some concerns around Silverlight proper and it’s place on the web, it’s clear that .NET developers still have a big seat at the new table, even if it’s only kind -of-sort-of .NET.
That said, if the excitement is a little palpable, it’s also a little different. It feels buttoned up and restrained. I’ve heard many attendees comment on the sincerity of what they heard. That might sound like a strange way to characterize a keynote or conference, but this is a crowd that’s recently grown a little skeptical and sincere may have been precisely the sentiment du jour. In that regard, this conference was perfect. The “ra ra” antics of Ballmer PDCs were displaced by a much more controlled, prescriptive and even autocratic message: do this and these will be the results and, by the way, we can sell 400 million copies of Windows 8 with our eyes closed.
The numbers are magic
Because they don’t lie. We all know, of course, that they do…but we also know that Microsoft (and it’s umpteen thousand partners) really can sell 400 million copies of Windows 8 without trying too hard and that realization, more than anything else, might as well be alchemy for the developers I talked to. While everyone spent the last 12 months wondering if they managed to miss opportunities with iOS (and then again with Android), we just woke up to the news that the Microsoft ecosystem is, indeed, gigantic just like we thought (but managed to forget).
Can Microsoft deliver on that promise? I think so. I won’t pretend to know how that really works, but the PC market will grow 4.6% this year (a bad year) and then spike next. In my simplified view of the world that means Best Buy, Walmart, Dell and Costco need something to sell and those will be Windows 8 PCs. So, I think we can take it as a given that Microsoft will move 100+ million copies of Windows 8 in the first year and that’s probably a conservative number.
Metro-style apps and Windows’ split-personality
I think the only question worth asking is whether anyone will care about those new apps we all want to build. The new shell is pretty fantastic. And Microsoft is clearly committed to its adoption. Windows has turned over their single most valuable asset to the new shell: the start button. That’s the kind of commitment we’ll see from Microsoft and there’s no doubt that the store will be a front and center part of that. Every Windows 8 user will spend a little time in the new store… Only question is whether and how well it will stick.
To that end, I hope we don’t have the whole story yet. While the new shell is on track to be a really great slate experience, it’s a little lack-luster as a with a mouse. I’d hope to see at least three big investments from Microsoft:
- First, desktop Windows needs some cleanup. Aero feels antiquated and glass feels like a parlor trick. We need the rest of Windows to be just as “authentically digital” as the new shell. Until this gets fixed, the experiences will feel bifurcated and that diminishes the value of the desktop which, frankly, is the still the value of Windows. Instead of driving people to use the new shell (a reasonable goal), my hunch is that sort of schizophrenia will drive people to ignore it (or use a mac).
- Second, mouse interaction in the new shell needs to get much, much better. The mouse feels like a second-class citizen and in spite of what Jensen says, I don’t expect (or want) to swipe my monitor every time I want to launch Photoshop. If you’re inclined to tell me to get over it, stop. I’m still modal and I use a mouse and keyboard at my desk because they are precise and efficient and (relatively) ergonomic. If I become slower or have back problems from Windows 8, it failed.
- Metro is a little cold. As a design language, the window for customization is still little narrow. That makes me worry that it’s going to get tired quickly. I’d love to see Microsoft push the boundaries a little themselves—and hopefully, in doing so, provide us with some examples of a friendlier and more personable metro. We need to get their for this UI to have staying power.
The most innovative thing I saw last week
I don’t really like the word innovation because it buries the real attribute that we should be after: vision. It’s easy to make something new. It’s hard to make the right new thing, to make the right bets.
Microsoft has been a little short on vision for a while, maybe ever since realizing the “pc on every desktop” battle cry of the 1990s. You might characterize the post-BUILD era of Microsoft as a “pc in every pocket” because surely that’s where this is all going. I think that’s a strong, bold vision and, hopefully, an accurate one. Maybe it’s a borrowed view of the world, but MS is making big bets on that future instead of shoring up against it and we saw a Microsoft this week that appears to be executing toward a single goal in a way that I haven’t seen since my first day there 10 years ago.
Joking at the conference, I said Steve is the new Steve. I’m not quite as serious about that as this guy, but I gained a new respect for his ability to focus an organization on a singular goal. More than that, his risky bets are paying off. It was his call to refocus Windows around HTML5—a decision he made at least two years ago, well before the writing was on the wall. He’s also responsible for big bets on cloud services, ARM and WinRT—all moves that seem obvious in hindsight but carried massive risk at the time of inception.
The other exciting things I saw last week
First, I love contracts: I know, I’m a UI guy and I should be gushing about metro. I have been and will… but contracts have the potential to tie the web together in a way that finally makes sense to non-technical users and that’s a big deal.
On the UI side, I think that docking is game changer for slates. Plus, it has the potential to make metro-style apps relevant to information workers and other folks who continue to spend most of their time in the desktop.
Along those lines, I liked the design attitude from Microsoft. We’ve moved beyond the “hero” UIs that got us excited in 2007 and replaced them with content-driven, prescriptive UIs that make sense for the way consume the world today. On the other hand, metro is easy to make good but hard to make amazing. There seem to be some good helpers for that, though. I’m excited about the “personality” animations library in WinJS.
Finally, Blend for HTML5 in Win8 is really incredible. You need watch Christian’s amazing talk to understand the depth of that tool. Poking around won’t reveal the extent of the possibilities there.
Yeah, Silverlight is pretty much dead. So what?
I think the Windows 8 platform story is really exciting. One nitpick about messaging: maybe I just don’t have the data, but I can’t figure out why C++ is getting so much airtime. XAML and C++ is a clever move, and good for a lot ISVs but I was surprised that it got the sort of love it did at BUILD. On the other hand, I was actually pleasantly surprised at the love that C# + XAML got. With all the FUD about the end of XAML, I was pleasantly surprised by a really great story (even if HTML5 is clearly the wearing the pants in that family).
And, yeah, Silverlight proper (the web browser plugin) will, as they say, likely be phased out over the next few years. I don’t understand why everyone is so upset about this? Your investment in XAML and C# and MVVM and Blend and that whole ecosystem transfers directly to metro and that’s big business—much bigger than Silverlight for the web ever was. If you want to build Silverlight apps for desktop (non-metro-style apps), stick with WPF. But think about it this way, Microsoft isn’t killing Silverlight, the web is. We really just don’t need plugins in browsers to create rich web experiences anymore. In the meantime, XAML and C# remain very important for every other UI situation where Microsoft has influence: metro, desktop and phone. That’s a pretty great story.
UPDATE: Here’s a no-hype version of how I feel about Silverlight. I can’t see how Silverlight makes Windows better and Microsoft is laser focused on Windows right now. Because of that, I would expect investment from Microsoft to taper off over the next several years. In that sense, “dead” was too strong. You’ll be able to download the runtime for a decade. So if you’re building projects in Silverlight, you’re still in great shape and, in most cases, I would stay the course. We (Pixel Lab) have at least two active Silverlight projects right now and no plans to jump ship on either. In both cases, Silverlight was and is a good decision. At the same time, now is a great time to ramp up your HTML5 and Javascript skills. I think there is a disconnect, a feeling that HTML5 isn’t “ready for primetime” and that simply isn’t true. Also, WPF got lost in the Silverlight shuffle. If I needed to build a Desktop app for Windows today, I wouldn’t hesitate at all to use WPF and let’s not forget that desktop is and will continue to be the reason that people buy Windows.
Is Microsoft on track? Are you just a fanboy?
Take these opinions for what they’re worth. I’m the first to admit that I’m an insider (though not really a fanboy—I mostly split my time between two macs) but two final thoughts: first, this is the most excited I’ve been about Microsoft in 5 years. The company vision seems cohesive and inclusive and long-term. It hasn’t felt that way in a long time. Second, yes, I’ll be building apps and I think you should too (unless you’re really talented—in that case, um, ignore this post and focus on Android please).
23 Comments
Carl Scarlett / SEP 20 2011
Nice write up.
Though I’m not a C++ developer, I think I understand the point they’re making; that the XAML controls are part of the Windows library, and that anyone can use them. I remember Microsoft using the same delvery technique when they added split buttons. If C++ can use them, everyone can.
While I haven’t seen a lot of the videos yet, the XAML message gives me some small relief. It looks like XAML and HTML5 are an each way bet for Microsoft…after all, who knows what sort of future movements will reinforce or eliminate the need for either technology?
Chris Curry / SEP 20 2011
The biggest issue for not supporting Silverlight is the complete disconnect between the “tablet” story and the “phone” story.
Both Android and iOS allow you to develop apps that target phone and tablet. However when it comes to Microsoft side you have Silverlight & XNA for the phone and some weird hybrid of C#/Xaml or Javascript./HTML for the tablet.
Does a developer for Windows Phone continue to invest in Silverlight and Windows Phone developement when Microsof doesn’t seem to be supporting the technology?
Microsoft used to have a clear vision for .Net and the development stack. What was client, server, & cross platform. Unfortunately that clear vision was suddenly made muddy a few months ago and the development community is suffering for it as a result.
Robby Ingebretsen / SEP 20 2011
@Carl. That’s a great point about C++. It resonates with me because C++ has always been a Windows thing where C# has been a .NET thing. In a weird way, those two camps have been at odds. Maybe devoting that kind of time to C++ is a way of saying we’re all under the same tent again.
@Chris. I’m not too worried about this. Give MS a version or two to catch up and I’m pretty sure we’ll have a consistent story across all screens. In the meantime, yeah I would definitely continue to invest in C# and XAML in both the WP7 and W8 flavors.
Jeremiah Morrill / SEP 20 2011
Well said Robbie. I think if anyone bothered to run any WPF or Silverlight applications on their tablet, they’d be cheering for the end of life of those two platforms. In a new GPU accelerated, Direct2D powered world, those technologies just don’t cut the mustard. A high dose of slow and clunky to contrast the fast and fluid.
The C++ push is very welcome. The way Herb has been explaining it, is managed developers have been getting a free lunch and the industry has become lazy expecting hardware advances to pick up for inefficiencies of software.
As our UI takes on more and more traits of a AAA off-the-shelf-video-game, we need to start taking more and more considerations with code. Performance of the code and power efficiency should be at the forefront of developers minds in a new era of mobile CPUs.
Microsoft has stated that they are bringing C++ tooling up to the same state as managed, releasing some new libraries only for C++ (eg C++ AMP). I’m just gonna ride that wave. Amazing how things have flipped since Build. Now MS advice seems “If you have legacy C# code, we still support the CLR. But if you are making something non-trivial, use C++”. It’s been said that MS took a 10 year detour down the managed road and the detour just ended.
-Jer
Oleg / SEP 20 2011
@Jeremiah
While I do agree with your choice between C# and C++, I still don’t understand why is the urge to push C# developers to use C++ and AMP? Valid alternative (repaying “lost decade” debt) – yes, but push? C’mon, 60% of us program not even in C# but in DevExpress! ;). And for good reason, by the way.
Oleg / SEP 20 2011
Steves – The Good, The Bad and …The New?:)
John / SEP 20 2011
“- in that case, um, ignore this post and focus on Android please.”
Kind of cryptic… Is it sort of Inside joke?
Ben / SEP 20 2011
I’d love to hear more on how you’ve concluded that Silverlight is dead based on the announcement of a new desktop environment and dev platform. I’m pretty sure there will still be needs for media and LOB that Silverlight are perfect for. I’m also fairly certain that while tablets are great, desktops are still necessary for the majority of enterprise functions and users. How does a new tile-based environment that can be coded in XAML mean that Silverlight is dead? WinRT and Metro are desktop, not a web technology. Sure, maybe we’ll have less Silverlight OOB, but there’s like 2 applications that actually leverage that functionality – it’s an outlier.
Also, if Silverlight is dead, does that mean Netflix is moving to Flash? ;)
Robby Ingebretsen / SEP 20 2011
@jeremiah I agree. It’s a new message with regards to CLR and C++, etc. This is a good thing… a sign that MS is more unified that we’ve seen in the past.
@John no inside joke there…the joke is that I want to keep the competition out of the store. Of course, I don’t really. Great windows apps are good for everyone.
@Ben “dead” is hyperbole. It’s not dead yet, but the momentum is slowing. That’s all.
Ben / SEP 20 2011
@Robby “Dead” and “momentum is slowing” are two very different things. And no offense, but insensitive comments like that from influential people such as yourself fan some pretty ugly fires (to the point where projects get canceled and people start believing the hyperbole). I’ll agree, momentum is slowing… but it’s a much more mature product than it used to be… look at what they introduced in SL2 and SL3, and look at what they’re putting into SL5. It’s polish at this point. To say it’s dead just because it’s mature is pretty irresponsible and sensationalist.
Robby Ingebretsen / SEP 21 2011
@Ben fair point. I still have one Silverlight project alive and I think it’s for a sensible reason. So, forgive the hyperbole. I’ll update the post with a no-hyper version of how I feel.
Fallon Massey / SEP 21 2011
You’re pretty much on target, but a massive injection of drugs must have fueled the comment that we don’t need plugins anymore.
This is like saying that Businesses create jobs, and we don’t need the government. Well news flash Government has created almost every job out there, look at your computer, gps, cell phone, the list is immense, but people forget because the time between research to products(and thus jobs) is somewhere between 10-30 years.
Which brings me to plugins. Where would HTML 5 be if plugins hadn’t shown the way? it was a desire to deliver what plugins created that drove the spec.
So now people like you want to stop the research and development of where we need to go next, simply because you lack the vision, and memory, of how we got here, and where we need to go next.
Too bad, because the elimination of plugins by Apple & Microsoft has little to do with why you believe they shouldn’t be there, but in the final analysis, you need to ask yourself this.
If plugins are so inferior, and the user can remove them, why in the world would you advocate the elimination of CHOICE?
Robby Ingebretsen / SEP 21 2011
@fallon I’m not really advocating the elimination of plugins, just acknowledging that you can get pretty far without them these days. I guess the “innovation happens in plugins” argument is a reasonable one, although I’m not sure why you’re pegging me as anit-R&D–I’m certainly not and I don’t see UX innovation ending if we don’t have browsers that support plugins. On the contrary, UX is on fire right now.
One other point: HTML5 canvas + WebGL give us incredible access to hardware accelerated and low-level drawing surfaces from Javascript. I’m not saying that those eliminate any need for plugins, but it gives us a pretty expansive runway before we need them.
Mike / SEP 21 2011
But you forgot o mention that JavaScript SUCKS big ole’…
A weather widget is one thing… Anything else is something entirely different =) (obviously). When Google just so “happens” to leak a memo stating JS is a pile of poo for complex applications right before the start of //build/ (lc?), no one pauses to reflect? “Hey, JS is a steaming pile of poo for complex apps… and all the LEADERS of the industry would love to make it DEAD. Why are we pushing this?”
No one with any authority or clout from MSFT has addressed this very in-your-face memo since //build/… why?
C++ and AS3 are the future for x-platform. There is no two ways about it at this point. Adobe was very pleased after watching //build/ as they just won the market that will not use modern C++.
Robby Ingebretsen / SEP 21 2011
@Mike. The Future of Javascript memo was definitely very interesting. If google manages to get MS and friends to adopt Dash (intriguing), metro apps could theoretically take the update as well. In the meantime, we still have XAML and C# for metro apps.
For the web, Javascript may hit scalability issues, etc. Not sure. My point is not whether Silverlight is a good solution for web apps but whether Microsoft will invest there. I don’t think Flash is in any bretter shape than Silverlight, plus isn’t ActionScript an ecmascript derivative?
Also, let’s not fail to see the forest for the trees. XAML is alive and well at MS. Yay!
Ben / SEP 21 2011
@Robby Thanks :) and I couldn’t agree more with your update and the rest of the article
Chris Curry / SEP 21 2011
@Robby Certainly the next Mix will give us a better idea of what’s ahead. However wuth the Silverlight and Development Division teams seemingly being dismantled no one has any high hopes.
Over the past few years interaction with Microsoft employees has been EPIC for the development community. The creation of CodePlex to support open source and community code, more blogs than I can count, Scott Guthrie was simply amazing at keeping in touch with and responding to the needs and concerns of the development community.
All of that provided an enourmous amount of confidence. Developers, architects, etc. could go to business stakeholders with confidence on the direction where Microsoft was headed and what technology the company needed to focus on.
Now all that momentum is GONE… I’m not sure what’s going on at DevDiv or what has changed since Ray Ozzie left, but there’s a clear and perceptable difference pervasive in the development communnity. That unshakable confidence that people once had in Microsoft technologies is gone. You don’t see much buzz in the development community over Metro tools, components, etc. as with previous Silverlight releases.
In some ways it’s good, because it’s allowed me to explore other technologies and open source code that I wouldn’t have otherwise explored. However all anyone can do at this point is find their client niche (Silverlight, Javascript/HTML5, C++, C#/WinRT, XNA, Java, etc) and stick with it.
Amy / SEP 21 2011
“Also, let’s not fail to see the forest for the trees. XAML is alive and well at MS. Yay!”
It’s only alive and well if you develop Metro apps for Win8.
If you do LOB apps, the current MS strategy looks like a bridge to nowhere: the new WinRT stuff won’t be in widespread in businesses until maybe 5-6 years from now but the currently available technology (WPF, Silverlight) that’s usable on what’s available right now (XP, Vista, 7) has been marked as legacy.
The only sensible strategy for LOB projects is to go Html+JS, because your typical customer doesn’t want to have their projects implemented in technology that looks like it’s on a fast track to planned obsolescence.
Which really is a sad state of affairs – I can’t remember the last time when MS’ strategy for my area of interest was so messed up.
Robby Ingebretsen / SEP 21 2011
@Amy don’t dismiss WPF. Visual Studio didn’t.
Olivier / SEP 24 2011
The real problem is that MS is killing its own technology (SL) to adopt something they can’t control (html).
Was it necessary to kill SL on the Web ? Just adding html/js to W8 should have been a good idea. But why, at the same time killing SL with the “no plugin” rule ?
Apple did it, but Apple is 6% of the market. Windows is more than 90%. So this is not Apple who killed SL but MS…
You can’t write large rich internet apps with html/js. SL was perfect for that. Why killing it ?
html/js will not be able to replace SL for RIA, for streaming web sites, for the vast majority of the web that is full of garbage and advertising, html is perfect, but not for RIA.
Another important point : html/js apps for W8 _are not_ Web apps ! MS has just created the first Html/js that is not “web compatible” since it is using special WinRT objects… Don’t you think it is a crazy choice ?
One more important point : you know like everyone that Html is implemented differently on each browser, since the begining. And Html 5 will not be different (just see some comparison chart between current browsers!). SL on the other side, was offering to the developer a stable environment, whatever the browser is.
Replacing a stable environment by the Hell of Html (that’s the real meaning of the first “H” is html), that will force to use the bare minimum commun implementation to run on most browser is not serious.
All these point are proving that the move to html/js is big jump 20 years back.
I’m not sure even MS has the power to erase 20 years of progress.
I’m feeling MS will fail. Perhaps not no tablet market because W8 is really cool and you know like me that people are waiting for a tablet that can run Word and Excel… So there will be a lot of customers.
But on the same time MS will lose fair developers, will propose html like every editor without any difference, so people will switch to mac, to linux more easily than ever.
And you’re right : Metro Style is funny but too limitted to accept some creativity. People will love it the first time, but it will quickly be “has been”.
It seems even that when W8 will be on the market Metro Style will already be dead…
Killing good technology, killing creativity, forcing the world to use html and so another OS more easily, I thing MS management has failed on the whole line.
Last time tey tried something with Java, it fails, and they created .NET to have something to say. It was in a hury, .NET itself was a good plateform.
Now they lost the phone and tablet market and are again in “panic mode”. They come back to Java(script) and Html to look “cool”. They are not realizing they are not just killing SL, they are killing MS as a company…
Paul / OCT 02 2011
I don’t know how to feel about all this. I have been a coder since i can think. I have written code for ASM, C, C++, C#, Basic, Pascal, Perl, Asp, HTML, Java, JS, etc. On the other half of my brain i love design just as much. I can say that to this day HTML/JS is the worst i have ever experienced. HTML5 now introduces the most basic and simple features that were present on Windows 3.11. These two languages are effectively blocking any real progress for a decade now. When i behold the Web as it is today and how it feels, i sigh. Maybe it’s because it’s been around pretty much ever since that i tend to forget how obsolete and silly it really is. Even big enterprises like Facebook have less functionality than Norton Commander on a 386 20 years ago, it looks worse, too. And the sheer amount of overhead, the thousands and thousands lines of code that go into the most simple Apps, an ugly Web-Script that’s spewing out design deeply intermingled with code, which is making it impossible for a designer to mold the front-end, hence the feel and look of the overall Web. All this mess ends up in a simple arrangement of repeated Blocks, a zillion lines of CSS to make it look at least similar on the major browsers, JS that is so buggy and inconsistent that it needs an entire abstraction layer, JQuery, to make decent use of it. How come all this is ignored?
I seriously don’t know what’s all this about. It seems to me Microsoft has made a breakthrough with XAML, i have never in my live wrote GUI’s faster and more efficient. The things it can do are outstanding. MVVM, encapsulating design and code, elegant and quick languages to back it up, perfect tools to make programming and design easy and fun – i really though that was the future. If anyone could at least explain it, but all i hear is “HTML is an open standard, it is the future” – but Facebook and 99.9% of the Web still look and feel like it was conceived 20 years ago. I don’t see how the video Tag in 5 will change this. And i don’t how it will help in producing real-life Applications, either.
Im sorry for abusing your super nice Blog, Robby. I learned XAML and WPF from you and it meant a big deal for me. I guess all these news about 5 & 8 just hit me too bad. As a disclaimer, i have written huge Web-projects before, even own a well known and well frequented platform – it’s not that i pull my experiences out of my ribs completely. (-:
Antonio / NOV 04 2011
I just read your entry and you got me killed and now I feel more irritated than ever. Would you really advice me not to use Silverlight for a web project which is inhouse for 300 people? The alternative is HTML4 and CSS 2.1, urrrggg
The common sense from the //build conference and the comments here is that XAML and HTML5 are the leading technologies – I agree on that seeing the efforts which MS has done the last years. But I can not remember commenting anybody about which technology should be used with XAML, or advertising WPF – it’s like everyone wants to avoid trying to make the real point. My guess is that Silverlight has his place already earned in the MS world because of the phone! They made already too many investments in that area that it is hard to believe, that they will likely skip that in the future. Also I understand the opening of the windows platform to HTML not about getting better control over the technology but to get more developers into the marketplace, nutch, nutch (nothing wrong with that btw). Therefore I doubt that they will deny SL on the coming W8 or tablets missing the easy made revenue.
Now, seeing that HTML5 got hardware accelerated and became more structured I wonder if MS is making a XAML interpretation of the HTML site under the hood so that everything can work together. My feeling/hope is that WPF and Silverlight could become one thing in the future and HTML is just a dialect for those who want to keep their project platform independent.
Like Paul I am not very enthusiastic about HTML. Partly because of JS (see the speech of Anders Hejlsberg at //build and his comments on dynamic languages) but mostly because of the people that prefer it: Strangly they are not very opened to other technologies like XAML and have a different sense for code design and quality…
Dave Bacher / DEC 29 2011
I’ve made this comment elsewhere (including the ZDNet blogs)…
Windows Vista and above ship with the full version of the .NET framework as an OS managed component. Windows XP does not have the full version of .NET framework as an OS managed component, and so users have to download it.
If you assume that Windows XP goes away, why would there be a need for a reduced functionality framework? Just Sandbox the full framework, why maintain two things — if you’re Microsoft?
Meanwhile, Windows Phone 7 does actually need a subset, because those devices still aren’t where computers were a decade ago in terms of storage and memory (while they’re higher in terms of CPU). Shaving a few bytes here, a few bytes there is necessary when you are in the more constrained environment.
So far as HTML5/JS goes — it’s the standard formality vs. informality cycle. HTML5 is basically the GWBasic of the web, it has a low bar of entry and anyone can write code.