Account Creation Improvement Project/Technical
|This page is currently inactive and is retained for historical reference.|
Either the page is no longer relevant, or consensus on its purpose has become unclear. If you want to revive discussion regarding the subject, you should seek broader input via a forum such as the Village pump.
Our goal is to increase the number of people who successfully follow through after clicking on the "create account" link (i.e. create a user account) and make at least one edit after account creation.
Current account creation flow
Here is the current flow on the English Wikipedia:
Current steps for account creation:
Overview of the elements that will be A/B tested
The following diagram shows the elements which will be A/B tested:
Each of the three main steps within the flow will have multiple versions. Examples of each of these versions are included.
Requirements for A/B
Test settings management
There needs to be a configurable way to manage various 'treatment plans' and rates of users to get them. At the very simplest, a global configuration arrays that looks like this:
The software may need to send edit data to the data collection mechanism, depending on what mechanism we use for data collection.
A/B-testing in step 1 (Login)
On page load, the software needs to check if the user has a "bucket" cookie set. If not, user will need to be given a bucket cookie that corresponds to the bucket they're in. Based on this, the user will be sent to the appropriate login page. This will need to send information to the data collection mechanism.
A/B-testing in step 2 (Account creation page)
On page load, the software needs to perform the same check as above, and be sent to the appropriate account creation page, and this will need to be sent to the data collection mechanism.
A/B-testing in step 3 (Confirmation)
Use of the function "UserLoginComplete" in "Specialuserlogin.php": the developer needs to deploy an extension that provides a switcher which switches based on the configuration settings in the function "successfulCreation()". This switcher will send people either to the existing page "MediaWiki:Welcomecreation" or to a new page "MediaWiki:WelcomecreationAlternative". MediaWiki:Welcomecreation is the existing page that is shown to all users who create an account. Every admin on a local Wikipedia will be able to change it. For the bigger language versions of Wikipedia it will be sufficient if 20% of the new users will be directed to the new page MediaWiki:WelcomecreationAlternative that we use for our testing purposes. The other 80% will see the existing MediaWiki:Welcomecreation. This ratio needs to be adjustable, as smaller language versions will need a higher percentage of users to be directed to our new testing page. So, the percentage of users going to MediaWiki:WelcomecreationAlternative needs to be customizable on a project level.
A/B testing examples
For content development, see Account_Creation_Improvement_Project/Testing_content.
Step 1 (Login)
Step 2 (Account creation page)
Step 3 (Confirmation)