Fran Fabrizio writes:
> - Real-time data updates.  HTTP is stateless: it serves up the page then 
> closes the connection.   Any updating involves a round-trip back to the 
> server.  In traditional GUI, you just hold a db connection and repaint 
> the areas that are updated.

Solved with refresh?  JavaScript and Java can also help here.
For interactivity, check out:

http://www.cs.brown.edu/people/dla/polytope/tetra.html

> - State maintenance.  Since it is stateless, you have to jump through a 
> lot of hoops to realize that two requests are coming from the same 
> person, since they could be handled by two different child processes or 
> even two different servers.  This has all sorts of ramifications on user 
> login, user preferences, where the user was in the application, etc... 
> you have to do a lot of work on the server side to realize that it's the 
> same client that keeps talking to you.

Cookies work fine.

> - Fancy interface widgets/layouts.  HTML/CSS/JavaScript/DHTML can only 
> get you so far.  If you need fancy menu types, forms, layouts, etc... it 
> quickly becomes tedious/impossible on the web.

Tedious is questionable.  Impossible, I seriously doubt.  Remember,
you can always delegate part of your screen to a Java applet, although
I strongly recommend you avoid this.

> This is just the tip of the iceberg.  

Let's talk about the positives:

+ You update the server and instantly all clients are up-to-date.

+ You can detect incorrect usage, bugs, etc. by parsing a single log
  file, in real-time

+ The system is immune to operate system upgrades.  And "DLL hell" on
  Windows boxes.

+ You access the system from anywhere reliably and securely.  You
  don't have to open up a database connection to anybody but the Web
  server(s).

+ There is only one version of the software.

+ Support people can view the output sent to the client exactly as
  the client received it.  Including following a series of actions.

+ The use of a Web browser is familiar to most users.

+ The user can keep multiple views of the pages she wants, not what the
  application decides to offer.

+ Bookmarks allow users to structure their view of the application.
  Advanced users can create new organizations (short cut pages) for
  themselves and their co-users.

+ Users can share information easily (send page by email, mail
  bookmarks, print page, save to disk, save picture, etc.)

I'm sure others will add to the list.

Rob
  


Reply via email to