I recently had the notion that Web 2.0 applications are a form of desktop virtualization presented to me during a long conversation with a Kusnetzky Group client. I found myself "not in alignment" with this notion. What do you think?
The Web 2.0 notionWhat does this mean? The notion was that Web 2.0 applications should be considered a form of desktop virtualization. Web 2.0 applications, by the way, are interactive, dynamic applications that include some form of social networking and are presented to the user over the internet. Typically Web 2.0 applications are supported by technologies such as those found in the following list:
Wikipedia's list of technologies used to create Web 2.0 applications.
Web 2.0 sites typically are using one or more of the following according the the Wikipedia:
- Cascading Style Sheets to aid in the separation of presentation and content
- Folksonomies (collaborative tagging, social classification, social indexing, and social tagging)
- Microformats extending pages with additional semantics
- REST and/or XML- and/or JSON-based APIs
- Rich Internet application techniques, often Ajax-based
- Semantically valid XHTML and HTML markup
- Syndication, aggregation and notification of data in RSS or Atom feeds
- mashups, merging content from different sources, client- and server-side
- Weblog-publishing tools
- wiki or forum software, etc., to support user-generated content
Analysis of this notion
A point for the inclusion of Web 2.0These applications do display one attribute of those running in a virtual application environment — they can be displayed on any remote device over just about any network media as long as the device includes a compatible browser and has enough memory to support all of the application code and data a Web 2.0 application includes.
Since these applications rely on the availability of a network connection that makes it possible to access the worldwide web and having sufficient bandwidth to support the download of all of the necessary application code and data, this approach is not applicable to folks who are working "off the grid," that is where access to the network is not available.
This is not all that much different than using a access virtualization in the form of a presentation manager, such as Citrix's XenApp or Microsoft's Windows Terminal Services.
Points againstUnlike the use of access virtualization technology, these Web 2.0 applications must be written for this environment and will not execute without it. This does not meet the requirements to be considered a virtualized environment.
Access virtualization technology is inserted into the environment, "grabs" the user interface component of the operating system, encapsulates screen data and the whole interaction with the user making it possible for the user to have the complete experience of running an application or perhaps the whole desktop experience offered by that remote system as if it were running on their own system. The applications are not changed to make this magic work. They use the same interfaces that the operating system offers that local applications use.
Application virtualization technology encapsulates an application and allows it to run in an enhanced environment that may provide greater performance, scalability or isolation from the rest of the environment. Once an application has been encapsulated in this fashion, it may be delivered to the target device by an installation, copying an executable image to the remote device and running it or streaming the encapsulated application down to the remote device.
Web 2.0 isn't a form of desktop virtualizationIt's my view that Web 2.0 doesn't meet all of the requirements to be included either in access virtualization or application virtualization categories of virtualization software so, this isn't a form of desktop virtualization at all and is really just the newest generation of client/server computing using the client system's Web browser as the client software.
Do you agree? What's your view on this topic?