By Scott M. Fulton, III, Betanews
Last week at Microsoft's Professional Developers' Conference, Betanews had the honor of being invited to join a small cadre of reporters -- including noted blogger Long Zheng; TechCrunch's Steve Gillmor; and our good friend from SD Times and Technologizer, David Worthington -- for a luncheon with Microsoft's President of Server and Tools, Bob Muglia; and Chief Software Architect Ray Ozzie. There, we discussed a handful of topics -- some of their comments were candid and off the record, and some were for the record.
The first issue on our plate Tuesday afternoon concerned Silverlight, and Microsoft's continuing efforts to entice developers to build Web sites around a platform that is not considered a "standard," and perhaps never will be. Some developers discount Adobe Flash as a "standard" for the same reason; while others suggest that Flash's ubiquity renders it a de facto standard. The questions for Web developers have centered around whether they can afford to evolve any portion of their forward-facing online assets around a proprietary standard (around Silverlight) and still have it be on "the Web," whose values are based around platform neutrality. Those questions do seem a bit more pronounced for Microsoft than for other platform developers. But how should Microsoft handle the delicate issue of developing for a platform that's "ours" versus one that is "yours?" (And what's the difference really?)
Bob Muglia took the lead on this question: "The thing we want to be careful of is, we're not trying to say Silverlight is an alternative standardization to HTML 5, and that part of the Web," he told us. "We're not saying, 'Hey, you should use this instead of that.' We're trying to provide people with an environment that has capabilities that you just simply can't do today in the standards-based world."
Ray Ozzie picked it up from there: "The way I view it, I know there's not a bright line. But when I'm thinking of Silverlight, I'm thinking a lot in terms of skills leverage for the people who have learned how to program, how to build things in C#, who have built-up assets...and it is the most seamless transition for people like that to build to things in the browser and build things that are hybrid, between the browser and the service. It's not intended to be disconnected from the Web; there's more and more integration between the things that you do in Silverlight [where] you don't have the browser. But we will build in both, and it just depends on where you come from, those skills."
This has been a major problem for Ozzie with respect to Web developers at large, and he made it very clear in his candid comments: Just who gets to say what the Web is, and where it ends? Technically, I've made it a point to explain the Web as the subset of Internet functions that utilize HTTP, which is how standards bodies might also explain it; but there are a growing number of protocols and technologies that are completely off the HTTP protocol and that rely, nonetheless, on the Web browser. Flash has been one of them; shouldn't Silverlight be another, posits Ozzie and Microsoft?
“We're trying to provide people with an environment that has capabilities that you just simply can't do today in the standards-based world.” Bob Muglia, President, Server & Tools Division, Microsoft |
"We love the Web; we're not anti-Web, we're not going in a different direction," Ozzie continued. "And what I meant was, when we look at the various pieces of what we call HTML 5, as consensus emerges around different aspects of it, that we will do what people expect us to do in the spirit of the Web."
Bob Muglia then added this: "I think it's helpful to actually have a clear line that says, 'This is Silverlight, and then this is HTML,' and have both of them in existence, where we can step back and say, 'Okay, the standards process is evolving around HTML, and we very much want to participate in that and help drive it forward and build the world's best Web browser that does that.' [By that same token], it's nice to have something that's separate from that, it interact very seamlessly with that, it runs cross-platform, it does all these other things, but we can run like hell with it. And to be non-apologetic about running like hell with it."
Muglia drew a mental picture for us of a realm of clearly decided upon concepts called standards, a growing body of protocols that everyone agrees to follow. But customer demands run faster than standards organizations -- he cited Netflix as a critical example -- and companies like Microsoft and Adobe (here he wasn't ashamed to mention the Flash maker) have to run ahead of the pack, and in competition with one another, to meet that demand.
“As far as we can see, there will be a difference between the security context of running in a browser, and having a user make a decision to install (I use that word loosely) an application on their machine.” Bob Muglia, President, Server & Tools Division, Microsoft |
"Our perspective on this is very simple: The standards-based world will advance, and continue to do more and more, and applications will be delivered in that way, and that's a critical thing. There will always be opportunities for people to build applications that take advantage of characteristics that go beyond what the standards do, and that's what we're trying to do with Silverlight. And we actually want to make it easy for developers to choose: You want to deliver something with JavaScript and HTML, great, we'll offer a world-class browser that does that, we'll enable that across our operating system and systems in different environments. If there's other things that you want to do in terms of delivering applications, we'll also have a world-class runtime to do that, and you can mix and match."
Next: Google Chrome Frame makes Ozzie very angry indeed...
With regard to the borderline between "proprietary" and "standard," there's something that has been sticking in Ray Ozzie's craw. He was well-behaved, for most of the afternoon, avoiding too much use of the "G" word. (Not "Gillmor.") But Google's recent behavior (the Chrome OS announcement event was still two days away at this point) clearly has Ozzie upset, especially with regard to how he perceives it tries to define "the Web" in its own image, moving the boundary between standards and proprietary protocols as it chooses.
"The thing that's tough is the thing in-between, and this is what really did surprise me about what Google did. The Chrome Frame thing is basically saying, 'Well, we believe in standards, but we're going to put our implementation that's beyond standards into someone else's frame.'"
Chrome Frame is the company's unsanctioned add-on to Internet Explorer that enables it to deliver designated Web pages through Chrome's browser engine rather than IE's. I asked Ozzie whether he believed Chrome Frame was just bluster on Google's part, a tactic to make folks like Ozzie upset. His answer indicated he did not believe so; he takes Chrome Frame quite seriously, as something designed to blur the line for Web developers who are legitimately trying to determine what their clients are running, and publish Web pages to that platform -- a kind of smokescreen.
The reason it's important for that dividing line to be clear, both Microsoft executives argued, is because applications need clear security boundaries, and Web applications must be more constrained about their security and permissions than "installed" apps on the user's system. "The two big differences between .NET Framework writ large and Silverlight are the execution model within which they operate, and the level of function," Ozzie explained.
Muglia took it from there: "As far as we can see, there will be a difference between the security context of running in a browser, and having a user make a decision to install (I use that word loosely) an application on their machine and provide access to physical resources...You can start to do that with Silverlight 3; you'll continue to see us do more there. For example, when we built Visual Studio 2010, almost all the new code and a very large part of the application is written in WPF. We're not to that point with Silverlight; there's no question about it, we can't build that application today with Silverlight. The day may come when we may continue to build more services and capabilities into Silverlight where you can build an application of that level of complexity, and that's true because all these environments continue to evolve."
“We love the Web; we're not anti-Web, we're not going in a different direction.” Ray Ozzie, Chief Software Architect, Microsoft |
"Whether it's the accelerometer or compass or whatever I/O devices, over time, all of these things are going to end up having to be permissioned...by the user to do extended things, and those will be used for installed apps probably first, but maybe even for Web-based apps, I have no idea. And I think therein lies some of the biggest challenge that we have moving forward. In AIR and Silverlight, you're going to see us pushing at the edge on what Web apps are just now doing with OAuth, where the user has permissioned a site to do something. Well, we're also going to have to have the application permissioning the client to do something, to have access to my local data, to my microphone or speaker; and that permissioning on the Web is done at the Web site level. I'm not sure yet what the right granularity is for the client. Is the client just a signed piece of the Web site that you're permissioning; once you permission the Web site, [does] the client have the permission to do these things? We're in new territory here."
More of our Lunch with Bob & Ray later this week in Betanews.
Copyright Betanews, Inc. 2009