Web Browser As an Application Platform

Web Browser As an Application Platform

Web Browser as an Application Platform Antero Taivalsaari and Tommi Mikkonen Dan Ingalls and Krzysztof Palacz Sun Microsystems Laboratories Sun Microsystems Laboratories P.O. Box 553 (TUT) 16 Network Circle, MPK 16 FIN-33101 Tampere, Finland Menlo Park, CA 94025, U.S.A. [email protected] [email protected] Abstract In the era of web-based software, the web browser will take an ever more encompassing, central role in For better or worse, the web browser has become a our lives. Among other things, the web browser will widely used target platform for software applications. take over many roles that conventional operating Desktop-style applications such as word processors, systems used to have in serving as a launchpad and a spreadsheets, calendars, games and instant messaging host platform for applications when they are run. In the systems that were earlier written for specific operating eyes of the average computer user, the web browser systems, CPU architectures or devices are now written will effectively be the de facto operating system. 1 for the World Wide Web, to be used from a web In this paper we summarize our experiences in browser. In this paper we summarize our experiences using a regular web browser as a platform for real, in using the web browser as a target platform for real desktop-style applications. As a concrete example, we applications. As a concrete example, we use the Sun™ use the Sun™ Labs Lively Kernel (see Labs Lively Kernel, a system that implements an http://research.sun.com/projects/lively/) – a system exceptionally interactive web programming that pushes the limits of the web browser by environment running in a web browser without any implementing an exceptionally interactive web plug-in components. Based on this work, we analyze programming environment that runs in a web browser the limitations, challenges and opportunities related to without installation or any plug-in components the web browser as an application platform. whatsoever. The absence of browser plug-ins makes the Lively Kernel different from other web application 1. Introduction development systems such as Adobe AIR (http://www.adobe.com/products/air/) or Microsoft The widespread adoption of the World Wide Web Silverlight (http://www.microsoft.com/silverlight/). has fundamentally changed the landscape of software Based on this work, we analyze the limitations, development. In the past few years, the Web has challenges and opportunities related to the web become a popular deployment environment for new browser and web applications more generally. We also software systems and applications. We believe that in provide a number of recommendations for future the near future the vast majority of new software improvements. applications will be written for the Web, instead of The structure of this paper is as follows. In Section conventional target platforms such as specific 2, we provide a historical summary of the evolution of operating systems, CPU architectures or devices. the Web, focusing especially on the ongoing transition In general, the software industry is currently from web pages towards web applications. We also experiencing a paradigm shift towards web-based provide an overview of the Sun Labs Lively Kernel – a software. In the new era of web-based software, flexible web programming environment designed at applications live on the Web as services. They consist Sun Labs. In Section 3, we summarize our experiences of data, code and other resources that can be located in using the web browser as an application platform, anywhere in the world. Furthermore, they require no taking a look at the various issues that we have installation or manual upgrades. Ideally, applications discovered. In Section 4, we provide suggestions for should also support user collaboration, i.e., allow future improvement. Section 5 concludes the paper. multiple users to interact and share the same 1 applications and data over the Internet. An earlier version of this paper has been published as Sun Labs Technical Report TR-2008-175, January 2008. could create commercially valuable web sites by 2. From Web Pages to Web Applications displaying advertisements or by selling merchandise or services over the Web. Navigation was no longer based Compared to how dramatically web usage has solely on links, and communication between the increased since the 1990s, it is remarkable how little browser and the server became increasingly advanced. the web browser has changed since it was introduced. The JavaScript scripting language, introduced in For instance, the common navigation features, such as Netscape Navigator version 2.0B in December 1995, the “back”, “forward” and “reload” buttons of the made it possible to build animated, interactive content browser, were present already in the early versions of more easily. The use of plug-in components such as Mosaic and Netscape Navigator. In contrast, the way Flash, Quicktime, RealPlayer and Shockwave spread the Web is used has evolved constantly from the early rapidly, allowing advanced animations, movie clips days. In the following, we provide a brief summary of and audio tracks to be inserted in web pages. In this the evolution of web usage. phase, the Web started moving in directions that were unforeseen by its designers, with web sites behaving more like multimedia presentations rather than 2.1. Evolution of Web Usage 2 conventional pages. Content mashups and web site The World Wide Web has undergone a number of cross-linking became increasingly popular. evolutionary phases. Initially, web pages were simple Today, we are in the middle of another major textual documents with limited user interaction evolutionary step towards desktop-style web capabilities based on hyperlinks. Soon, graphics applications, also known as Rich Internet Applications support and form-based data entry were added. or simply as web applications. The technologies Gradually, with the introduction of DHTML [1] – the intended for the creation of such applications are also combination of HTML, Cascading Style Sheets (CSS), often referred to collectively as “Web 2.0” the JavaScript scripting language [2], and the technologies. Fundamentally, Web 2.0 technologies Document Object Model (DOM) – it became possible combine two important characteristics or features: to create interactive web pages with built-in support for collaboration and interaction. By collaboration, we advanced graphics and animation. Numerous plug-in refer to the “social” aspects that allow a vast number of components – such as Flash, RealPlayer and people to collaborate and share the same data, Shockwave – were then introduced to make it possible applications and services over the Web. However, an to build web pages with visually rich, interactive equally important, but publicly less noted aspect of multimedia content. At the high level, the evolution of Web 2.0 technologies is interaction. Web 2.0 web pages has advanced from simple, “classic” web technologies make it possible to build web sites that pages with text and static images only to animated behave much like desktop applications, for example, multimedia pages with plug-ins to Rich Internet by allowing web pages to be updated one user interface Applications (RIA). Below we provide a summary of element at a time, rather than requiring the entire page the three main phases in the evolution of the Web. to be updated each time something changes. Web 2.0 In the first phase, web pages were truly pages, i.e., systems often eschew link-based navigation and utilize page-structured documents that contained primarily direct manipulation techniques familiar from desktop- text with some interspersed static images, without style applications instead. Furthermore, some systems animation or any interactive content. Navigation offer application development capabilities as built-in between pages was based simply on hyperlinks, and a features. For instance, the Facebook web site new web page was loaded from the web server each (http://www.facebook.com/) has its own application time the user clicked on a link. There was no need for description language that can be used for creating web asynchronous network communication or any applications for Facebook pages. advanced protocols between the browser and the web The three phases discussed above are not mutually server. Some pages were presented as forms, with exclusive. Rather, web pages representing all three simple textual fields and the possibility to use basic phases coexist on the Web today. The majority of widgets such as buttons, radio buttons or pull-down commercial web pages today represent the second menus. phase. However, the trend towards web applications is In the second phase, web pages became increasingly becoming increasingly common, with new web interactive, with animated graphics and plug-in components that allowed richer content to be displayed. This phase coincided with the commercial 2 In web terminology, a mashup is a web site that combines content takeoff of the Web, when companies realized that they from more than one source (from multiple web sites) into an integrated experience. application development technologies and systems hassles that conventional desktop applications have. being introduced frequently. The system and the applications written for it run in a regular web browser without installation or plug-in 2.2. General Observations and Trends components. The system even includes development tools that can be used inside the system itself. In analyzing the web application development The Lively Kernel is built around the following technologies mentioned above, it quickly becomes three assumptions: obvious that all these technologies are still rather different from each other. However, there are some 1. The World Wide Web is the new target platform. common themes that have started to emerge. 2. The Web Browser is the new operating system. Trend toward dynamic languages [3]. Most of the 3. JavaScript is the de facto programming language systems above rely on dynamic, interpreted languages of the Web. at least at some level.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us