For several months, I have been too swamped to blog for reasons I won't go into now, but I am irritated enough by what just happened that I am making the time to vent.
How many times have you been doing something on a web site that takes a while (or you get side-tracked), you finally go to submit, and you are greeted with the login page. Your server-side session has expired, and your work is gone. If you are lucky, depending on how the site is implemented, you can click Back and recover your completed form. If you are really lucky, you can complete the login, and the site will have maintained your form data and submitted it. If you are really unlucky, your work is simply gone, never to be seen again. Your choice is to recreate it from scratch or just say screw it, which is what I've just done. I'm writing this, instead.
It's enough to make you not want to do meaningful work in a browser. In fact, when I have lengthy text fields to write (like this), I typically do it in a text editor. But what are you supposed to do when it involves all kinds of form controls, such as checkboxes, drop-downs, radio buttons, or text fields? You are at the mercy of the server session to keep your session alive until you click submit. You can't really preserve that in a text editor, without a whole lot of effort.
I can't claim to follow Jakob Nielsen's work, but losing your work because of a session timeout is the ultimate in unusability (if there is such a word).
Either the browser needs to be made smart enough to preserve previous inputs to compensate for this case (perhaps a Firefox extension would do the trick here), or server-side code has to be a little more forgiving of form submissions from expired sessions. This is the kind of awful user experience that makes people, myself included, hate computers.
BTW, Simon, nice job on Pebble. I can write with impunity in the blog entry form, because, even if my session expires, Pebble lets me log in again and submit my blog entry at the same time. That's the way it ought to work…
… which brings me to the other half of my gripe. You never know how a web site works (or doesn't) until it's too late. Maybe there should be some kind of operational policy file you can query that tells you how long a session lasts, what happens to form submissions when a session expires, and so on. At least then you know what you're dealing with.
Even though Pebble works, I'm still doing a Select All, Copy All before clicking Post. One bitten, twice shy.