Evlan
Web Interfaces
Last updated at 2005/05/07 13:39:51 PDT by Temporal

Web browsers today are a mess. It seems like every day a new "technology" is added to the client side of HTTP in order to increase the flexibility of web interfaces. HTML, CSS, Java, Javascript, XmlHttpRequest, Flash, plugins, ActiveX, the list goes on. All of these technologies seek to serve basically the same purpose: to better control the user interface of a web site.

And yet, despite all this, even slightly unusual services find themselves forced to create entirely separate programs for the user to download and install. Have you ever tried to write a chat room integrated into a web site? Well, I have -- it's part of Io Community Manager -- and it was insanely difficult. Even after polishing, it is still known to crash Internet Explorer and Firefox from time to time. And look at the iTunes music store. It would be impossible to implement an interface like that through a web browser.

The fact of the matter is, web interfaces suck. And don't get me started on the security issues.

Now, imagine this: When your web browser visits a server, instead of downloading an HTML file, it downloads an Evlan module. That module is a program which requires two capabilities: the capability to control what is displayed in the browser window and the capability to communicate with the server from which it was downloaded. This program is then able to present absolutely any interface it wants inside the browser window. It can communicate with the server in any way it likes; it is not limited to stateless HTTP requests. The web site could sell files to the user, which the user could then drag-and-drop out of the browser window and into other programs. Better yet, the web site could sell capabilities to the user, which the user could drag-and-drop from the browser window into programs that can use them. These capabilities would operate over the network with automatic serialization provided by the Evlan VM. (Think visual software assembly with "hook-ups" crossing a network.)

Such a web browser would be far more flexible and powerful than any internet program we've ever seen. It would, in fact, replace practically all existing internet software and more. Web services could finally stop being held back by the inadequacies in web technologies as they exist today.

And, interestingly enough, the above web browser could be implemented in probably a few hundred lines of Evlan code, once Evlan is complete. And it would likely be perfectly secure.

evlan.org © Copyright 2003-2005 Kenton Varda
Powered by Io Community Manager, Evlan, and FreeBSD