AJAX, Echo, .NET - What Impact Have They Had?
BjB asks: "We've talked about platform neutral frameworks for years, but with the recent story about AJAX threatening the desktop, it made me think about the hype around two frameworks that were supposed to bring applications to the browser: Microsoft .NET and the Java competitor Echo framework. Both technologies boast that you can write a desktop application that can also easily be exported as an identical web-based application. I know a lot of developers hailed the .NET framework as a major innovation and jumped on board. The Echo framework was the counter-attack that leveled the field. Now, over two years later, I don't think I've ever seen anything that leverages either one? Was this a short lived battle with nobody reaping the rewards, or has it actually made some in-roads?"
My old employer makes a software product which has 4 parts:
.Net so the business logic code could be shared between all 4-5 of their applications. Before that any time there was a change in how the software worked it had to be changed across all products, which greatly increased the chances of adding bugs, took more time, etc.
.Net code meta tags, and application assembly also helped greatly in creating an easy to use AJAX framework.
Management Software running on Windows
Web version of the management software
End user/client software on Windows, and PDAs
End user/client software in a web browser, and WAP
They moved to
The
...but where's my perl, python and ruby dot net (and I don't mean editor support)?
Right under your nose, if you bother to look:
http://aspn.activestate.com/ASPN/NET Perl and (experimental)Python
http://www.saltypickle.com/rubydotnet/Ruby/.NET compatability
http://www.zope.org/Members/Brian/PythonNetPython
http://www.ironpython.com/Python, again....
- AMW
Echo and .Net are From-based web apps. Every click / button push results in a form being submitted to the server, and the whole page being re-drawn. This is no different than any other form of web development done for the past 15 years, the only benefit is ease of development or deployment on the server side.
You're correct with regard to the Echo 1.x platform (originally released in early 2002), but the upcoming 2.0 version of Echo, "Echo2", is built entirely around the technologies now being referred to as "Ajax". Every single update to the state of an Echo2 application is performed by partial updates to a DOM (there is no case in which an entire document is reloaded or swapped out). All client-server synchronization is performed over XMLHttpRequests, with the client sending an XML message describing a user's input and the server reciprocating with an XML message containing directives to update the state of the user interface.
You can see all the XMLHttpRequest stuff in action by appending "?debug" to an application's URL, e.g., click the following link to run the interactive test app in debug mode:
http://demo.nextapp.com/InteractiveTest/ia?debug
You'll need to allow a pop-up through as the "Debug Pane" runs in a separate top-level browser window.
Note that running in debug mode will reduce the speed of an application to a crawl, especially in Internet Explorer. Normal operation can be restored by simply closing the debug window.
Currently Echo2 is on its second release candidate, with the final version being released imminently. More info on Echo2 can be found here:
http://www.nextapp.com/products/echo2
The Echo2 demo apps may be found here:
http://www.nextapp.com/products/echo2/demo (Both of these can be operated in debug mode.)
Best regards
--Tod Liebeck
NextApp, Inc.