Tuesday, May 30th, 2006
I have been using a pattern called the Pseudo User Pattern that many have used over the years.
Basically, it allows users to get through the maximum amount of work without forcing them to signup or login to your application.
Behind the scenes the notion of a User is abstracted and you may be talking to a true user (with a real id) or a pseudo user (with a cookie id).
When do we use this?
Shopping carts were one of the early implementors of this pattern. I remember early systems that made you create an account and login, before you could start adding to your cart. How many people are going to do that?
It is far better to let people get stuff in their cart and signup/login later.
This is probably the more common case. Let users use your site as much as possible, and only have them login/register when really needed.
More than just waiting to login
The pattern is more than just letting someone have a session and get them to register/login later. For a lot of actions you may not need them to do this. You could personalize a bunch of favourite stock tickers without having a full on account. At this point the settings are tied to that cookie (so if the cookie is damaged, the user goes online elsewhere this information is lost). Once useful, the user can then register to make sure that their settings are saved.
Where does Ajax fit in?
So, how does this fit into Ajax? Ajax allows us to really easily prompt a user to register/login at any point, anywhere on the page. Instead of taking the user away to another page and trying to get them back, we can do a small popup, login, and done. You are never taken away from the main area on the site.
It may not make sense to delay actions all of the time. You should not make your users do too much work just to get to a point where you force them to register/login as that will upset them and cause them to go elsewhere. This is the balance.
Posted by Dion Almaer at 12:36 pm