Redmond Diary

By Andrew J. Brust

Blog archive

Windows 8: Old Dog, New Tricks, Important Questions

Yesterday, at the Wall Street Journal’s "All Things D" conference, Microsoft’s President of Windows and Windows Live, Steven Sinofsky, showed the world a preview of Windows 8 (officially, that’s the code name). And in a YouTube video, Jensen Harris, Director of Program Management for Windows User Experience, provides his own detailed Windows 8 demo that you can check out right now. What both men showed us was an early preview of a next version of Windows that looks a lot like Windows Phone 7, complete with Live Tiles and a superior touch UI. What this new version of Windows also does is run honest-to-goodness Windows applications. So we can work as well as play, on desktop PCs, laptops, or "slates," supporting both keyboard-and-mouse and touch as input mechanisms. This comes pretty close to the model I hoped for in my Redmond Review column "Tablet Toast or Slate Salvation" back in February.

The model seems really compelling to me, and I think it’s the right way to go. On the other hand, the apparent HTML 5 + JavaScript development environment for Windows 8 apps, and the way in which conventional Windows apps are hosted, invokes a number of questions. I find myself alternating between being excited and feeling concerned. Sometimes the best way through that is to just talk it out. So let’s deconstruct what we’ve seen of Windows 8 and try to get to some provisional conclusions.

What I like best about the Windows 8 approach is that the Windows team took the "Windows Phone vs. Windows" question and changed it from confrontation to unification. Lots of smart people in the industry have talked about the iPad as having appeal for casual consumption but having a weaker story around content creation and actual work. This forces people into a fragmented world of having separate devices for each mode (consumption and creation). And this has forced me to go back to my laptop for lots of things, using my iPad less with each passing month. I think we need an OS, and devices, that can work in both modes, that can be versatile without being compromised. What we saw yesterday’s demo proves that Microsoft is attuned to precisely this goal and that, in terms of delivering on it, we can certainly say "so far, so good."

The Metro UI definitely seems to be the star of the show now; Joe Belfiore has championed it on the Windows Phone platform, and it seems to have influenced Sinofsky’s vision of Windows proper. And what’s interesting there is that Joe Belfiore used to head up the effort around Windows Media Center Edition, where Metro first achieved some prominence. Media Center was in many ways brilliant, but the fact that it was a mere shell on top of Windows was a big drawback. That message seems to have been received in Redmond, and it came up explicitly in the All Things D interview with Sinofsky: the new Live Tile UI is not a mere shell. It is Windows. When Microsoft listens to the market’s critique and then builds new technology that is sensitive to it, the company is at its best. This is one such case.

I do have some concerns and questions though. For example, in the Sinofsky and Harris demos, when Excel is shown running as a conventional app, what actually seems to be shown is Windows 7 running in its own window (albeit borderless), and I have a sneaking suspicion (though no knowledge) that’s it in a virtual machine. Within that window, the Start button, task bar, and everything else that is part of the standard Windows environment shows up. It doesn’t really seem integrated at all... it’s as if we’re running a terminal emulation window but we’re looking at the Windows 7 UI instead of the IBM 3270. I have to believe this is going to evolve and get better though. Using a VM and sharing drives with the host is not integration; it’s side-by-side execution.

What about the HTML 5 and JavaScript bit? My pedigree is one of a .NET developer, after all, so this one makes me woozy. Well, from what I can tell, HTML 5 or not, the Windows 8 environment isn’t really the "Web." It’s Windows. But it’s Windows with an interface that allows HTML 5 markup, as a syntax, to be used to design screens, and JS to be used to script the apps. So it’s HTML 5 and JavaScript, but it’s not a browser. It’s not the old Active Desktop. It’s really a lot like Windows Phone 7 but with us using HTML 5 instead of XAML as the syntactic sugar. And, yeah, we’re using JavaScript, but so did version 1.0 of Silverlight, and then managed code made its way in there. Maybe the same will happen here. A guy can hope, can’t he?

Honestly, I am not really sure what will happen there, and that starts to push me into a downward spiral emotionally. But then I see an important, positive side: having HTML5 and JavaScript as a first-class syntax option (wisely) puts out a welcome mat to a new generation of developers who can start building apps for Windows 8 with their existing skill set. And this all may be a way to flip Google on the wrestling mat and pin them down: yes, HTML as a syntax wins, but no, HTML pages on the Web that your engine can crawl and index, and insert ads into, does not win. It loses. Microsoft will use your languages, but it will combat your Web-centrism.

Ironically, Apple proved people want native apps, and they created a nice commerce model for small developers to sell them. Google paved the way for HTML 5 and JS to serve as a more dev-friendly programming model than Objective C (for crying out loud). Now Microsoft seems ready to take the App Store model, HTML 5, JavaScript and touch back to the Windows environment, where most people are still sitting today anyway.

I may not be comfortable with each thing I’ve seen of Windows 8, but I am very encouraged by the totality of what I have seen. Microsoft is playing to win. And while victory is far from assured, it sure is nice to see Redmond aiming high

Posted by Andrew J. Brust on 06/02/2011


comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube