Where will the browser appear as a platform first? — The Enterprise

Here’s a thought from the future:

  • The browser is the platform.
  • Microsoft has embraced this and has released Office as an ASP.NET 2.0 Ajax application for enterprises.
  • Microsoft is continuing its push into ‘Software as a Service’
  • You can now rent Office XML Application Server for Windows Server 2007
  • All of your enterprise users, using IE7.0, Firefox 2.1, Opera 16, or Safari can now access all their office applications from their desktop. (No, IE8.0 still won’t be out, but Firefox will be at 25% marketshare, and I’m not even going to guess at what Firefox will be alled then — how about ‘Burning Rabbit’ ?)
  • Here’s the catch — When users click on that ‘Microsoft Word’ button (or any of the office apps), a local application doesnt load. It loads a rich web application that closely mimics what we now think of as word.
  • All of the users have their own document storage on your Windows Server
  • All of the users have access to their documents seamlessly through existing methods (the remote storage automatically shows up in a user’s ‘my documents’ subfolder, apple’s finder/searchlight, etc)
  • Users can specify permissions on these centrally stored files, and they are easily shared — people don’t have to navigate to a random person’s desktop to get a document they shared, and a person doesn’t have to email it to them. The documents on the server are all searchable by the user’s local desktop (depending on permissions).
  • When it’s time to upgrade to a new version of Office XML Application Server, the upgrade is done on the server, once, and all clients automatically have their update.
  • I know some of this isn’t new OR likely, but it’s fun to take an old idea that was once pure ‘out there’ thinking and bring it down into the realm of “I see how this is possible even if it’s not either soon or likely”

    Also, who knows if it will even be microsoft who does this? Maybe it’s SUN, maybe this will all play out on linux desktops first, with “OpenOffice Network Server” — who knows. I think the day of the browser as a platform IS coming, and I think we’re going to see REAL productivity applications created this way, and I think it’s going to come to the enterprise first.

    They’re the ones who can see the real cost savings and increased productivity — through ease of deployment and upgrades for the former and ease of collaboration in the latter.

A new way of thinking about rich web applications — Lightweight Plugins

I’m not sure exactly where I got this idea, but I know it’s not my own, so I cede the creativity of the idea to someone else. Actually, I think it was Bill Scott with Sabre / OpenRico on his blog, but again, I’m not sure.

Anyway, to the idea. If you stop thinking of javascript as a way to enhance a webpage and start thinking of it as more of an actual language you can use to build a small application inside of a webpage, it sorta “changes everything.” With the popularity of ajax and the rise of advanced widget systems (like script.aculo.us/) and rich web application frameworks, it’s becoming more and more apparent that you *can* build very functional applications on the web. And, for that matter, you can do it all inside a single webpage.

So, you can build a mini application, so what? Well, how about building a “Lightweight Plugin.” Here’s the flow of things:

  1. Browser downloads page with little markup, but much javascript
  2. Javascript loads a data file from server
  3. Javascript parses data file and displays to user
  4. User can interact with the javascript display to edit data or view new data

See, it’s just like having an acrobat reader or flash, but you’ve got ZERO downloads, and you can have it do whatever you want, completely customized to your way of doing things.

But wait, the thing about plugins is that there are only a few of them that people have, so everyone has to stick to using the big ones — acrobat reader & flash. We don’t have to stick to that anymore, since there’s no installation of software to worry about. I keep coming back to “The browser is the platform” — Once you’ve got the idea of the lightweight plugin, it becomes apparent that anyone can just build whatever lightweight plugin they want, and the browser just becomes the platform for running and distributing the application.

The browser is the platform.
The browser is the platform.
The browser is the platform.

We’re not getting rid of regular apps anytime soon, but we’re going to start seeing the web become a very different place, full of big and small applications.

TopJax 0.2

I’ve released a new version of my little Ajax system utility, TopJax The new release displays a bit more information to the user than the last.

If you don’t know, TopJax is basically the unix Top command ported to the web with Ajax techniques. It’s basically a, “hey let me do something that gets my feet wet w/ Ajax while also doing something potentially useful”

Ajax Timeline

  • Late 1998 / Early 1999 – Microsoft releases IE 5.0 with support for XMLHttpRequest
  • Sometime In Between – Oddpost uses XMLHttpRequest to produce a highly functional webmail client
  • February 2005 – Google releases Google Maps to the world demonstrating cross-platform use of XMLHttpRequest (Google also released Google Groups, Google Suggest, and GMail using the technology around this time)
  • February 18, 2005 – Jesse James Garrett writes, “Ajax: A New Approach to Web Applications” on the Adaptive Path website.
  • The world jumps on the bandwagon, seeing how cool Google Maps is, and that it’s not just “google magic” — the name “AJAX” and some simple descriptions of the technology allow lots of people to really grasp what it’s about.
  • Everyone who is doing something like this already starts calling it AJAX, too. (except the google engineers, who apparently just call it “javascript” — how modest, and everyone who still called it “XMLHTTP”)
  • Profit

I’d like to point out that many of the “rich application frameworks” that are out there (many of which are described in my rich application frameworks page) have been at this for a while, working on their technology out of the limelight.

It’s just that several powerful trends have collided, and the naming of the beast has, well, given everyone a focusing point. Naming something like this gives everyone a common frame of reference. Not that “XMLHTTP” wasn’t a good name for the idea, it’s just that, well, it’s not as sexy as AJAX. The naming of the technology, the very prominent use of it in Google Maps, the already-breeding realm of rich application frameworks, well, all of them collided and produced this idea in everyone’s head that Javascript isn’t as bad as we had all thought, and that using “modern” javascript could really produce some highly functional, powerful web applications.

Part of it is that javascript left such a nasty taste in people’s mouths that it was relegated to the, “only use if it you have to” realm. I know that’s where I was, having beat myself over the head with the javascript stick back in the day when Netscape still had >50% marketshare. I think a lot of people are seeing this technology and are realizing that we’ve come a long way since then. Really, for the most part, now you *CAN* have one codepath (for most things), and you don’t have to hack, hack, and more hack your way to getting things working on various browsers. Part of it is that we don’t have to test on Netscape 3.0 anymore, and part of it is that the technology has matured enough to not give everyone headaches.

There’s more to this, for sure, but I think i’m hitting the key points.

Some of this was ‘researched’ at various places around the web, but i found the Wikipedia AJAX article very helpful

TopJax -Unix Top in a browser.

Are you too lazy to ssh into servers you’re monitoring? Do you not want to set up a slick page with SNMP and/or RRDTool? Or, do these solutions just not fit your needs?

TopJax might be for you.

TopJax is essentially the “top” unix utility ported to the web via Ajax using Sack of Ajax. It provides the ability to view system processes, sort processes by various fields, pause/unpause monitoring, and hide idle processes.

TopJax is released under the GPL.

Note: This is probably highly insecure. I don’t encourage you to run it on a public server.

The permanent address for TopJax is http://emergent.urbanpug.com/topjax

If you’d like to keep up-to-date on the progress of the project, you can subscribe to this site’s RSS feed –

Notes: I’ve separated all styling information from the code, because I know I’m not the best person with CSS. If anyone wants to help by providing alternate stylesheets, I’d be very happy.

If you want to help out by making a small donation, that would be cool.

You could also buy a Threadless shirt using me as a referral.