News

Microsoft Sparks Volta Test For Multi-Tier App Dev

Microsoft is now offering a very early release version of a new toolset it says will ease development of multi-tier applications.

The tool, code-named Volta, basically an extension to Visual Studio 2008, aims to streamline development of apps that run on many client devices including those that do not run Microsoft software, says Erik Meijer, architect of the Microsoft Live Labs project.

"This is focused on the idea of building distributed multi-tier development using only existing tools and techniques and patterns from .NET. People can use C #, Visual Basic, other .NET languages to get the best experience without having to tailor their app for a particular target," says Alex Daley, senior product manager for Microsoft Live Labs told Redmond Developer News.

"The idea is you build an app starting with the client-side entirely there and declaratively split the tiers -- you say run this on the server, run that on the client and the compiler will take care of building the server end code as well as handling what' on the other tiers."

The downloadable code must run with the newly-shipping Visual Studio 2008 and makes use of server-side ASP.NET capabilities but otherwise works with what languages, tools and infrastructure the developers are already using.

The idea is to extend the reach of .NET to places where MS IL or Microsoft Intermediate Language is not available, Daley says.

Volta can compile the developer' code to JavaScript to run in any standard browser, Meijer says. That means the resulting applications should run on any browser. Microsoft has already tested apps running in Firefox and expects them to run on Opera as well, Meijer says. The resulting applications should also run on Apple Computer' Safari browser "to the extent that Safari is standard," Daley says.

The Volta development process basically mimics real-world server-device interactions and allows developers to dynamically alter how they tier the application.

"Since we control the client and server code in one base, we can do end-to-end profiling. We can profile the app across the wire and see if there' latency. If there is, we can tweak it later in the process. We can change what runs on the server based on real-world data to determine the optimal architecture," Daley says. "It' less costly do make such changes later in the process and when you have to use two frameworks on the client and server."

"This is a different approach from what I've seen [elsewhere] because Microsoft is doing this at the byte-code level vs. the source-code level," says Jeffrey Hammond, senior analyst at Forrester Research.

Microsoft needs to do this "to make .NET go where Microsoft operating systems don't specifically with JavaScript. They do, however, use .NET on the server so in practicality this requires IIS although I guess in theory someone might do something with the Mono Project or something else to bring other Web servers in."

Daley and Meijer stressed that Volta remains a work in progress. "It is not at all feature complete" but should give developers a glimpse into what the final functionality could provide, Daley explains.

Daley would not comment on how the technology will be delivered, priced or when it would be delivered.

Reaction among some tech bloggers has been positive.

"You can write your application logic in any language that is supported by the .NET compiler (most of the statically typed languages) in Visual Studio which compiles to MS IL. And the freaking great and interesting part is that they have written a translator that converts MS IL to JavaScript! You heard me -- they freaking converted the whole .Net library and some more libaries to be compiled to JavaScript. So then JavaScript is sent to the client side and executes in the browser," wrote Venkatesh Mandalapa, a Computer Science graduate student at Arizona State University.

The fact that Volta comes out of Live Labs is significant. This is an incubator organization associated with Ray Ozzie' "software plus services" strategy. Ozzie is Microsoft's Chief Software Architect.

As Microsoft seeks to fend off the software-as-a-service advances by Google and others, it must provide a relevant, coherent and adaptable toolset, says Paul Barter, vice president of strategy for T4G, a Toronto Gold-certified partner.

"Since the very beginning, Microsoft' key constituency has been developers." If it can continue to win developers' hearts and minds with tools relevant to this new service delivery option, it can prevail, he says.

The download will be available to anyone wanting to test it out, Daley says.

Microsoft will post a Meijer Q&A on the Volta project later on Wednesday.

About the Author

Barbara Darrow is Industry Editor for Redmond Developer News, Redmond magazine and Redmond Channel Partner. She has covered technology and business issues for 20 years.

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