NerveMail
June 1, 2009
I just want to claim dibs: I may have written the very first rich and useful AJAX application.

Back in 2001, years before GMail, or Firefox, or even the coining of the term AJAX, I built a webmail system that looked and *worked* like a desktop client. There were no pages, just a client program (in JavaScript) that managed a rich GUI and dynamically loaded data and libraries. It had some interesting features like server push and an error reporting system stored JavaScript exception data in cookies so errors could be reported in the event of a crash. It was also a pretty mature mail client.

It worked more of less the same way Google Docs or other application-in-a-browser systems work. Except this was 2001 and the only browser capable of handling it was Mozilla 0.9x.
After endless tweaking I finally shared this in 2002:
http://www.mozillazine.org/talkback.html?article=2716
What seems obvious now – that rich clients are as good an idea on the Web as they are on the desktop – took more than a paragraph to explain in 2002. And in 2002, at the bottom of the crash, that last thing anyone wanted to hear about was “a new technology that was going to revolutionize the Web”.

So, while AOL offered me a job developing it for them in Mountain View, I never directly turned it into money. There certainly weren’t any companies looking out for this technology they didn’t yet know existed. The release of Google’s GMail had the simultaneous effect of making everybody get it and also making NerveMail far less relevant.
I’ve extended that codebase and still use it to build great things that can’t be built with Dojo or EXT. And I believe I was there before anyone. But I never got any props or cash. So I used to be a little touchy about it.
Just staking my claim.








September 14, 2009 at 9:30 am
2001? in 2000 i was making AJAX interfaces for hedge fund analytics, using PHP and Perl and JS..
and i doubt I was the first, since we were just reading the MSDN and Mozilla wiki’s looking for features that would let usi do what we wanted in a browser…
September 14, 2009 at 11:16 am
People were certainly making AJAX-like calls long before even 2000 using iFrames. And they could update parts of pages with hacks like document.write() as early at the 4.0 days. I don’t claim to be the first there.
What I’d written wasn’t a way to dynamically update a page. It was framework for writing rich, data-driven client programs in a browser. There was no ‘page’. The document’s BODY tags were completely empty. All elements were dynamically created and object-oriented.
The framework had visible elements like panel systems and floating windows, data grids and tree menus. And there were invisible things like a general purpose event router (so keyboard events could be routed to element currently in focus), an error reporter (so JS exceptions caught on the client could be sent back to the server and logged), a dynamic library loading system, etc.
Alex Russell, who’s work I much admire, had a demo at the same time called WebWindows which showed dynamic loaders, event routing, and draggable window elements on a browser-based desktop. It wouldn’t surprise me if his framework was superior to mine.
But I believe I still had the first practical rich-client application. If there was another one in 2001, it was well hidden.
When I demo’d for Mozilla/Netscape/AOL back in 2001, they told me that this was the first rich client application they’d ever seen in a browser. They even joked about the fact that my JS-based data grid featured stable sorts with multiple selections before their C-based one did.
But perhaps I’m wrong. Is there an example you can share of another fully-dynamic, rich-client system from back then? I would be curious to see it.