Wikimedia Features engineering
Current projects[edit | edit source]
|Project||Description||Project lead & team||Status|
|Editor Retention: Editing Tools|
|VisualEditor||Creating a visual editor for MediaWiki, other platforms and the Web at large||James Forrester, Trevor Parscal, David Chan, Roan Kattouw, Inez Korczyński (Wikia), Rob Moen, Ed Sanders, Moriel Schottlender, Timo Tijhof, Christian Williams (Wikia), Rummana Yasmeen||
Status: (2014-03-06 (MW 1.23wmf17))
VisualEditor was updated as part of the wider MediaWiki 1.23wmf17 branch deployment on Thursday 6 March. In the week since 1.23wmf16, the team made a big simplification to template editing, as well as a number of minor feature improvements and fixes for several bugs.
Editing transclusions and (particularly) editing templates has been made much simpler, with a simple, small version of the transclusion dialog, now called the template dialog, that removes most of the controls that are only rarely used. The layout has been simplified to reduce whitespace, make the form much more compact for normal uses, and make it easier and simpler to see what each parameter does. You can switch back and forth between the simple and advanced mode by pressing a button labelled "Show options" (or "Hide options") if you need one of the tools, such as for multi-part templates (bugs 51135, 51672, 52576, 52753, 55434, 61402, 61529, and 62142). The template dialog's parameters now expand on display, rather than needing to be clicked on the first time, and are limited to 10 rows (bug 62084).
Following on from last week's work on default media item sizes, the media editing dialog had a number of improvements made to it to simplify the options and make them slightly closer to what MediaWiki encourages users to do. Most obviously, the position (left/right/centre) buttons now have little icons to demonstrate how the content will flow around them; the item type setting added "basic" (for images with none of "thumb", "frame" or "frameless" specified) and moved "border" to be an option that can only be used for frameless and basic items. The "set to full size" option has been moved to be one of the three sizing options, alongside default and custom size; default is now only available for thumb and frame images, as frameless and basic images don't use thumbnail size (bugs 61059, 61155, 61973, and 62024).
"Slugs", the fake blank lines inserted by VisualEditor next to items like images or templates to give you somewhere to put the cursor, now show as slightly smaller than a real blank line, and animate on hover and cursor entry, to highlight to users that they are different from actual blank lines (bug 47790). The initial styling was selected quickly to get this feature available to users for feedback, and is likely to change; suggestions are welcome, especially on how to communicate their intent.
We added support to VisualEditor for having multiple shortcuts for each command (bug 53356), which means that we have now been able to add + / + as a second control for undo (bug 52140), + / + for clear formatting, as used in OpenOffice (bug 56453), and + + / + + for the shortcut dialog itself. The page menu button () now has a tooltip explaining what it is (bug 61892), and the "Insert" menu now has the same order in the toolbars on the media dialog's caption editor and reference dialog's content editor (bug 62286). Categories which are hidden show in their own section in the dialog when searching for them to add. An initial set of improvements to the special character inserter were done based on feedback; the insertion buttons now have much larger characters, are less "heavy" controls, and are the same width so they line up with each other. The keyboard shortcuts dialog now supports platform-specific messages, so Mac users will see the appropriate control codes.
A regression that meant that the save dialog stopped expanding when you switched to the "review your changes" panel has been fixed (bug 60494). We fixed a breakage from last week's image changes that meant that thumbnails with no position would display as only a couple of pixels wide, and released it immediately to existing wikis (bug 62013).
A very major change to how the "enter" key is handled in the core of VisualEditor was merged which fixed a few minor issues throwing errors (bug 59911), but shouldn't have any other effect. We fixed a bug that threw an error when you opened a page which had a floated item (like an infobox or a media item) in a bulleted list item (bug 62022). There was a bug that meant that on opening the page settings dialog the focus was still on the main document, so typing still affected that one (bug 62027). We fixed an issue that meant that objects with "phantom" blue boxes showing that they were selected, once made invisible, didn't have their phantoms disappear (bug 61390). A bug that meant undoing creating an empty heading caused an error was fixed (bug 62088). The formatting menu to set heading, pre-formatted or paragraph no longer responds to right clicks in some browsers (bug 61856). Text inputs now show up as grey when disabled, to make them look less similar to enabled ones.
The back-end of VisualEditor and its UI framework, OOjs UI, were both modified significantly to support re-use by other teams, notably including the Mobile and Multimedia teams at WMF.You can monitor the live results of the automated browser tests (triggered every twelve hours) on the server. A complete list of individual code commits is available in the 1.23/wmf17 changelog, and all Bugzilla tickets closed in this period are on Bugzilla's list.
|Parsoid||A bidirectional wikitext parser and runtime. Converts back and forth between wikitext and HTML/XML DOM with RDFa.||James Forrester, Gabriel Wicke, C.Scott Ananian, Arlo Breault, Marc Ordinas i Llopis, Subramanya Sastry||Status: (2014-03-monthly)|
|Flow||Initial ideas for the user "home page" feed system, including modules.||Terry Chay, Andrew Garrett, Benny Situ, Brandon Harris, Erik Bernhardson, Maryana Pinchuk, Matthias Mullie, Oliver Keyes, S Page||
This month, Flow was launched on the talk pages of two English Wikipedia WikiProjects that volunteered to be a part of the first trial, WikiProject Breakfast and WikiProject Hampshire. We've continued to iterate on the front-end design of the discussion system based on user feedback, releasing a new visual treatment during the trial and starting work on a front-end rewrite for better cross-browser and mobile compatibility (to be released sometime in March). We also spent time making sure Flow integrates better with vital MediaWiki tools and processes (e.g., suppression and checkuser) and improving the handling of permalink URLs.
|Growth||To create sustainable growth in the community of editors on Wikimedia projects.||Terry Chay (EPM), Matt Flaschen, Aaron Halfaker, Pau Giner, Sam Smith, Steven Walling||
Wikipedia onboarding experience on additional projects. The GettingStarted extension was deployed to 30 Wikipedias, including all of the top 10 projects by number of page views. This marks the first time its task suggestions and guided tours were available outside English projects. The GuidedTour extension was also deployed to those projects (as a dependency of GettingStarted), as well as the Czech Wikipedia and se.wikimedia.org. Late in the month, the team also presented its work at its first Quarterly Review of the 2014 calendar year (see slides and minutes).
|Support (Fundraising, Education…)|
|Wikipedia Education Program||Wikipedia Education ProgramA MediaWiki extension to support the||Terry Chay, Andrew Russell Green, Sage Ross, Jeroen De Dauw (original author)||
For the first half of the month, we focused on the current Education Program extension. We fixed many old and new bugs—including a few remaining database-related problems—and improved the UI for editing courses. Also, two Facebook Open Academy students started work on new notifications for the extension. In mid-February the team shifted our focus to creating new software for many kinds of collaborative editing, including, but not limited to, Education Program courses. The first phase of this work, called editor campaigns, is being carried out with the Growth team.
Future and backburner projects[edit | edit source]
|Project||Description||Project lead & team||Status|
|Article Creation Workflow||A feature to improve the article creation workflow for new editors.||Fabrice Florin, Benny Situ, Ryan Kaldari, Ian Baker, Brandon Harris, Oliver Keyes, Howie Fung, Dario Taraborelli, Terry Chay||
|GlobalProfile||A set of features to help users provide information about themselves and associate by interests.||Alolita Sharma, Brandon Harris||
This project was on hold in September, because of a lack of development resources.
|Community prototyping||Features development to support community research and community change experiments.||Alolita Sharma, Katie Horn||
In December, active development has begun on the user metrics API project in E3. The effort is threefold: to standardize user metrics , to build infrastructure to efficiently compute metrics for a large set of users [2,3], and finally to expose those results via an API. The technical portion of this project is written in Python and Flask, and the assigned resources are Dario Taraborelli and Ryan Faulkner. Development and documentation efforts will be continuing through January. https://gerrit.wikimedia.org/r/gitweb?p=analytics/E3Analysis.git;a=summary
|LiquidThreads 3.0||LiquidThreads extension to improve its back-end and UIA rewrite of the||James Forrester, Andrew Garrett, Brandon Harris,||
"Further deployments of LiquidThreads are indefinitely on hold because we don't have the resources to support it." – Andrew Garrett (2012-03-19) there is no further development expected.
|Etherpad lite integration||Create a project page for this activity (how-to)|
|MoodBar||A feature to encourage new users to provide feedback.||Alolita Sharma, Brandon Harris, Howie Fung, Ian Baker), Rob Moen, Benny Situ||
|Mobile/Athena||Create a project page for this activity (how-to)|
|FlaggedRevs maintenance||A feature to allow changes made by logged-out and new users to be reviewed before they appear as the primary version of an article.||James Forrester, Matthias Mullie, Aaron Schulz||
No update this month.
|MicroDesign||Low hanging fruit||Howie Fung, Oliver Keyes, Munaf Assaf, Vibha Bamba, Rob Moen, Benny Situ||
|UploadWizard||Wikimedia Commons, the media library associated with Wikipedia.A feature that provides an easier way of uploading files to||
Rob Lanphier (engineering director)
No update this month.
Recently completed projects[edit | edit source]
|Project||Description||Project lead & team||Status|
|Feedback Dashboard||A dashboard allowing experienced users to answer comments and concerns coming from MoodBar||Fabrice Florin, Brandon Harris, Ian Baker, Rob Moen, Benny Situ, Alolita Sharma||
We implemented a leaderboard of recent top responders on the feedback dashboard. New editor feedback is now added to a dedicated log. When feedback is marked as helpful, that fact is displayed on the feedback dashboard itself. Other than a few other smaller changes, we're now moving the project into maintenance mode to focus on article creation workflow and New Page Triage.
|WikiLove||An extension to encourage expressions of appreciation between users.||Alolita Sharma, Ryan Kaldari, Jan Paul Posma, Roan Kattouw, Brandon Harris||Status: (2011-08-01)|
|Page Curation||Interface for reviewing new pages||Fabrice Florin, Ryan Kaldari, Benny Situ, Brandon Harris, Vibha Bamba, Howie Fung, Terry Chay||
Page Curation is now in 'maintenance mode', following its release on the English Wikipedia in September 2012. There was no significant development activity on this project this month. Oliver Keyes has completed a project to look at various ways of localizing Page Curation to any and all wikis that want it: it is currently being reviewed by Howie Fung to assess its feasibility.
Create infastructure for providing guided tours, as well as some initial tours
|Terry Chay, Matt Flaschen, Steven Walling||
Matt Flaschen and Sam Smith met on GuidedTour refactoring, and decided next on steps, including testing out the proposed domain-specific language, reviewing existing tours, and refactoring the user state code.
|2012 Wikimedia fundraiser||Engineering support and development for the 2012 fundraiser of the Wikimedia Foundation||Katie Horn, Peter Gehres, Adam Wight, Matthew Walker, Jeff Green||
In March, we wrapped up our 2012/13 non-English international fundraising efforts, making approximately 5 million USD over the course of the month. Originally, we had planned to run the non-English international fundraiser continuously until June, but were forced to accelerate our plans due to some potential instability at the beginning of April with one of our crucial payment gateways. At the very end of March, we started publishing aggregate public fundraising data to samarium.wikimedia.org.
|Notifications||Project hub for the Notifications infrastructure and UI (code-name: Echo)||Fabrice Florin, Terry Chay, Howie Fung, Ryan Kaldari, Benny Situ, Luke Welling, Vibha Bamba, Brandon Harris, Oliver Keyes, James Forrester, Andrew Garrett, Matthias Mullie||
In October, we released Notifications worldwide on about 800 different sites, including most of the remaining Wikipedia wikis and 'sister projects'. Fabrice Florin and Keegan Peterzell managed the community outreach for these final releases, while Benny Situ proceeded with the technical deployments. Community members we've spoken to generally find this tool helpful, across languages and world regions. Notifications are also available on mobile devices, and seem to be adding value on these platforms as well. We now plan a final release of Notifications on the German and Italian editions of Wikipedia at the end of November. To learn more, visit our project hub, read the help page and join the discussion on the talk page.
|Article feedback||A new tool to engage readers to improve articles on Wikipedia.||Fabrice Florin, Matthias Mullie, Pau Giner, Oliver Keyes, Dario Taraborelli, Howie Fung, Erik Möller||
There was no activity on Article Feedback in October, as we await the results of the French pilot to determine our next steps for this project.
|2013 Wikimedia fundraiser||Engineering support and development for the 2013 fundraiser of the Wikimedia Foundation||Katie Horn, Peter Gehres, Adam Wight, Matthew Walker, Jeff Green||
The fundraising team has been steadily ramping up to the big English fundraiser, and so the fundraising tech team has been transitioning into their usual year-end fundraising monitoring and support role. At the end of October, we went in to a feature freeze for CentralNotice, and have been concentrating on bugfixes with the intent of increasing stability on the payments cluster and in the rest of the donation pipeline. We have also started planning for the international fundraising campaigns targeted for early 2014.