Research:Visual editor usage (January, 2014)

From Meta, a Wikimedia project coordination wiki
Jump to navigation Jump to search
Contact
Halfak (WMF) (talk)
Duration:  2014-01 — 2014-01
Open data project  Open data
no url provided
GearRotate.svg

This page documents a research project in progress.
Information may be incomplete and change as the project progresses.
Please contact the project lead before formally citing or reusing results from this page.

In this study, we examined the usage rate of mw:VisualEditor (VE) in the list of Wikipedia projects where the editor is enabled by default (see [1]). To infer about recent activities, we limited our analysis to the most recent month: January, 2014.

Methods[edit]

For each wiki were VE is enabled by default, we ran the following query to gather hourly edit counts:

SELECT
    DATABASE() AS wiki,
    LEFT(rev_timestamp, 10) AS hour,
    IF(
        rev_user = 0, 
        "anon",
        IF(post_ve.user_id IS NOT NULL, "post-ve","pre-ve")
    ) AS user_type,
    ve_tag.ct_rev_id IS NOT NULL AS visualeditor,
    COUNT(*) AS edits
FROM revision
LEFT JOIN change_tag ve_tag ON 
    rev_id = ct_rev_id AND
    ct_tag = "visualeditor"
LEFT JOIN user post_ve ON
    rev_user = user_id AND
    user_registration >= "20130701210000"
WHERE rev_timestamp BETWEEN "20140101" AND "20140128"
GROUP BY 1,2,3,4;

The result of these queries was inserted into a MySQL table. In order to fill in missing values, the following query joined the cross product of wiki, hour, user_type and visualeditor:

INSERT INTO ve_hourly_edits
SELECT
    all_possible.wiki,
    all_possible.hour,
    all_possible.user_type,
    all_possible.visual_editor,
    0
FROM (
    SELECT
        wiki,
        hour,
        user_type,
        visual_editor
    FROM (SELECT DISTINCT hour FROM ve_hourly_edits) AS hours
    JOIN (SELECT DISTINCT wiki FROM ve_hourly_edits) AS wikis
    JOIN (SELECT DISTINCT user_type FROM ve_hourly_edits) AS user_types
    JOIN (SELECT DISTINCT visual_editor FROM ve_hourly_edits) AS visual_editor
) AS all_possible
LEFT JOIN ve_hourly_edits ve USING(wiki, hour, user_type, visual_editor)
WHERE ve.wiki IS NULL

Results[edit]

How many visual editor edits per hour?[edit]

editor edits/hour
visual editor 539.4746
wikitext 6925.1757
SQL
SELECT
    IF(visual_editor, "visual editor", "wikitext") AS editor, 
    avg(edits) as "edit/hour" 
FROM (
    SELECT
        hour, 
        visual_editor, 
        SUM(edits) as edits 
    FROM ve_hourly_edits 
    GROUP BY 1,2
) hourly_edits 
GROUP BY 1;


How do the edits break down by user type?[edit]

Editor types
  • Anon -- An IP editor (rev_user = 0)
  • Pre-ve -- An editor who registered before VE was launched user_registration < "20130701210000"
  • Post-ve -- An editor who registered after VE was launched user_registration >= "20130701210000"
editor editor type edits/hour
visual editor anon 371.5439
visual editor post-ve 84.6317
visual editor pre-ve 83.2989
wikitext anon 746.0894
wikitext post-ve 786.3436
wikitext pre-ve 5392.7427
SQL
SELECT
    IF(visual_editor, "visual editor", "wikitext") AS editor, 
    user_type,
    avg(edits) as "edit/hour" 
FROM (
    SELECT
        hour, 
        visual_editor,
        user_type,
        SUM(edits) as edits 
    FROM ve_hourly_edits 
    GROUP BY 1,2,3
) hourly_edits 
GROUP BY 1,2;


References[edit]