"One of 15 Entrepreneur Blogs Worth Reading"
- Wendy Bounds, The Wall Street Journal

When Web Developers Dont Consider Usability

It should come as no surprise that many ecommerce sites suffer from poor usability because technical decisions are made like this email thread from a newsgroup that found it’s way to the Internet:

Hi all,

Quick question. I want to implement a shopping cart. I know this has
been done a million times in a million open source projects however I
have a few questions, and seeing as everyone in here seems so
knowledgeable.

What I’d like:

1) User can add to shopping cart without having to check in. (checkout
requires login).

2) User can leave the site and un-checked out shopping cart data will
remain.

The options I have to implement the shopping cart:

a) Cookies – satisfies 1 and 2, but assumes user doesn’t turn off
cookies
b) HttpSession object – satisfies 1, but not 2
c) Database shopping cart object – satisfies 2, but not 1.

I’d like to know,

a) am I basically correct with these assumptions.
b) What would people recommend based on their experience.
c) any struts open source project that might have this?

Thanks very much,
Brian

Essentially Brian asks what is the best way to save the contents of a shopping cart so if a customer leaves the site, the customer can pick up where he/she left off without requiring registration to add products or access the cart (otherwise known as a “persistent shopping cart.”)

Since today we’re more enlightened about the perils of required registration before checkout – namely its impact on conversion, the first response to Brian’s question should shock and disturb you:

I think you’d make your life easier if your required login.
.V

When web developers are more concerned about how to make their own life easier, rather than provide the best customer experience, you get advice like this.

The second response also lacks consideration / understanding of the end user:

I haven’t any tech input, but I’ve an idea how I’d stagger the
development.I’d forget about cookies and db’s at first, save them for a
later stage.

1. Store your cart in session, and when that all works. For everyone.
Gets to the checkout and funds are exchanged.

2. Create a login where clever stuff like saving your objects to db’s
goes on.

3. Then once you’ve a logged in user start thinking about when to save
the cart.

None of what I’ve said is ground breaking, but It does avoid messing
with cookies, up to this stage. When the user logs in s/he gets his/her
cart back.

4. I guess the final stage could be to do the cookie stuff, so users
are logged in as soon as they get to the site. And thus the retrieval
of the cart also, as its already in place integration would be smooth.

Don’t know who useful this is, but there’s nothing to offer in terms of
the actual mechanisms in play. But by getting folks paying asap, the
extras don’t become show stoppers.

Cheers Mark

It’s clear the developer is not thinking like a customer. He assumes that customers either proceed to checkout in one session (as per his advice not to worry about cookies), and that customers will inevitably create an account (“When the user logs in s/he gets his/her cart back.) Problem solved, right? Brian thought so…

Hi Mark,

Actually this is EXACTLY what I was thinking of doing.
The one problem that I had with this idea is that I was
a bit worried about filling up the session object with
lots of stuff.

Is this not really a problem?

Cheers,
Brian

It is a problem, customers don’t behave this way. Customers don’t understand why the contents of their carts disappear when they close their browser. They don’t know they can magically get it back if they create an account (and really, they can’t if they’ve registered in a new session). And they hate registering! These “extras” are showstoppers!

Brian seemed pleased with the recommendation. His concern about “filling up the session object with lots of stuff” is warranted – this could cause performance problems which also affect user experience. But the Brians of the world need to understand current web usability best practices when considering the optimal solutions for an online store requirements.

Subscription Options



Or, receive new posts by email.
(100% opt-in/out)

Email

13 Responses to “When Web Developers Dont Consider Usability”

  1. GoldenCharm says:

    Your persistent shopping cart links not working otherwise great post !

  2. babafisa says:

    Good article . Will definitely copy it to my blog.Thanks.

  3. Toby says:

    It’s a nice rhetorical flourish, but your naive developer “Brian” wasn’t asking if building for a bad experience was a problem, he was asking about storing too much data in his sessions. Which is also a problem…

    Presumably most developers watching this exchange would have stepped on the brakes reading his first paragraph, with “I know this has
    been done a million times in a million open source projects”. It’s like hearing someone say “I’ve decided to build a car with my bare hands; I know Toyota has already perfected it, but I’ll just reason my way through the process – how tough can it be, anyhow?”

  4. Sadly, that’s a pretty persistent problem that I’ve noticed. Usability improvements continue to be a major issue for most sites I find – they get the customers in, but lose them. I know my site could use a lot too…

  5. Anna says:

    Its difficult for developers who are new to e commerce to consider usability fully and unfortunately the only way to learn is to make mistakes on peoples sites. Sad but true

  6. Linda Cramer says:

    I’m not sure customers hate registering. If you know you’ll be back to a site often and you are happy with your experience there. I think registering to save your data is valuable and done by many people who want to save time.

  7. Inigo says:

    Or you can go with a package that already allows for persistent shopping carts e.g. Magento. Add the item to the basket, quit browser, come back and it’s still there in the cart…

  8. Toucouleur says:

    @Inigo = you seems to be a Magento resselers without the knowledge of his own products. Of course you can manage persistent shopping cart, but users won’t have their cart stored for all the time.

    As Toby mentioned above, the problem with persistent cart is how we can manage sessions data stored for a long time.

    We are currently working on Magento & OsCommerce’s solutions to find out how persistents carts could be improved to manage unregistered shopping carts.

  9. Couple of questions after reading this:

    How many people explicitly and knowingly turn off total cookie support in their browser?

    If you try to implement some sort of ‘persistent cart’ experience (somehow without using cookies) what about privacy of people using public systems? There are privacy concerns that need to be balanced with ‘usability’ which don’t seem to be addressed here.

  10. Linda Bustos says:

    @Michael,

    The cookie problem is more of anti-spyware programs that delete cookies on behalf of the user on a regular basis.

    Re: persistent carts without cookies, are you referring to session IDs? Yes they carry some security risks if the session URL is somehow bookmarked or shared. This article may be of interest to you in that regard
    http://searchsoftwarequality.techtarget.com/news/article/0,289142,sid92_gci1156684,00.html

  11. Tim says:

    I will bless the day I can work with people like you. Great(!) article and insight. And consider me a returning customer ;)

  12. soccer says:

    How will we have money to support millions of more people in the future?

  13. free vpn says:

    He probably has “X” amount of dollars to spend in this exercise. Make sure he buys at least ten stocks.