Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
A cookbook for using the model-view controller user interface paradigm in Smalltalk-80
Journal of Object-Oriented Programming
Directness and liveness in the morphic user interface construction environment
Proceedings of the 8th annual ACM symposium on User interface and software technology
Back to the future: the story of Squeak, a practical Smalltalk written in itself
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Inside Java 2 platform security architecture, API design, and implementation
Inside Java 2 platform security architecture, API design, and implementation
Program development by stepwise refinement
Communications of the ACM
Programming for Wireless Devices with the Java 2 Platform, Micro Edition
Programming for Wireless Devices with the Java 2 Platform, Micro Edition
WebDAV: Next Generation Collaborative Web Authoring
WebDAV: Next Generation Collaborative Web Authoring
LISP 1.5 Programmer's Manual
Ajax in Action
JavaScript: The Definitive Guide
JavaScript: The Definitive Guide
Ruby on Rails: Up and Running
Dynamic HTML: The Definitive Reference (Dynamic Html)
Dynamic HTML: The Definitive Reference (Dynamic Html)
GWT in Action: Easy Ajax with the Google Web Toolkit
GWT in Action: Easy Ajax with the Google Web Toolkit
JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications
JavaFX Script: Dynamic Java Scripting for Rich Internet/Client-side Applications
Essential actionscript 3.0
The ruby programming language
Professional AIR: Application Development for the Adobe Integrated Runtime
Professional AIR: Application Development for the Adobe Integrated Runtime
The Lively Kernel A Self-supporting System on a Web Page
Self-Sustaining Systems
Creating a mobile web application platform: the lively kernel experiences
Proceedings of the 2009 ACM symposium on Applied Computing
Partitioning web applications between the server and the client
Proceedings of the 2009 ACM symposium on Applied Computing
MaJaB: improving resource management for web-based applications on mobile devices
Proceedings of the 7th international conference on Mobile systems, applications, and services
Lively Wiki a development environment for creating and sharing active web content
Proceedings of the 5th International Symposium on Wikis and Open Collaboration
Towards eased debugging of Python applications on Maemo platform
Mobility '09 Proceedings of the 6th International Conference on Mobile Technology, Application & Systems
Peer-to-peer collaboration in the lively kernel
Proceedings of the 2010 ACM Symposium on Applied Computing
An offline browsing system for mobile devices
Proceedings of the 11th International Conference on Information Integration and Web-based Applications & Services
Web Pontoon: a method for reflective web applications
IWST '10 International Workshop on Smalltalk Technologies
Proceedings of the 2011 ACM Symposium on Applied Computing
WeScheme: the browser is your programming environment
Proceedings of the 16th annual joint conference on Innovation and technology in computer science education
Partitioning web applications between the server and the client
Journal of Web Engineering
A meta-reflective wiki for collaborative design
Proceedings of the 7th International Symposium on Wikis and Open Collaboration
Web browser HTML5 enabled for FI services
UCAmI'12 Proceedings of the 6th international conference on Ubiquitous Computing and Ambient Intelligence
Device-Independent Architecture for ubiquitous applications
Personal and Ubiquitous Computing
Hi-index | 0.00 |
For better or worse, the web browser has become a widely-used target platform for software applications. Desktop-style applications such as word processors, spreadsheets, calendars, games and instant messaging systems that were written earlier for specific operating systems, CPU architectures or devices are now written for the World Wide Web, to be used from a web browser by anyone, anywhere, anytime. The original design of the web browser dates back to the early 1990s. Given that the web browser was originally targeted at displaying static, page-structured documents, it is not surprising that the web browser is not an ideal execution environment for desktop-style applications. In this paper we summarize our experiences in using the web browser as a target platform for real applications. As a concrete example, we use the Sun™ Labs Lively Kernel, a system that pushes the limits of the web browser by implementing a highly interactive web programming environment that runs in a web browser without installation or plug-in components. Based on this work, we analyze the limitations, challenges and opportunities related to the web browser as an application platform. We also provide recommendations for possible future improvements.