Rick Osborne's CET4583 Assignments

Assignment A5 — Case Study

“Perform a case study of an existing web-based application”

For this assignment, I chose ThinkGeek.com, an online store that is popular among the online gaming and web developer communities.

Goals

Purpose & Audience

From their About Us page:

“ThinkGeek started as an idea. A simple idea to create and sell stuff that would appeal to the thousands of people out there who were on the front line and in the trenches as the Internet was forged.”

Setup

Architecture

Primary navigational menu

The primary navigation for the site is hierarchical, via the prominant navigational menu on the top left of the page. A drop-down menu below this allows the user to view a cross-section of products with a common cross-category theme (such as “Gifts Under $20”). There are a few random links available, mostly via in-house advertising and cross-selling, and almost no linear navigation.

Technology

RSS feed for new items

From their About Us page:

“ThinkGeek runs a homegrown system developed primarily in Perl [..] through a heavily customized combination of Apache, mod_perl and mod_ssl. [..] All of our production servers run RedHat Linux (but transitioning to Centos); our development servers are all Gentoo. [..] Our WarpSpeed checkout is based off the AJAX web application framework OpenThought developed by Eric Andreychek.”

They also host two RSS feeds to help customers keep up-to-date on changes to their site: one for new items, and one for items on clearance.

Comments

Good Features

Sortable product listings

As the demographic for the site is experienced web users, much of the usability of the site appeals to me. For example:

Mis-Features

Non-AJAXy checkout

I have only one gripe with the site and it is relatively minor: I'd like to see more in-page navigation done with AJAX. That is, I am becoming accustomed to web interfaces whee I can login to my account without leaving the page I am on. Similarly, it would be nice if I could add products to my shopping cart without leaving the a product listing. Of course, these aren't necessary refinements, but for a site aimed at web geeks, I would expect a bit more whiz-bang.

Development Paths

Think they site could use a bit of “progressive enhancement” in the form of in-page actions like login and adding to your shopping cart. The traditional multi-page approach could be kept around for older browsers, but a one-page approach would speed up the customer's usage of the site, and thus reduce the shopping cart abandonment rate.