Volta Technology Preview from Microsoft Live Labs Helps Developers Build Innovative, Multi-Tiered Web Applications with Existing Tools, Technology
Microsoft is expanding the company’s offerings in the Software +
Services space with the release of the Volta technology preview, a
developer toolset for creating multi-tier web applications. By
utilizing familiar tools and languages such as Visual Studio 2008, C#,
Visual Basic and the .NET Framework, coupled with advanced automation
processes, Volta allows developers to build multi-tier web applications
while still having the freedom to devote their creative energy to the
more specialized features of their applications.
To discuss the release of this new developer toolset and how it can help developers, PressPass spoke with Erik Meijer, principal architect for Volta.
PressPass: What is Volta and how does it benefit developers today?
Volta is a toolset created by Microsoft Live Labs that allows
developers to build multi-tier web applications using established
languages, libraries, development tools and the .NET Framework. Volta
offers a specialized facility for partitioning functionality across
client and server via declarative tier-splitting. Volta extends the
.NET Framework to distributed Software + Services applications,
allowing developers to use existing and familiar tools and techniques.
Additionally, Volta’s design allows developers to delay some decisions
until later in the development process – making it faster and cheaper
to adjust architectures to accommodate evolving requirements.
PressPass: What is the overall goal of Volta?
is a toolset that simplifies designing, building and debugging
distributed, multi-tier applications using existing .NET compilers,
tools and libraries. Volta achieves this goal by a technique called
declarative tier-splitting. The programmer inserts explicit
declarations into the source code, stating the tiers on which certain
classes and methods should run. Basically, Volta automatically inserts
low-level communication and serialization code and moves the annotated
code to the appropriate tiers. By releasing Volta as an experimental
toolset, we hope to validate the overall goal and approach, as well as
collect feedback that will be helpful in driving further development.
PressPass: What makes Volta unique compared to the other web development applications and tools that are available today?
Unlike other approaches, Volta starts with a client-side perspective.
That is, once developers are satisfied with an application’s
functionality and fully understand the internal object interactions,
they “decorate” the code with declarative attributes, or annotations,
to indicate the parts of the application that should run on other
tiers. The Volta runtime utilizes as many existing web technologies as
possible, such as the CLR, ASP.NET, and standards-based web browsers,
making it possible for developers to work with Volta in a way that they
are already comfortable.
In addition, Volta is deeply integrated
with Visual Studio 2008 – including the debuggers. Developers are able
to seamlessly step from one tier to another through code, set
breakpoints on any tier and trace flows of control across distributed
systems. Additionally, Volta enables new end-to-end profiling and
testing for higher levels of application performance, robustness and
reliability by maintaining a single programming model across multiple
PressPass: How does Volta make it easier to build a web application?
Volta dramatically reduces the amount of "new stuff" developers must
learn because it extends the libraries, tools and techniques that they
are already used to in .NET to new distributed, web-based, Software +
Services scenarios. Moreover, Volta allows developers to delay
irreversible decisions until the last responsible moment, greatly
increasing the agility of development in intermediate phases where
change is often rapid. Since developers initially create
easy-to-manage, single-tier client applications, and then incrementally
distribute parts to other tiers through a "refactoring" technique they
are already familiar with, they can apply familiar skills to new
problems – reducing development cost and risk.
PressPass: What are the use-case scenarios for Volta?
caters to client-server applications, including Ajax-style web
applications. By enabling developers to prototype and refine their
designs through refactoring, Volta is particularly suitable for
scenarios where developers cannot, or should not, partition
functionality between the client and server up front. In addition,
Volta offers the same programming model on the browser and the server,
helping developers control the complexities and idiosyncrasies of these
PressPass: As a Microsoft Live Labs technology experiment, how does Volta fit into Microsoft’s overall web-development strategy?
Microsoft Live Labs is dedicated to developing innovative,
Internet-centric technologies to improve and accelerate the evolution
of Microsoft’s Internet products and services. Releasing Volta as an
technology preview allows us to gather early feedback from both
customers and partners alike; this feedback will influence future
development of Volta. Since Volta’s declarative tier-splitting works
purely on the Microsoft Intermediate Language (MSIL) level, it can be
applied to any .NET application, written in any programming language
and libraries supported by .NET. This includes rich traditional client
applications running under the standard .NET Framework.
PressPass: How does Volta promote innovation in Microsoft’s Software + Services efforts?
Volta makes it easier to interface with existing web services from
familiar .NET programming languages and libraries. By automating some
deployment aspects, Volta makes it considerably easier and faster for
developers to create multi-tier applications, freeing them up from
repetitive, low-level communication software, so they can devote their
time and creative energy to more in depth aspects of their designs.
PressPass: Is Volta part of a Microsoft product roadmap?
Volta is an experiment that enables Microsoft to explore new ways of
developing distributed applications. Currently there is no plan to fit
Volta into a larger product roadmap. Instead, we want feedback from our
partners and customers to influence other Live Labs technologies and