[Design] Edits and saving in the Web UI

Matthew Eernisse mde at osafoundation.org
Tue May 8 17:35:34 PDT 2007


Jeffrey,

Thanks for the sanity check here. It's very much appreciated. Comments 
below.

Jeffrey Harris wrote:
> I haven't worked with Javascript in years, and I've never done much with
> XMLHttpRequest, so I'm probably missing something here.  Can you explain
> why the save can't be done asynchronously, with different callbacks
> depending on whether the save failed, timed out, or succeeded, while
> normal rendering and event handling continues for the user?  That's what
> I'd expect to happen here, but again I haven't done much with the
> Javascript event loop.

The current implementation is already done the way you describe -- 
async, with different callbacks based on what type of edit and 
success/failure. So in theory you can drag a lozenge, drop it, and grab 
another one, drag, etc.

The processing XHR calls don't actually block the UI, but they will make 
the it feel sluggish and unresponsive. (Jeremy put it well in his 
previous message -- "On certain browsers, processing an ajax request 
(depending on what you are doing) may tie up the browser until the 
payload is processed.")

It's possible I'm overestimating the amount of slowdown, and 
underestimating people's tolerance for it. I tend to be the type of 
person who notices when the news site I'm reading decides to it's time 
to go fetch some new ads, but other people might be less sensitive to that.

Right now there are obvious, intuitive points where the UI gets tied up 
-- and they're all directly at points where the user has taken an 
explicit action to save (dropping a lozenge, or clicking Save), so 
there's a level of expectation that the UI should "feel busy." I think 
it may be bit less intuitive with a background save -- when from the 
user's persepctive, they've already gone on to working on something 
else, and the UI is essentially playing catch-up.

Your feedback is well-taken though -- and I'll look forward to seeing 
what kind of consensus coalesces around this.

Thanks very much!


Matthew




More information about the Design mailing list