Feeds

How Microsoft blew its own RIA invention

Silverlight: back to the browser

Providing a secure and efficient Helpdesk

Cast your mind back to the year 2000. Microsoft has just announced its .NET Framework, complete with a new language called C# - that was in July, at the Orlando Professional Developers Conference.

A couple of months later, Mark Anders and Scott Guthrie from Microsoft's ASP+ team turned up at the Wrox Web Developer Conference in Las Vegas. Remember ASP+? This was the pre-release name for what became ASP.NET, the web application framework built on .NET.

Anders and Guthrie presented their new technology in the Wrox keynote, following which I interviewed them. They were absolutely the key people. "We started the team about two-and-half years ago. At the beginning it was just the two of us, working on it," said Guthrie.

Was ASP+ based on .NET from the beginning? "No," said Anders. "There were a number of groups around Microsoft that were looking at how we could move the programming model forward. We were on the IIS team; we had just shipped IIS 4.0, and thought we could do a lot better for web development. The tools team thought that they needed to make things simpler. We came up with some stuff, showed it to the tools team. They were working with the runtime team, we liked what the runtime team was doing, and started doing it like that."

Anders later revealed that the first ASP+ experiments were done in Java.

We also discussed how.NET components hosted in the browser might become a more secure alternative to ActiveX. "That is there today," said Anders. "If you create controls using WinForms, those can be hosted in IE [Internet Explorer] and run within the security sandbox. It's not through ActiveX hosting.

"As your binding to code within one of those components that comes down in the browser, if it's not present on the machine it will be downloaded. We have a great incremental download and deployment story. We expect it to be very popular."

Good idea, but it never really happened. Microsoft got security cold feet, and ended up crippling the feature in the 1.0 Framework so that Windows Forms controls did not run at all in the default Internet Zone. This was fixed in 1.1, but web developers disliked the .NET dependency and the fact that it only worked with IE and Windows.

It took Microsoft another five years before announcing Windows Presentation Foundation Everywhere, now Silverlight, at PDC in September 2005 - by which time Anders had left Microsoft to work on Flash tools at Macromedia, now Adobe Systems. These things take time.

So what about AJAX? The acronym stands for Asynchronous Javascript and XML, and it relies on a browser feature called XMLHTTPRequest, which lets you retrieve data asynchronously in JavaScript. You can then write code to update the contents of a page dynamically rather than refreshing the entire page, with the inevitable screen flash that implies. The technique was invented by the Exchange team at Microsoft for Outlook Web Access, and XMLHTTPRequest showed up in IE 5 in 1999.

Team member Alex Hopmann described the history here. Few people realised the significance of the feature, until Google started using it for GMail and then Google Maps. Jesse James Garrett, author and president and co-founder of "experience" design and consultancy Adaptive Path, identified the trend and called it AJAX in 2005.

Why did Microsoft do so little to exploit its own invention?

It is a good question, particularly since Anders and Guthrie apparently recognized its potential back in 2000. Guthrie demonstrated it during that Wrox keynote, describing it as "incremental page refresh." I was impressed, and asked him how it worked. He chuckled. "With the original ASPX and the ViewState we're able to determine what the shape of the page looked like on the previous request. A control can tell us whether or not it's dirty. We calculate out the union of all the dirty regions, and then send back that union in an XML packet to the client. On the client we then apply that to the original document."

It was an excellent demonstration; but it was not until ASP.NET 2.0, released in 2005, that Microsoft included the ICallBackEventHandler interface to make something like this easier to code, while full AJAX support did not arrive until ASP.NET AJAX in 2006. All of this looked more like a response to trends set by others, rather than innovating with home-grown technology.

It is possible that Microsoft failed to exploit the potential of AJAX because it did not want to promote the browser as a rich client? IE 6.0 came out in 2001, and was followed by a five-year hiatus until version 7.0 in 2006.

Microsoft lost interest in the browser because it wanted to promote rich web-connected desktop clients, running on Windows. The strategy failed, and in 2008 Microsoft is once again engaged in the browser wars and (with Silverlight) the Rich Internet Application (RIA) wars.

The interesting reflection is how much momentum it lost by not following up more quickly on its own innovations. ®

Choosing a cloud hosting partner with confidence

More from The Register

next story
Microsoft WINDOWS 10: Seven ATE Nine. Or Eight did really
Windows NEIN skipped, tech preview due out on Wednesday
Business is back, baby! Hasta la VISTA, Win 8... Oh, yeah, Windows 9
Forget touchscreen millennials, Microsoft goes for mouse crowd
Apple: SO sorry for the iOS 8.0.1 UPDATE BUNGLE HORROR
Apple kills 'upgrade'. Hey, Microsoft. You sure you want to be like these guys?
ARM gives Internet of Things a piece of its mind – the Cortex-M7
32-bit core packs some DSP for VIP IoT CPU LOL
Microsoft on the Threshold of a new name for Windows next week
Rebranded OS reportedly set to be flung open by Redmond
Lotus Notes inventor Ozzie invents app to talk to people on your phone
Imagine that. Startup floats with voice collab app for Win iPhone
'Google is NOT the gatekeeper to the web, as some claim'
Plus: 'Pretty sure iOS 8.0.2 will just turn the iPhone into a fax machine'
prev story

Whitepapers

A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
Storage capacity and performance optimization at Mizuno USA
Mizuno USA turn to Tegile storage technology to solve both their SAN and backup issues.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Beginner's guide to SSL certificates
De-mystify the technology involved and give you the information you need to make the best decision when considering your online security options.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.