Re: Issues of state
- From: Jay Loden <python@xxxxxxxxxxxx>
- Date: Thu, 09 Aug 2007 12:17:02 -0400
Steve Holden wrote:
As far as I'm concerned the major issue with trying to have "desktop web
apps" compete with true windowed applications is the difficulty of
maintaining sensible interactions with the interface. AJAX designs have
increased the interaction level at the expense of greater complexity -
there is more state to be transferred, and a much higher interaction
rate with the server. But the browser is a terrible front-end for AJAX
designs because it doesn't record the state changes that take place as a
result of requests for updated InnerHTML content, so if the user is
unwise enough to press the "back" button she loses all traces of the
non-page interactions that have taken place since the page was loaded.
So "desktop web apps" should ensure that they get displayed in browser
windows with minimal user interface decoration. But even then there's
always that chance that sophisticated users will use keyboard shortcuts
like ALT-left-arrow.
That, in summary, is why my 2004 PyCon paper[1] was subtitled "The Back
Button is Not Your Friend".
regards
Steve
[1]: http://www.python.org/pycon/dc2004/papers/18/Setting_A_Context.pdf
There's been some interesting work done in that area as well:
http://dev2dev.bea.com/pub/a/2006/01/ajax-back-button.html
http://www.isolani.co.uk/blog/javascript/FixingTheBackButtonThatAjaxBroke
In particular, the RSH (Really Simple History) Framework is an open source
solution to the problem:
http://www.onjava.com/pub/a/onjava/2005/10/26/ajax-handling-bookmarks-and-back-button.html
Like most things involving dynamic client side-javascript code and AJAX
technology, it's a lot harder than you'd like it to be to solve the problem, but
in cases where the Back button is really an issue, it's worth the effort.
-Jay
.
- Follow-Ups:
- Re: Issues of state
- From: greg
- Re: Issues of state
- References:
- Re: Issues of state (was: Tkinter or wxpython?)
- From: Paul Rubin
- Re: Issues of state (was: Tkinter or wxpython?)
- From: Cameron Laird
- Re: Issues of state (was: Tkinter or wxpython?)
- From: Paul Rubin
- Re: Issues of state (was: Tkinter or wxpython?)
- From: Cameron Laird
- Re: Issues of state (was: Tkinter or wxpython?)
- Prev by Date: Extending logging module
- Next by Date: Re: tests
- Previous by thread: Re: Issues of state
- Next by thread: Re: Issues of state
- Index(es):