On TechRepublic: Why Android beats iPhone
BNET Business Network:
BNET
TechRepublic
ZDNet

August 9th, 2007

Volta: Browser capabilities on steroids

Posted by John Carroll @ 9:51 am

Categories: Microsoft, Programming, Web Technology

Tags: Microsoft .NET, Microsoft Silverlight, JavaScript, Web Browser, John Carroll

I ran across Mary Jo Foley’s recent post in a series on Microsoft code names where she discussed Volta. As I tend, as a developer, to look at these things from a different angle, I thought I’d add my own explanation of the technology.

I first saw Volta mentioned in a Thinkweek proposal about a year ago. The bit that resonated strongest with me was the how Volta could convert .NET code into Javascript. The paper went into detail about how .NET IL structures could be represented in the browser scripting language. The advantage, of course, is that the code is generated, and thus doesn’t require the hand tuning that leads Javascript programmers to pull their hair out (I have done far too much Javascript programming in my career, which in my case has just made my hair longer).

That paper, however, was like finding a leaf lying on the ground in a forest. Volta does far more than just convert IL to Javascript, as I learned from watching this interview with Erik Meijer on Channel 9, Microsoft’s video site for developers.

In most development projects, it’s pretty hard to write everything in .NET. If you use a database, you often have to write a bunch of database-specific stored procedure or SQL calls. If you intend the application to be accessed through a web browser, unless that browser supports Silverlight (and as a soon to be released product, not too many do), you will have to write HTML, CSS and Javascript.

Microsoft is trying to reduce the need for such non-managed implementations by creating surrounding infrastructure that will handle the unique details of a particular interaction on the developers behalf. For instance, the new LINQ extensions that will come with version 3.0 of the C# language enable developers to write data access code in C# and allow LINQ Data Provider objects to handle the fiddly details of how those requests are honored.

Volta does the same thing on the client side. You can write code that targets Silverlight, as an example, and if the target browser doesn’t support Silverlight, the code will be “converted” to a DHTML / CSS / Javascript implementation on the fly. In fact, that implementation can be tailored to the unique requirements of the browser, and functionality can be boosted or reduced depending on what that browser can handle. For those familiar with ASP.NET programming, this is like Browser Capabilities on steroids.

Way back when I wrote a series about .NET taking over the world, I talked about the self-describing nature of .NET “binaries” as a neat way to get source code for released software in any computer language you prefer. Lutz Roeder’s .NET Reflector demonstrates that in spades, allowing you to decompile a .NET assembly into any .NET-compatible language for which plugins exist (if you haven’t downloaded it yet, do it now). Volta is like a strange form of decompilation where the generated code is designed to convert a managed code application into something that can run in a standard web browser.

There’s even some logic included in Volta to transform 3D graphics into DHTML. Erik Meijer talks about it in the video interview, but it involves the ability to represent any image through a series of triangles, which Meijer creates through a rather interesting trick of div tag definition.

The interviewer asked what performance was like in a system that used swarms of simulated triangle-shaped divs, and obviously, it isn’t as good as if you are running a Silverlight application locally. However, that’s the interesting feature of Volta. You can write an application for maximum functionality using nothing but managed code, and know that the result will run on even downlevel browsers that have never heard of .NET.

Volta is interesting stuff, and proof that Microsoft’s real competitive advantage is the platform experts that populate its halls like teams of computer science superheroes. That’s a point that Microsoft would do well to remember. It’s always good to know what you do well. It shapes how you decide to attack other markets.

John CarrollJohn Carroll has delivered his opinion on ZDNet since the last millennium. Since May 2008, he is no longer a Microsoft employee. He is currently working at a unified messaging-related startup. See his full profile and disclosure of his industry affiliations.

Email John Carroll

Subscribe to A Developer's View via Email alerts or RSS.

  • Talkback
  • Most Recent of 21 Talkback(s)
I agree completely
Any publication that discusses research instead of actual products is useless. It doesn't matter if its ZDnet, Cnet (same thing), an IEEE publication or any academic publication, for that matter, bec... (Read the rest)
Posted by: notsofast Posted on: 12/08/07 You are currently: a Guest | | Terms of Use
Revenue maintenance and exploration of new ways to continue make money.  Mikael_z | 08/09/07
Creationism  John CarrollZDNet Moderator | 08/09/07
So it's not revenue maintenance?  Mikael_z | 08/09/07
Actually...  John CarrollZDNet Moderator | 08/09/07
Smart people go with the flow of money.  Mikael_z | 08/10/07
M$ is merely pumping hype into IE and IIS  Linux Geek | 08/09/07
What is the deal  John CarrollZDNet Moderator | 08/09/07
the deal is Linux users think that if Microsoft does not make there code  SO.CAL Guy | 08/10/07
it boils down to this  pennatomcat | 08/10/07
As should be clear from the blog  John CarrollZDNet Moderator | 08/12/07
Oh God  tonymcs@... | 08/09/07
downlevel?  Voodoo187 | 08/09/07
Firefox  John CarrollZDNet Moderator | 08/09/07
It's to be expected  rapson | 08/09/07
Wow  trevorhunter@... | 08/10/07
Ideas are one thing.  Michael Kelly | 08/12/07
No risk there  John CarrollZDNet Moderator | 08/12/07
RE: Volta: Browser capabilities on steroids  nomorems | 09/07/07
Have to laugh...  Cardinal_Bill | 12/05/07
You win the cuddly toy  whisperycat | 12/06/07
I agree completely  notsofast | 12/08/07

What do you think?

SponsoredWhite Papers, Webcasts, and Downloads

advertisement

Recent Entries

Top Rated

Archives

ZDNet Blogs

White Papers, Webcasts, and Downloads

  • Smart Tech Expert advice on innovations in healthcare and the green technologies that make it happen. Find out more
  • Smart Business Discussion and advice on management issues that revolve around making your world smarter and more useful. More Smart Advice
  • Smart People The best and worst moves in the management and strategy trenches. Learn More