Thursday, July 24, 2008

Django: Error while importing URLconf 'django.contrib.admin.urls': No module named urls

(permalink)
I didn't see a lot on google about this error so I thought I'd post something. If you're getting it, it's likely you updated to the latest Django SVN release, and haven't upgraded your admin site's configuration.

Read more here: http://code.djangoproject.com/wiki/NewformsAdminBranch

Labels:

Thursday, July 03, 2008

One button sign up (continued)

(permalink)
There have been a number of comments about my previous post a one button sign up. I thought I'd re-post them here and clarify.

OpenID is easier: http://openid.net/

OpenID is easier and it's not mutually exclusive to what I'm suggesting here. OpenID or not, many websites will still need to collect additional information. The idea is not to force the user to give you that information in order to use basic site functionality.

If a user sees an auction ending in 1 minute but is then required to jump through some hoops before bidding - thats just as bad an experience.

You're right - so maybe eBay should require accounts just to browse listings? Obviously, that idea doesn't make sense. You shouldn't force the user to sign up early just so that in the off chance they want to bid on an item that's ending soon, they can.

Instead, I'm suggesting you give the user as much access to the site as possible, as soon as possible. Prompt the user for additional information with messages like "Update your address for quick bidding." If your users decide to wait, that's their decision - don't make it for them.

I want to feel involved. Plus, if I'm using a website to the extent that I'm going to want a username and password I pretty much expect that I may have to fill out more information upon registration so it is not as bothersome.

I disagree. Long and tedious registration forms are a horrible way of involving the user. The less information a user needs to enter for the same functionality, the better.

By giving people random user names, you force them to do more work long term.

Step 1: Click the one button and get my user name Step 2: Go write it down somewhere Step 3: Cookie expires/is cleaned - now user forgets the random user name or email. Step 4: Go look it up, enter info


The user should never actually see (or need to remember) their random username. What I was referring to is simply a unique backend identifier. Tracking a user without a username isn't that radical - even Amazon does it.

Amazon (and other stores) do one button sign ups

When I first visit Amazon, the site gives me as much functionality as possible. I can look at products and even add them to my cart - without logging in. Like I was suggesting - Amazon does upsell for more information, prompting you with messages like "Sign in to turn on 1-Click ordering."

After I've visited a product page, I'm in Amazon's database. In this example, simply viewing a product is the equivalent of "signing up" - even though the user doesn't realize that. That's great. Sign up buttons don't always have to be big and green. Ideally, the first step of the sign up process should occur transparently.

Every time I return to the site, Amazon recognizes who I am and suggests similar products to ones I've already viewed:



Now, if I choose (or am required) to create a login, Amazon seamlessly associates it with all my previous "anonymous" data. For example, I still have my previous browse history:


By making it as easy as possible to start using the site, creating a "transparent user" to track my history, and up-selling to gather more information in order to gain additional functionality, Amazon is doing almost exactly what I described in the previous post.

But why limit this process to online stores which by their nature must collect most user information during checkout? Every site should collect as little information as feasible and do it as late in the user experience as possible. That's the whole premise behind one button sign ups.

Wednesday, July 02, 2008

One button sign up

(permalink)
I've stumbled across a new sign-up process: one button. That's it. From now on, the user will only have to click a button on all of my new projects to sign up.

"But Sam," you might ask, "How will you collect user information?"

Easy. Ask for it when you need it. If you only ask for the user's address when the user wants to do something that requires their address, then you have a carrot to encourage the user to give you that information.

If you ask for the address up front, then not only does the user have little incentive to give it to you, but you discourage the user from signing up at all

Take, for example, ebay's registration form:



Does ebay really need my address if I just want to watch an item? Requiring me to fill out all this information just to preform basic actions (like watching an item or searching closed auctions) discourages me from using the site at all.

Why not not create a "one button" sign up with a default user account and random username? Allow me to use as much of the site as possible, while asking for (but not requiring) information to gain additional access.

"But Sam", you counter again, "what if the user forgets their random username?"

That's easy, authenticate with cookies and/or a unique URL (see craigslist). At the same time, prompt the user (maybe at the top of every page) for a unique username or email address for logins.

EDIT: I've continued this discussion in my next post, One button sign up (continued)