Account creation user experience

This is documentation for the editor engagement experiments team's work on the account creation process.

Background
Goals and rationale

Current


In addition to a CAPTCHA and fields for username, password, email, the MediaWiki messages that are currently part of the Create Account page include:


 * Fancycaptcha-createaccount, which includes extensive descriptions of the policies and practices around account creation
 * Prefs-help-email, which describes the optional email field
 * Prefs-help-email-others, also describes the optional email field
 * Signupend, links to Help:Logging in

Proposed
The new version which will be A/B tested against the current English Wikipedia account creation page (described above) should strive to make it easier to register by...


 * removing or reducing text wherever possible
 * aligning and restyling page elements to indicate their function and importance (e.g. by increasing the size of the "create account" button)
 * more clearly indicating what is required and what is optional
 * rewriting text to be easier to understand (e.g. simply calling the page "Create Account" rather than "Log in / create account" )
 * reducing the number of MediaWiki messages used in the page


 * Requirements
 * 1) Text describing required fields is no more than 12 words in length (the arbitrary word budget may be optimized in future tests)
 * 2) Color usage matches the currently proposed guidelines
 * 3) All form fields are validated before the user is allowed to submit their account details for registration. If validation fails, the error is indicated on the page without the need for refreshing or resubmitting the entire form.
 * 4) Registration should work without JavaScript. In particular, the same confirmation and error messages should be produced, but on submission of the entire form, instead of using live updates.


 * Optional
 * 1) The password field includes a strength indicator.
 * 2) The chosen username is tested against several qualitative heuristics outlined in the local Wikipedia username policy (e.g. contains a brand name or notable person's name).
 * 3) A concise list of the benefits of registration is present on the page. See /Benefits of signing up for drafts.

Technical documentation
This A/B test is an experiment, but with an eye toward permanent improvements to the account creation process. The following infrastructure has been used or can be used to refactor the registration page, and should be considered when choosing how to implement the user experience described above.

Usercreate.php
Seems to be the core function for signup? Not really documented anywhere.

Account Creation Improvement Project / CustomUserSignup extension
The Account Creation Improvement Project in 2011 had similar goals. Extension:CustomUserSignup was developed in 2011 to A/B test changes to account creation. As of July 2012, this extension is still active on en wiki, but only (?) for the user flow _Log in_ > Don't have an account? _Create one_.

To see the different experiences, go to Log in and reload until you see campaign=ACP1 /2/3 in the URL query string, then click _Create one_. Or try this

The separate "Create account" user flow in place on en wiki (what drives that?) does not "[icon] Log in"

TODO: Turn off this extension TODO: Harvest anything useful from its A/B testing.

SignupAPI extension
This was a Google Summer of Code project to improve the signup experience and develop an API, per the description at Requests for comment/Account creation. It's in Extension:SignupAPI; the code was recently blanked out in git for code review, there are code review comments in https://gerrit.wikimedia.org/r/#/c/8002/

TODO: Evaluate current status of Signup API, develop spec for it. In process in subpage /SignupAPI.


 * Q Works without cookies?
 * A: ?? TBD, testing won't follow through without cookies enabled. Unclear if the code checks for cookies disabled or just fails to set the userbucket.


 * Q Which browsers?
 * Firefox 12 Chrome 19 IE 8 Opera 11.64 Safari 534.47
 * Browsers that fail to meet the minimum requirements will probably be ineligible for the experiment (rather than letting them in possibly with degraded experience)

Data collection and analysis
See Meta