Only One Session
It’s time to go log in to the system to do the thing. You’re away from the computer you normally do this on — maybe you’re on vacation and only brought your laptop, maybe you’re just on the couch and using a tablet or your phone, and feeling a bit lazy.
While signing in, it warns you that you’re already signed in on another computer. Maybe it gives you the option to sign out of your existing session. Maybe it doesn’t let you sign in at all without going through a process similar to a password reset.
You’re frustrated at the process, and to add insult to injury, when you get back to your main computer, you have to repeat it.
When using this website on your main computer, you need to juxtapose information that is only available on multiple pages. You proceed to open a link from the site in a new tab, only to be told that you may only have one tab open at a time, and because you tried to have a second tab open it’s time to sign you out.
Whatever the excuse, this is an incredibly frustrating pattern and deserves a square on Login Bingo. This is not a terribly rare pattern – I’ve encountered it in the wild on multiple systems within the last year. HTTP is a stateless protocol and systems that enforce this pattern do so in an invariably futile attempt to make it stateful.
I say this is futile, because I have been asked to implement this pattern before as part of mistake-proofing a control system — for a system with only a handful of users. Attempts to overcome the stateless nature of the web protocol are a cat and mouse game with an increasingly diminishing return on an increasingly complex effort.
The web is a multiplayer system even when the players are all controlled by the same person. Design for it.