Editor retention: Editing tools
In December, the team deployed to the English Wikipedia
an alpha version of the VisualEditor for editors to use and give feedback on issues and priorities. The team’s work focussed on ensuring that the integration was reliable, and providing a dedicated tool for editors to report problems with editing, and, after deployment, addressing the reports and ideas from editors. The early version of the VisualEditor on mediawiki.org was also updated to use the new developments (as part of 1.21-wmf6
project reached a major milestone with its first deployment to the English Wikipedia along with the VisualEditor. This was a major test for Parsoid, as it needed to handle the full range of arbitrary and complex existing wiki content including templates, tables and extensions for the first time.
As witnessed by the clean edit diffs
, Parsoid passed this test with flying colors. This represents very hard work by the team (Gabriel Wicke, Subramanya Sastry and Mark Holmquist) on automated round-trip testing
and the completion of a selective serialization strategy just in time for the release.
After catching their breath, the team now has its sights on the next phase in Parsoid development. This includes a longer-term strategy for the integration of Parsoid and HTML DOM into MediaWiki, performance improvements and better support for complex features of wikitext.
Editor engagement features
This month, the team continued to develop key features of the Notifications project (code-named ‘Echo’), and deployed a first experimental release on mediawiki.org. Fabrice Florin expanded feature requirements
for this release, and Vibha Bamba designed more components of the user experience
. Ryan Kaldari and Benny Situ developed improved notification flyouts and email digests, as well as new notifications such as page links. Luke Welling built an HTML email module, which will soon be available to other projects as well. We plan to develop more features this month and deploy them for new editors on the English Wikipedia in early 2013. Please help us test
these new features to provide feedback and find bugs. We’re also looking to hire a software engineer
as part of this project.
We made good progress
on Article Feedback version 5
this month. We completed a research study
on the English Wikipedia, confirming that many readers use this feature and a sizable number of them go on to register and become editors. Based on that research and editor suggestions, we started development on new features
to reduce the editor workload through better filters and simpler moderation tools. We also continued to refactor our code, to support millions of comments on a dedicated database cluster to be deployed in coming months. Once this work is complete, we plan to release Article Feedback v5 to 100% of the English Wikipedia in March, and to other Wikimedia sites later this year. The German Wikipedia has already started a pilot
to evaluate this tool, and a similar initiative is also under discussion
on the French Wikipedia.
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.
Editor engagement experiments
Editor engagement experiments
In December, the Editor Engagement Experiments team launched a new test aimed at Onboarding new Wikipedians
. This interface delivers an optimized task list immediately after sign up, inviting those without an idea of how to get started to choose an article and try their hand at editing. The related GettingStarted extension
was deployed mid-month and continued to evolve throughout the month, as early quantitative and qualitative research was conducted.
To go along with the launch of GettingStarted and other experimentation, EventLogging
underwent heavy development, including the launch of a new Schema namespace on Meta for defining the data collected in a public, collaborative manner. We created production schemas for GettingStarted
, account creation
, mobile, and more
. Ori Livneh also reworked the format, transmission, and cleanliness of data delivered to analysts and product managers, automatically generating database tables from these schemas for incoming events.
Late in the month, the team collaborated with fundraising to reach out to donors and readers
as part of the annual fundraising campaign via email and a “Thank You” banner which ran at the end of the year. In addition to introducing millions of donors and readers to the Wikipedia editor community and inviting them to join, this campaign helped the team establish an experimental baseline for what a campaign to convert readers might look like.
In addition to the above launches, we continued development of the new account creation experience and Guided Tours
by Matt Flaschen, which will be launched in January 2013. Active development was also begun by Ryan Faulkner and Dario Taraborelli on a user metrics API
. The effort is threefold: to standardize user metrics in data analysis, to build infrastructure to efficiently compute metrics for a large set of users, and finally to expose those results via an API.
2012 Wikimedia fundraiser
The 2012 annual fundraiser continued in December and was a resounding success. In addition to the ongoing maintenance required to operate the fundraiser, the team helped to execute the Thank You campaign
and started to put into place new tools for auditing the fundraiser after its completion.
- The Mobile development and design team worked to finalize contributory and other experimental editor-focused features on the Beta site (uploads, editing, and watchlist functionality) in order to clear the way for a full push on mobile uploads by March 2013. We also worked to improve the reader and potential editor experience by introducing features geared toward educating/engaging our users, such as a human-readable last modified timestamp for articles and watchlist, and thumbnail images to illustrate the watchlist view. Lastly, because of the huge interest we generated in our Beta testing site, we created an Alpha site to house very early work on contributory features, in order not to disrupt the reading experience of our 100,000+ Beta users.
GeoData Storage & API
During December Max Semenik
continued work on GeoData, the extension directly responsible for allowing us to easily store and retrieve GPS coordinates in our databases. Max migrated the extension from implementation, to code review, and finally deployment to the English Wikipedia. It will become 100% production-quality after a few more tweaks and fixes. After those changes, we’ll continue to roll out to the rest of the wikis. The extension is one of the precursors to having the “near by” feature on our mobile web site.
During the month of December, Patrick Reilly, Dan Foy and the rest of the Zero team launched Wikipedia Zero with a new partner, Orange Congo. They resolved operational issues that prevented the team from accurately recording traffic from the Opera browser. They also helped on-board Brion Vibber to help in the interim while the team continues to look for permanent members. The team is very excited about its upcoming launches
and will be announcing them as soon as possible.
The J2ME app is ready to launch pending contractual negotiations with carriers.
Wikipedia over SMS & USSD
The USSD service is ready to launch pending contractual negotiations.
The Mobile QA team planned and began several projects in December, in particular: an upcoming community test event for Mobile features; support for MobileFrontend in beta labs; and significant new UI-level automated tests in the gerrit queue.
We continued the bi-weekly deployment cycle, deploying MediaWiki 1.21wmf5
. We stopped deployments at the end of the month due to the holidays, restarting the 1.21wmf7
cycle on January 2.
There’s not much to report for the month of December so far with Gerrit. New repositories continue to be created, and the vast majority of active parts of SVN have been marked read-only by now. Upgrading to a newer version of Gerrit is still blocked on our LDAP problem with master, but the patch to fix that is nearly complete. Mid-December, we extended the Verified category to now allow +2 (in addition to +1 and -1), so Jenkins has a wider range of statuses it can report.
Jan Gerber continued to refine the TimedMediaHandler extension, making the transcoding steps more robust.
The Wikibase client extension was deployed to test2 in December. We plan further deployment work in January, deploying to the Hungarian language Wikipedia on January 14, 2013.
Captchas are ready to be served from Swift. They previously were for several days, but the configuration had to be reverted to due random errors from Swift. A new set of captchas are being tweaked for readability and are served from Swift on the test wikis. Captchas are one of the last NFS dependencies.
After an assessment by Asher Feldman, Patrick Reilly and Tim Starling, the RDB database patch was canceled. Instead, in the short term, a separate vertically partitioned data cluster will be provided as a temporary storage until a horizontally scalable architecture can be finalized. Matthias Mullie is modifying the RDB-dependent ArticleFeedbackToolv5 to remove that dependency through an abstraction layer. When a sharded or horizontally scaled solution is provided, AFTv5’s abstraction will be migrated. An initial assessment of various non-MySQL alternatives for using Aaron Schulz’s JobQueue core patch in 1.20 is being done for Echo
. Because of the time it takes to exhaust the Echo queues, it is written to bypass the JobQueue through direct calls. Luke Welling is abstracting the JobQueue for Redis, ZeroMQ, and others.
Admin tools development
Wikia has completed a preliminary prototype (deemed to be disposed of after all the valuable data has been collected) in order to validate the design and its core concepts, identify and explore possible issues and test limits imposed by the platform. It will allow be used to explore the usage of PHP 5.4’s new features to ease the implementation of a maintainable versioning system (the prototype abuses PHP’s implementation of namespaces in some cases, this is not meant to persist in the final prototype but was rather a stress test), test human-readable formatting for responses when called by specific clients, and measure overhead added by the software abstraction. As a result, some pain points and alternative routes have been identified on which research work will be carried on in late January/beginning of February 2013, leading the team closer to a final implementation and related RFC. The code will be available for a short time in a dedicated branch
at Wikia’s app repository at Github
Security auditing and response
The team continued to respond to several reported vulnerabilities. A follow-up security review for Wikidata phase 2/3 was done.
The project to support MobileFrontend in Beta labs continues. We intend for Beta labs to become a test environment for the new git-deploy script from the Operations team: this should be helpful in ongoing maintenance of the environment
The last Jenkins jobs (mostly Analytics ones) that were still using the Gerrit Trigger plugin have been migrated to being triggered by Zuul. Zuul now support triggering tests for whitelisted users. This has been deployed to let trusted users have unit tests run whenever they send a patchset in mediawiki/core (gerrit change 39310
). Volunteer Merlijn van Deen built a script to replicate our Jenkins installation
and worked on having extensions tests run on different MediaWiki branches.
After its announcement about the state of automated browser testing
on wikitech-l, the QA team continued to expand test coverage, improve system and project documentation, and publicize and socialize the project by means of the “Browser Testing” MediaWiki Group
Kraken (Analytics Cluster)
LDAP Hue/Hadoop authentication works, but group file access still needs to be worked out. We’ve puppetized an Apache proxy for internal Kraken and Hadoop web services, as well as udp2log kafka production and kafka hadoop consumption. The event.gif log stream is being consumed into Hadoop. We’re attempting to use udp2log to import logs into Kafka and Hadoop without packet loss, and backing up Hadoop service data files to HDFS (e.g. Hue, Oozie, Hive, etc.).
A major rework of Limn to use d3.js and Knockout.js is complete and will be used for the next ReportCard. Dan Andreescu and David Schoonover are working on graph editing and geospatial data visualization.
Daniel Zahn and Andre Klapper upgraded Bugzilla to the latest stable version (4.2.4) which provides higher flexibility for displaying interface elements, improved custom search, better JSON-RPC support and a solid base for future improvements being considered. Andre continued to improve the bug management documentation
. Many bug reports that were previously closed as RESOLVED LATER were retriaged and RESOLVED LATER was disabled for future use, and a large number of previously unprioritized bug reports received a priority setting. Furthermore, Andre looked after reports about CSS issues after the MediaWiki 1.21wmf5
deployment and followed up by triaging, creating requested Bugzilla components, etc. Several smaller regex fixes were deployed in Bugzilla to fix automatic linking to Gerrit changesets. A “patch in gerrit” bug status was discussed on wikitech-l
with the conclusion to wait for automatic notifications (comments) from Gerrit into Bugzilla about patch status changes first (which is being worked on by the Wikidata team).
Six MediaWiki candidates have been announced
for the Outreach Program for Women
(OPW). 4 of them are funded by the Wikimedia Foundation and 2 by Google through an agreement with the GNOME Foundation, organizers of the program. They will work as full-time interns under the supervision of MediaWiki mentors between January and March 2013. We got 10 submissions from about 25 people interested. The rather open and participatory selection process
we have defined for OPW will be used as a basis for future mentoring programs. We’ve also started matchmaking for the LevelUp
mentorships for the coming quarter.
published a project plan and timeline
for the consultation process started in October about how to improve 2-way communication between the technical and editing communities. He summarized
the results of the first phase and reached out to the wikitech-ambassadors list
to widen the consultation process by proxy. After consolidation and prioritization of the results, the most feasible solution appeared to be to grow a network of ambassadors
, which he started to organize on meta.
Unrelatedly, Guillaume made a list of 2012 tech blog posts
to map tech blog activity by month & subdepartment (with priority activities listed separately). Work on setting up a Volunteer product manager
program is also underway.
sorted out Social media
channels, and we now have @MediaWiki handles for identi.ca
. He published the community metrics November report
and a blog post
introducing this new activity.
Volunteer coordination and outreach
became official and the first proposals
are going through the approval process. As a side effect, a process for requesting regional mediawiki-themed mailing lists
has been created with mediawiki-india
as the first case. At least three Wikimedia-related talks have been accepted at FOSDEM