The report covering Wikimedia engineering activities (including upcoming events, new hires, and open positions) in March 2013 is now available. Thanks to Guillaume Paumier and Tilman Bayer and the engineers who helped me put this together. I'm sorry for delaying and sending out this announcement a few days after the blog posting.
Wiki version:https://www.mediawiki.org/wiki/Wikimedia_engineering_report/2013/March Blog version:https://blog.wikimedia.org/2013/04/04/engineering-march-2013-report/
Below is the full text of the report, including links.
We're also providing a shorter, simpler and translatable version of this report that does not assume specialized technical knowledge:https://www.mediawiki.org/wiki/Wikimedia_engineering_report/2013/March/summa...
As always, feedback is appreciated about the usefulness of the report and its summary, and on how to improve them.
Sumana Harihareswara Engineering Community Manager Wikimedia Foundation
Major news in March include:
- Open registrationhttps://blog.wikimedia.org/2013/03/27/join-the-wikimedia-hackathon-in-amsterdam-on-may-24-26-2013/for the Amsterdam hackathon, including travel sponsorship; - Lua scriptinghttps://blog.wikimedia.org/2013/03/11/lua-templates-faster-more-flexible-pages/launched on all WMF wikis, with implications for performance and structured data usehttps://blog.wikimedia.org/2013/03/14/what-lua-scripting-means-wikimedia-open-source/ ; - A redesign of the Translate interfacehttps://blog.wikimedia.org/2013/03/25/redesigning-the-translation-experience-an-overview/and other progresshttps://blog.wikimedia.org/2013/03/12/new-release-of-the-mediawiki-language-extension-bundle-and-other-updates/on translation and language-related tools; - Fresh, friendly instructions on reporting a technical problemhttps://blog.wikimedia.org/2013/03/18/how-to-create-a-good-first-bug-report/and an invitation to help prioritize problems to fixhttps://blog.wikimedia.org/2013/03/19/help-wikimedia-squash-software-bugs/ ; - Greater ability to upload images to Commons from mobile phoneshttps://blog.wikimedia.org/2013/03/11/putting-commons-contributions-in-your-hand-mobile-app-uploads/, allowing you to directly add a photohttps://blog.wikimedia.org/2013/03/28/add-an-image-to-this-article-uploads-now-live-on-mobile-wikipedia/to a Wikipedia article that has no image; - Collaboration with the Noun Projecthttps://blog.wikimedia.org/2013/03/13/the-noun-project-and-the-wikimedia-foundation-host-an-iconathon-to-create-an-encyclopedia-collection-of-free-icons/towards creating an "Encyclopedia Collection" of free icons; - A deeper look at Parsoidhttps://blog.wikimedia.org/2013/03/04/parsoid-how-wikipedia-catches-up-with-the-web/and the challenge of a better editing interface; - Wikipedia Zero winning a SXSW Interactive award for activismhttps://blog.wikimedia.org/2013/03/13/wikipedia-zero-wins-2013-sxsw-interactive-activism-award/and gaining a new partner, Axiatahttps://blog.wikimedia.org/2013/03/19/axiata-wikipedia-zero-partnership/ .
*Note: We're also providing a shorter, simpler and translatable version of this reporthttps://www.mediawiki.org/wiki/Wikimedia_engineering_report/2013/March/summarythat does not assume specialized technical knowledge. *
Engineering metrics in March:
- Approximately 113 unique committers contributed patchsets of code to MediaWiki. - The total number of unresolved commitshttps://gerrit.wikimedia.org/r/#q,status:open+project:%255Emediawiki.*,n,zwent from about 830 to about 816. - About 48 shell requests https://www.mediawiki.org/wiki/Shell_requestswere processedhttps://bugzilla.wikimedia.org/buglist.cgi?chfieldto=2013-03-31&keywords=shell&chfield=bug_status&query_format=advanced&keywords_type=allwords&chfieldfrom=2013-03-01&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&list_id=191650 . - Wikimedia Labs https://www.mediawiki.org/wiki/Wikimedia_Labs now hosts 154 projects and 1,103 users; to date 1,641 instances have been created.
Upcoming events
There are many opportunities for you to *get involved and contributehttps://www.mediawiki.org/wiki/How_to_contribute * to MediaWiki and technical activities to improve Wikimedia sites, both for coders and contributors with other talents.
For a more complete and up-to-date list, check out the Project:Calendarhttps://www.mediawiki.org/wiki/Project:Calendar .
Date Type Event Contact Mar 31–Apr 7 Offline Hackathon 2013http://www.kiwix.org/wiki/Offline_Hackathon_2013(Paris, France) Apr 1–Apr 7 QA: Fresh bugs triagehttps://www.mediawiki.org/wiki/Bug_management/Triage- Skin and page renderinghttps://www.mediawiki.org/wiki/Bug_management/Triage/20130402with a dedicated bugday on April 02nd AKlapper https://www.mediawiki.org/wiki/User:AKlapper_%28WMF%29, Valeriejhttps://www.mediawiki.org/wiki/User:Valeriej Apr 6 QA: Testing Americas focuses in the new Account creation user experiencehttp://weekendtesting.com/archives/2883 . Steven Walling https://www.mediawiki.org/wiki/User:Steven_%28WMF%29, Cmcmahon https://www.mediawiki.org/wiki/User:Cmcmahon%28WMF%29, Qgilhttps://www.mediawiki.org/wiki/User:Qgil . Apr 6 Iconathon with The Noun Projecthttps://www.mediawiki.org/wiki/Events/The_Noun_Project_Iconathon(San Francisco, CA, USA) VBamba (WMF)https://www.mediawiki.org/w/index.php?title=User:VBamba_%28WMF%29&action=edit&redlink=1, MAssaf https://www.mediawiki.org/wiki/User:MAssaf Apr 10 Language Engineering team https://www.mediawiki.org/wiki/Language_portal office hour in #wikimedia-office irc://irc.freenode.net/wikimedia-officeconnecthttp://webchat.freenode.net/?channels=#wikimedia-office Runa Bhattacharjee https://www.mediawiki.org/wiki/User:Runab_WMF Apr 11 Meetup: GSoC and other open source internship programshttp://www.meetup.com/Wikipedia-Engineering-Meetup/events/109096132/(San Francisco, CA, USA) Qgil https://www.mediawiki.org/wiki/User:Qgil Apr 14 THATCamp London 2013https://uk.wikimedia.org/wiki/GLAM-WIKI_2013/Hackathonand Europeana hackathon (London, UK) Wikimedia UK https://uk.wikimedia.org/wiki/GLAM-WIKI_2013/Hackathon Apr 15 QA: Old bugs triage https://www.mediawiki.org/wiki/Bug_management/Triage- topic to be definedhttps://www.mediawiki.org/wiki/Project_talk:WikiProject_Bug_Squad#Bug_Day_Topics_for_April_25280 AKlapper https://www.mediawiki.org/wiki/User:AKlapper_%28WMF%29, Valeriejhttps://www.mediawiki.org/wiki/User:Valeriej Apr 17 QA: Write browser testing automationhttps://www.mediawiki.org/wiki/QA/Browser_testingscenarios for the new Account_creation_user_experiencehttps://www.mediawiki.org/wiki/Account_creation_user_experience . Zeljko.filipinhttps://www.mediawiki.org/wiki/User:Zeljko.filipin%28WMF%29, Qgil https://www.mediawiki.org/wiki/User:Qgil, Cmcmahonhttps://www.mediawiki.org/wiki/User:Cmcmahon%28WMF%29 Apr 20 Last day to register for the May Amsterdam hackathon and request travel subsidy https://www.mediawiki.org/wiki/Amsterdam_Hackathon_2013 Multichillhttps://www.mediawiki.org/wiki/User:Multichill Apr 30 Last day to submit a talk for Wikimania in Augusthttps://wikimania2013.wikimedia.org/wiki/Submissions Wikimania organizing team https://wikimania2013.wikimedia.org/wiki/Contact Personnel Work with us https://wikimediafoundation.org/wiki/Work_with_us
Are you looking to work for Wikimedia? We are hiring for many positions, and we really love talking to active community members about these roles.
In Engineering:
- Director of Analyticshttp://hire.jobvite.com/Jobvite/Job.aspx?j=oJriXfw9 - Software Engineer - Editor Engagementhttp://hire.jobvite.com/Jobvite/Job.aspx?j=ovvXWfwD - Software Engineer - Parserhttp://hire.jobvite.com/Jobvite/Job.aspx?j=oIsbXfw2 - Software Engineer - Language Engineeringhttp://hire.jobvite.com/Jobvite/Job.aspx?j=oH3gXfwH - Software Engineer - Mobilehttp://hire.jobvite.com/Jobvite/Job.aspx?j=o4cKWfwG - Software Engineer - Multimedia Systemshttp://hire.jobvite.com/Jobvite/Job.aspx?j=oj40Wfw3 - Software Engineer - Multimedia User Interfaceshttp://hire.jobvite.com/Jobvite/Job.aspx?j=ohqbXfwz - Software Engineer - Searchhttp://hire.jobvite.com/Jobvite/Job.aspx?j=ogk1Wfwh - Product Manager - Mobilehttp://hire.jobvite.com/Jobvite/Job.aspx?j=oGWJWfw1 - Director of User Experiencehttp://hire.jobvite.com/Jobvite/Job.aspx?j=otv0WfwE - Visual Designer http://hire.jobvite.com/Jobvite/Job.aspx?j=oomJWfw9 - Dev-Ops Engineer (SRE)http://hire.jobvite.com/Jobvite/Job.aspx?j=ocLCWfwf - Operations Engineer - Database Administratorhttp://hire.jobvite.com/Jobvite/Job.aspx?j=obMOWfwr
We have seven additional openingshttps://wikimediafoundation.org/wiki/Work_with_usin other Foundation departments. Announcements
Two new full-time employees started in WMF engineering in March:
- Yuri Astrakhan, Senior Software Engineer in the Mobile group ( announcementhttp://lists.wikimedia.org/pipermail/wikitech-l/2013-March/067702.html ). - Adam Baso, Senior Software Engineer, Mobile (Engineering) (announcementhttp://lists.wikimedia.org/pipermail/wikitech-l/2013-March/067702.html ).
Technical Operations
*Site infrastructure* This month we saw a few short site glitches that lasted from about a minute to ten minutes each. The outages did not noticeably affect readers, but editors and contributors experienced intermittent problems.
- The first incident was triggered by a deployment of Article Feedback Tool v5 https://www.mediawiki.org/wiki/Extension:ArticleFeedbackv5, and once the code was reverted, the site outage ended. The incident lasted for about 10 minutes (incident documentationhttps://wikitech.wikimedia.org/wiki/Site_issue_Mar_15_2013 ). - The other two were jobqueue-related, according to Asher Feldman. The current MySQL jobqueue implementation is far too costly. In analyzing the data during that 24-hour period, we see that 75% of all queries that take over 450ms to run on the English Wikipedia master are related to the jobqueue, and all major actions result in replicated writes. In fact, the jobqueue takes 58% of all query execution time when not limiting the analysis to queries over the slow threshold. If 1 million *refresh-links*jobs are queued as quickly as possible without paying attention to replication lag, that causes the Apache servers to experience time-out due to the replication lag. MediaWiki depends on reading from slaves to scale, and avoids lagged ones. If all slaves are lagged, the master is used for everything, and if this happens to English Wikipedia, the site falls over. This MySQL jobqueue was identified as a scaling bottleneck a while ago, and thus we will be switching to Redis very soon. We're currently aiming for that switch to coincide with the release of 1.22wmf1, but we may be able to backport to 1.21wmf12 and get this done in early April. - On March 12, we experienced a ESAM site outage which was probably caused by packet loss between ESAM and EQIAD. Leslie changed routes from Esams to Eqiad to fix the packet loss, which caused Esams to recover. While we still don't clearly understand what caused the outage, we did notice it coincided with the news release when the new Pope was elected. The election did trigger a surge in traffic to our web properties.
In March, we had a short security sprint led by Leslie Carr. We patched servers that needed security upgrades. In addition, we continued to work on MariaDB migration, Ceph deployment and fixing Varnish bugs.TechOps has initiated a biweekly meeting with the engineering teams to drive alignment amongst the various engineering projects and TechOps regarding requirements and expectations. This is also the process to surface potential deployment issues (such as capacity demand, new infrastructure and performance). Meeting minutes are documented on the meeting Etherpadhttp://etherpad.wmflabs.org/pad/p/EMGT-Ops-Projects-25March2013 .
*Fundraising* Added logging to fundraising deployment scripts.
*Data Dumps https://www.mediawiki.org/wiki/WMF_Projects/Data_Dumps* Work is continuing on tools for import. Setting up a local copy of a wiki which includes only a subset of the page content has always been problematic, since this requires use of the notoriously slow and finicky importDumpphp maintenance script. Under development is a tool to filter the currently produced SQL table dumps against a list of page IDs of a content subset; these tables could then be imported into a MySQL database, along with tables produced from the content subset, bypassing the need for importDump.php. Additionally, these SQL fles could be shared with other users who are interested in the same content subset. We hope to be able to launch this in April.
*Wikimedia Labs https://www.mediawiki.org/wiki/Wikimedia_Labs* A schedule has been posted for LabsDBhttps://wikitech.wikimedia.org/wiki/ToolLabsDatabasePlan. A number of glusterfs stability work has been done. We've also begun work on a replacement for project storage. A new feature has been added in support of tool labs: service users and groups. This feature is per-project manageable service users and groups. A number of interface fixes were made, such as adding the admin list to the project page and layout of the instance pages. Network changes were made to the instances and network hosts: the network node has 3 bonded 1GB NICs and all instances were changed to use the virtio network driver, which increases their speed to the speed of the host. Work on tool labs progressed well this month. Most of the necessary infrastructure is available for many tools and bots. Features Engineering https://www.mediawiki.org/wiki/Wikimedia_Features_engineering Editor retention: Editing tools
*VisualEditor https://www.mediawiki.org/wiki/VisualEditor* In March, the team worked on the major new features that will be added in the coming months. The objective is for VisualEditor to be the default editor for all users, capable of letting them edit the majority of content without needing to use the wikitext editor, in July 2013. This will mean adding support for references, (at least) basic templates, categories and images, each of which is a very large piece of work. This month the primary focus was editing of categories and templates, with draft designs created and initial code developed. The team undertook its first ever "Quarterly Reviewhttps://meta.wikimedia.org/wiki/Metrics_and_activities_meetings/Quarterly_reviews", whose slideshttps://www.mediawiki.org/wiki/File:VisualEditor-Parsoid_-_2012-13_Q3_quarterly_review_deck.pdfdetail these designs, the work done to date and expectations for the near future. The alpha version of VisualEditor on mediawiki.org and the English Wikipedia was updated twice (1.21-wmf11https://www.mediawiki.org/wiki/MediaWiki_1.21/wmf11#VisualEditorand -wmf12 https://www.mediawiki.org/wiki/MediaWiki_1.21/wmf12#VisualEditor), adding better input and selection support, fixing a number of bugs, and restructuring the back-end so that the new features will be simpler to create.
*Parsoid https://www.mediawiki.org/wiki/Parsoid* In March, the Parsoid team continued with improvements to internationalization, serialization, and extension handling.
The parser test framework now supports language-specific tests, which required support for loading language-specific default setting in Parsoid.
The serializer is now fully DOM-based and uses constraint-based newline / white-space separator handling, which will make the serializer less sensitive to newlines and whitespace in HTML. Round-trip test resultshttp://parsoid.wmflabs.org:8001/of 82% (pages without any diffs) and 98% (pages without semantic diffs) indicates that the new serializer is on par with the old serializer currently deployed on production.
Extension content is now parsed all the way to DOM, which enforces proper nesting. The generic support for balanced fragment parsing will later also be applied to templates. Parsing of transclusion directives (includeonly and friends) has also been improved and simplified.
The DOM specificationhttps://www.mediawiki.org/wiki/Parsoid/MediaWiki_DOM_specfor images and templated / extension content was fleshed out in preparation for full editing support. Late in March, C. Scott Ananian joined us as a contractor. Welcome! Editor engagement features
*Notifications https://www.mediawiki.org/wiki/Echo_%28Notifications%29* In March, the team continued to deploy new features for the Notifications project (code-named *Echo*) on mediawiki.org. Ryan Kaldari developed a new Thanks notificationhttps://www.mediawiki.org/wiki/Echo/Feature_requirements#Thank_you_notificationthat lets you express your gratitude to users who make constructive edits by notifying them that they have been thanked (this feature was designed to give positive feedback to new editors during their first steps on Wikipedia). Benny Situ built the User rights notificationhttps://www.mediawiki.org/wiki/Echo/Feature_requirements#User_rights, which is sent when your user rights are changed (this feature was requested by power users on the English Wikipedia). Luke Welling developed new code to send HTML email notificationshttps://www.mediawiki.org/wiki/Echo/Feature_requirements#HTML_email_digests, based on designs from Vibha Bamba. Fabrice Florin led discussions about these new features to serve the needs of both new and current users, then updated their feature requirementshttps://www.mediawiki.org/wiki/Echo/Feature_requirements#First_Notifications; he also co-wrote this metrics planhttps://www.mediawiki.org/wiki/Echo/Metricswith Dario Taraborelli, as well as a socialization plan and new project pageshttps://en.wikipedia.org/wiki/Wikipedia:Editor_engagement/Echowith Oliver Keyes. We are now completing these final features and are aiming for a first release on the English Wikipedia later this month; in the meantime, you can help us test the current versionhttps://www.mediawiki.org/wiki/Echo/Testingon mediawiki.org. To learn more, read this project updatehttp://blog.wikimedia.org/2013/02/07/echo-a-new-notification-system-for-wikipedia/on the Wikimedia blog.
*Article feedback https://www.mediawiki.org/wiki/Article_feedback* This month, we released an updated version of Article Feedback v5https://www.mediawiki.org/wiki/Article_feedback/Version_5(AFT5) on the French https://en.wikipedia.org/wiki/fr:Sp%C3%A9cial:ArticleFeedbackv5and German Wikipediahttps://en.wikipedia.org/wiki/de:Spezial:Artikelr%C3%BCckmeldungen_v5, for evaluation by their communities. Developer Matthias Mullie completed final features for this release, including a new feedback linkhttps://www.mediawiki.org/wiki/Article_feedback/Version_5/Feature_Requirements#Feedback_link_on_article_pages, auto-archivehttps://www.mediawiki.org/wiki/Article_feedback/Version_5/Feature_Requirements#Auto-archive_commentsand a tool that lets you discuss useful feedback on article talk pageshttps://www.mediawiki.org/wiki/Article_feedback/Version_5/Feature_Requirements#Discuss_on_talk_page, based on designs from Pau Giner and suggestions from Oliver Keyes. Product manager Fabrice Florin worked with Denis Barthel and Sebastian Peisker on the German releasehttps://en.wikipedia.org/wiki/de:Wikipedia:Artikel-Feedbackand Benoît Evelin on the French releasehttps://en.wikipedia.org/wiki/fr:Wikip%C3%A9dia:Prise_de_d%C3%A9cision/Mise_en_place_de_l%27outil_d%27%C3%A9valuation_des_articles_sur_la_Wikip%C3%A9dia_en_fran%C3%A7ais, and we are very grateful to them and many other community members for their invaluable contributions. A German community vote is expected in May on the German Wikipedia, and in September on the French Wikipedia, when they will decide whether or not to deploy the tool across their entire sites. Due to data caching issues, the tool was temporarily turned off on the English Wikipedia, where we expect to re-deploy it on an opt-in basis as soon as practical, as described on this talk pagehttps://en.wikipedia.org/wiki/Wikipedia_talk:Article_Feedback_Tool/Version_5#New_version_of_Article_Feedback. After the English Wikipedia re-deployment in April, we plan to monitor community feedback on all three pilots before making any more updates, but other projects interested in the tool are invited to read this this 2013 release planhttps://www.mediawiki.org/wiki/Article_feedback/Version_5/Release_Plan_2013and contact us if they would like Article Feedback on their sites later this year.
*Flow https://www.mediawiki.org/wiki/Flow* Design work continued on Flow. We continued creating a "Portal" that will engage discussion about Flow at three locations (mediawiki.orghttps://www.mediawiki.org/wiki/FlowPortal, meta, and the English Wikipedia), and performing researchhttps://www.mediawiki.org/wiki/Flow_Portal/Research . Editor engagement experiments
*Editor engagement experimentshttps://www.mediawiki.org/wiki/Editor_engagement_experiments * In March, the Editor Engagement Experiments team largely placed other projects – such as guided tourshttps://www.mediawiki.org/wiki/Guided_tours, EventLogging https://www.mediawiki.org/wiki/EventLogging, and others – on hold to focus on two key initiatives: the "Getting Startedhttps://www.mediawiki.org/wiki/Extension:GettingStarted" process for onboarding new Wikipedianshttps://www.mediawiki.org/wiki/Onboarding_new_Wikipedians, and on making the redesign of account creation and loginhttps://www.mediawiki.org/wiki/Account_creation_user_experiencea permanent, internationalized part of MediaWiki core.
For the Getting Started project, the team launched a new version on English Wikipedia, which included a new landing page with additional types of tasks suggested for brand new editors to try. The list of tasks is now generated by a basic recommender systemhttps://www.mediawiki.org/wiki/Onboarding_new_Wikipedians/Recommender_systembuilt by Ori Livneh, which gathers, filters, and delivered a fresh list of tasks automatically for every editor. This new backend paves the way for releasing the "getting started" feature on other projects, after we've completed data analysis and testing to understand which kinds of tasks are ideal for first time editors. Additionally, Matt Flaschen collaborated with the Editor Engagement Features team to build notificationshttps://www.mediawiki.org/wiki/Echoto welcome new editors and invite them to contribute via the Getting Started. For the account creation and login work, S Page, Munaf Assaf, and the rest of the team rebuilt our design to work with MediaWiki core, and solicited reviews from outside the team. We currently plan to launch both interface redesigns on an opt-in basis in April, to have editors test the localization and other functional aspects of the forms via a URL parameter, before we enable them as default. Support
*2012 Wikimedia fundraiserhttps://www.mediawiki.org/wiki/2012_Wikimedia_fundraiser * 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. Language engineeringhttps://www.mediawiki.org/wiki/Wikimedia_Language_engineering
*Language tools https://www.mediawiki.org/wiki/Language_tools* Highlights for this month's team progress include:
- The latest translation interface and translation editor improvementshttps://wikimediafoundation.org/wiki/2013/01/11/a-more-efficient-translation-interface/for the Translate extension were completed and deployed. The new interface was made default with MediaWiki 1.22wmf1, later enabled on Meta on 2013-04-03; the old translation editor is planned to be removed completely in a few weeks. The user documentationhttps://www.mediawiki.org/wiki/Help:Extension:Translatehas already been updated. - The Search improvementshttps://www.mediawiki.org/wiki/Translation_UX/Development_plan#Search_track_.28completed.29were completed as well, with a pilot of the new Special:SearchTranslationshttps://translatewiki.net/wiki/Special:SearchTranslations(based on a Solr backend) that will be extended to Wikimedia projects in a few days. - Publication of the language coverage matrixhttps://docs.google.com/a/wikimedia.org/spreadsheet/ccc?key=0Asnprhp63DAtdEQyTnMwV29yVFZFMmlwOXoxQU9SMFE#gid=0 . - Development progress for the translatewiki.net homepage redesignhttps://www.mediawiki.org/wiki/Translation_UX/Development_plan#Sign-up_track_.28in_progress.29 .
*Milkshake https://www.mediawiki.org/wiki/Milkshake* The language engineering team continued adding more input methods and web fonts contributions to jQuery.ime and jQuery.webfonts (Milkshake components). UX designer Pau Giner iterated with Howie Fung and Erik Möller to incorporate UX changes to handle logged-in use cases for the Universal Language Selector (jQuery.uls). ULS deployment is targeted for this fiscal year (by the end of June 2013).
*Language community outreach*: The Language Engineering team kickstarted its *Language Support Maven* planhttps://www.mediawiki.org/wiki/Language_tools/Language_Team_Planfor getting language tools feedback from Wikimedian community members who are using internationalisation and localisation tools developed by the team. The team also held its regular monthly office hourshttps://meta.wikimedia.org/wiki/IRC_office_hours/Office_hours_2013-03-13in March. The team's outreach coordinator also reported team progress with multiple blog postshttps://blog.wikimedia.org/c/technology/features/internationalization-and-localization/on the technology blog. The team plans to restore its bug triage sessions, starting in April 2013. Mobilehttps://www.mediawiki.org/wiki/Wikimedia_Mobile_engineering
*Commons App https://www.mediawiki.org/wiki/Apps/Commons* Initial version of Commons photo uploader app for Android is available for download in Google Play. iOS version is still in beta, but should be available in the store next month.
*Wikipedia Zero https://www.mediawiki.org/wiki/Wikipedia_Zero* In March we added new telecom partners (such as Axiata Group Berhadhttps://blog.wikimedia.org/2013/03/19/axiata-wikipedia-zero-partnership/) and fixed some bugs, and brought new staff online. We also won an SXSW Interactive "Activism" awardhttps://blog.wikimedia.org/2013/03/13/wikipedia-zero-wins-2013-sxsw-interactive-activism-award/for Wikipedia Zero. In April we aim to start improving the code and the IP detection.
*OpenStreetMap https://www.mediawiki.org/wiki/OpenStreetMap* Max Semenik, Arthur Richards and Faidon Liambotis held an OSM mini-hackathonhttps://www.mediawiki.org/wiki/Events/Wikimedia_Mapping_Event_2013at Open Source Days 2013 in Copenhagen. During the event, they agreed on an implementation strategy for the WMF mapping cluster.
*Mobile Web Photo Uploadhttps://www.mediawiki.org/wiki/Mobile_design/Uploads * In March, we added the ability to easily uploadhttps://blog.wikimedia.org/2013/03/11/putting-commons-contributions-in-your-hand-mobile-app-uploads/a lead imagehttps://blog.wikimedia.org/2013/03/28/add-an-image-to-this-article-uploads-now-live-on-mobile-wikipedia/to articles that lack one in the stable version of the mobile site. We also deployed a workaround for an issue we discovered with heightened security features in some newer browsers that make logging in to all the projects via CentralAuth impossible in certain circumstances; that had prevented a number of users from being able to upload photos via the mobile site. We are now well on our way to reach our goal of 1000 unique uploaders/month by the end of the fiscal year. Check out the mobile app dashboardhttp://mobile-reportcard.wmflabs.org/to see mobile contributions via the website and via apps. Also of note: we've added thumbnails of lead images from articles in the mobile watchlist view, as well as a "last modified" timestamp on articles in the stable version of the mobile site. We are currently focusing on some performance enhancements for the mobile site. In April we will graduate the "uploads dashboard" feature from beta to stable, will further refine our photo upload features, and will expose a feature to identify articles on subjects near your current location to the beta version of the site. Platform Engineeringhttps://www.mediawiki.org/wiki/Wikimedia_Platform_Engineering MediaWiki Core
*MediaWiki 1.21 https://www.mediawiki.org/wiki/MediaWiki_1.21/Roadmap* 1.21wmf11 https://www.mediawiki.org/wiki/MediaWiki_1.21/wmf11 and 1.21wmf12 https://www.mediawiki.org/wiki/MediaWiki_1.21/wmf12 were deployed to Wikimedia sites in March. We created the REL1_21 branch on March 25, with the goal of a release candidate at the end of the month.
*Lua scripting https://www.mediawiki.org/wiki/Lua_scripting* We launched Lua scriptinghttps://blog.wikimedia.org/2013/03/11/lua-templates-faster-more-flexible-pages/on all wikis, wrote about the launch's wider significancehttps://blog.wikimedia.org/2013/03/14/what-lua-scripting-means-wikimedia-open-source/, and held IRC office hours https://meta.wikimedia.org/wiki/IRC_office_hours. In March we also added frame:callParserFunction() and frame:extensionTag(), improved CPU time accounting, and allowed argument expansion to be excluded. We have patches outstanding for "text" module including unstrip functionality, as well as improved debug output. We've also made significant improvements to templates since the launch.
*Auth systems https://www.mediawiki.org/wiki/Auth_systems* This activity kicked off on March 26. We're planning a minimal OpenID implementation and OAuth implementation in the coming months. Very tentative target date is end of May.
*Search https://www.mediawiki.org/wiki/Search* Search deployed to Beta Cluster. Search code instrumented for better troubleshooting and identification of issues, and work is underway to add PoolCounter support. Plan for April to make search updates more robust.
*Wikidata deployment https://www.mediawiki.org/wiki/Wikidata_deployment* Phase II deployment will complete on March 27 to several wikis, including Italian, Hebrew and Hungarian Wikipedias. This phase includes a new Lua interface to Wikidata so as to make infobox population from Wikidata possible. The Wikidata section of the monthly report has more details.
*Multimedia https://www.mediawiki.org/wiki/Multimedia* Mostly bugfixing this month, as well as hiring for the two multimedia positions. Jan Gerber finished work on an API to rotate images (bug 33186https://bugzilla.wikimedia.org/show_bug.cgi?id=33186), which needs a little site configuration work to get deployed. Transcoded videos have been moved to their own container in the Swift filesystem in anticipation of video-specific optimizations (bug 43343https://bugzilla.wikimedia.org/show_bug.cgi?id=43343). Jan also improved the user interface in cases where an embedded media player is too small to display credits and player controls. TimedMediaHandlerhttps://www.mediawiki.org/wiki/Extension:TimedMediaHandlerwas extended so that other MediaWiki extensions can render player elements using PHP. The Score extensionhttps://www.mediawiki.org/wiki/Extension:Scorecan now use TimedMediaHandler or OggHandler to render the audio player (see bug 43388 https://bugzilla.wikimedia.org/show_bug.cgi?id=43388), which puts the Score extension one step closer to deployment and music staves one step closer to generation and display in wiki pages (see bug 189https://bugzilla.wikimedia.org/show_bug.cgi?id=189 ).
*Site performance and architecturehttps://www.mediawiki.org/wiki/Site_performance_and_architecture * JobQueueRedis merged https://gerrit.wikimedia.org/r/#/c/53315/, JobQueueAggregatorRedis https://gerrit.wikimedia.org/r/#/c/48223/ merged and deployed. These improvements to the jobqueue should help site performance (see Tech Operations section of the monthly report).
*Admin tools developmenthttps://www.mediawiki.org/wiki/Admin_tools_development * We've implemented improved support for blocking users coming in through proxies with GlobalBlocking. Continuing work on identifying accounts that have not been merged with Single User Login, with the goal of merging those accounts starting in April.
*Security auditing and responsehttps://www.mediawiki.org/wiki/Security_auditing_and_response * The fundraising code base review is done. A MediaWiki security release, 1.20.3, was publishedhttp://lists.wikimedia.org/pipermail/mediawiki-announce/2013-March/000125.htmlon March 4. A review is underway for user metrics API https://www.mediawiki.org/wiki/User_Metrics. Quality assurance
*Quality Assurance https://www.mediawiki.org/wiki/QA* Finalizing details for new-user features volunteer test eventhttps://www.mediawiki.org/wiki/QA/WTA_ACUX_Test_Plan_Apr_6with Weekend Testers on April 6. Tested AFTv5 release to German Wikipedia, French Wikipedia pending. Testing upcoming new features for Echohttps://www.mediawiki.org/wiki/Echo .
*Beta cluster https://www.mediawiki.org/wiki/Beta_cluster* "Phase 1" support on beta for Mobile is complete and Mobile is using the beta cluster for testing now. We added search to beta, including Mobile. Lucene instances have been set up to provide search suggestion and ... search capabilities, but it's a rough base which still needs to be improved. More automated tests are now targeting beta cluster, and targeting the test2wiki/production cluster is underway. Jenkins is now upgrading the database schemas on an hourly basis and deploying changes to the MediaWiki configuration just after they have been merged. If you are curious, have a look at the Jenkins dashboard for the beta projecthttps://integration.wikimedia.org/ci/view/Beta/ .
*Continuous integrationhttps://www.mediawiki.org/wiki/Continuous_integration * Timo Tijhof implemented a Jenkins job to run the QUnit javascript test for MediaWiki core. That will definitely help us catch most of the javascript issues.
The continuous integration site has been moved from integration.mediawiki.org to integration.wikimedia.org and is now always on HTTPS. The index page has been rewritten based on Twitter Bootstrap (see integration.wikimedia.org).
Antoine Musso has given our Zuul status pagehttps://integration.wikimedia.org/zuul/an overhaul. It features live reloading through ajax and contains direct links to the Gerrit changesets and Jenkins jobs. A big improvement over the plain text https://integration.wikimedia.org/zuul/status version.
Antoine Musso and Timo Tijhof set up the new doc.wikimedia.org portalhttps://doc.wikimedia.org. The MediaWiki core (Doxygen-generated) PHP documentation has been moved here (svn.wikimedia.org/doc is now a redirect). We're currently working on packaging jsduck and writing Jenkins jobs to generate JavaScript documentation with JSDuck.
We've packaged various Python modules for the Debian project, which will in turn let us simplify deployment. Meanwhile, we're experimenting with having our Debian/Ubuntu packages built by Jenkins directly. This month we've continued to extend Jenkins coverage for Gerrit repositories. We're happy to announce that almost all repositories for MediaWiki extensions in Gerrit now have Jenkins integration.
*Browser testing https://www.mediawiki.org/wiki/QA/Browser_testing* We held an exercise to build the test backlog using Search as an examplehttps://www.mediawiki.org/wiki/QA/Browser_testing/Search_featureswhich did build the test backlog for search; it now contains wide variety of regression tests for automation. But the exercise didn't attract as many volunteers as we'd like; we're lookinghttps://www.mediawiki.org/wiki/QA/Strategyfor ways to address that in future exercises. Browser tests continue to identify significant regression issues, with new features in particular. We are extending browser test coverage to move-page functions, PDFs, and Search with a volunteer from the March exercise. Analytics
*Visualization, Reporting & Applications* In order to support mobile initiatives--including the Mobile Website, Mobile Apps, and Wikipedia Zero--we focused our attention on providing data extracts and visualizations with this focus. New visualizations include the Mobile app dashboard http://mobile-reportcard.wmflabs.org. In addition, we updated the report card http://reportcard.wmflabs.org for the March Metrics Meeting, improved the robustness of the reportcard infrastructurehttps://mingle.corp.wikimedia.org/projects/analytics/cards/126, added target barshttps://mingle.corp.wikimedia.org/projects/analytics/cards/123and added links to the metric definitionshttps://mingle.corp.wikimedia.org/projects/analytics/cards/121 .
*Wikistats* We are currently working on a new mobile pageview report.
*Services & Access Points* In March, we saw the launch of the User Metrics APIhttps://www.mediawiki.org/wiki/User_Metrics, a service http://metrics.wikimedia.org that allows researchers to perform cohort analysis https://en.wikipedia.org/wiki/Cohort_study on various data sets, making it easier to measure the effects of programs and platform experiments among discrete sets of users. We are currently working on improving the web-based user interface to make it available for use outside of Wikimedia Foundation staff in the coming months.
*Analytics Infrastructure* Our big-data cluster known as Krakenhttps://www.mediawiki.org/wiki/Analytics/Krakenhas been undergone no major changes in capability, but we have been working to make it more robusthttps://mingle.corp.wikimedia.org/projects/analytics/cards/461and improve security. Our udp2log monitoring https://mingle.corp.wikimedia.org/projects/analytics/cards/155has become more accurate, and Limn can be installedhttps://mingle.corp.wikimedia.org/projects/analytics/cards/52on both production and Labs instances.
*Misc*: *Defects Closed* Fixed the Space characters in pagecounst-raw titleshttps://bugzilla.wikimedia.org/show_bug.cgi?id=45178bug.
*Misc*: *Management & Communication* The Analytics team has started to use Minglehttps://mingle.corp.wikimedia.org/projects/analyticsto manage its work more effectively day-to-day. Bugzillahttps://bugzilla.wikimedia.org/buglist.cgi?list_id=190848&query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&component=General%2FUnknown&component=gerrit-stats&component=ReportCard&component=Wikistats&product=Analyticsremains our primary interface for managing defects with respect to communicating their priority and status. Finally, we had our Analytics Reboothttps://www.mediawiki.org/wiki/Analytics/Roadmap/PlanningMeetings/AnalyticsRebootmeeting, where all internal WMF Analytics stakeholders convened and we surveyed what customer opportunities were out there, what Analytics models are currently available, and how to improve inter-team communication. Engineering community team
*Bug management https://www.mediawiki.org/wiki/Bug_management* In Bugzilla, a way to mark bugfixes to copy from the development branch to stable brancheshttp://lists.wikimedia.org/pipermail/wikitech-l/2013-March/067500.htmlwas introduced to easier identify important bugfixes to include in tarball releases.
Two bugdays took place as part of the QA Weekly Goalshttps://www.mediawiki.org/wiki/QA/Weekly_goals: cleaning up and retesting General MediaWiki reportshttps://www.mediawiki.org/wiki/Bug_management/Triage/20130307and a bugday concentrating on the LiquidThreads extensionhttps://www.mediawiki.org/wiki/Bug_management/Triage/20130318. For the latter, 76 out of 218 open reports received updates. Valeriehttps://www.mediawiki.org/wiki/User:Valeriejanalyzed which important Wikimedia feedback channels link to each other and Bugzilla, and created a diagram of the current situationhttps://commons.wikimedia.org/wiki/File:Steps_to_Bugzilla.svg. Valerie also published two blogposts explaining how to create a good first bug reporthttps://blog.wikimedia.org/2013/03/18/how-to-create-a-good-first-bug-report/and how to help Wikimedia squash software bugshttp://blog.wikimedia.org/2013/03/19/help-wikimedia-squash-software-bugs/. Andre https://www.mediawiki.org/wiki/User:AKlapper_%28WMF%29 improved the Bugzilla Weekly Reporthttp://lists.wikimedia.org/pipermail/wikitech-l/2013-March/067486.htmlemail to the wikitech mailing list. On most open bug reports with a target milestone set to future MediaWiki version 1.21.0, reminder comments were added for developers. Andre and Valerie also held the first IRC Office Hour on Bugzilla and Bug managementhttps://meta.wikimedia.org/wiki/IRC_office_hours/Office_hours_2013-03-19for those interested in discussing problems and improvements with Wikimedia's bug management. In Bugzilla's internal product and component taxonomy, several Mobile application products were merged into a single "Wikipedia App" producthttps://bugzilla.wikimedia.org/show_bug.cgi?id=41922and two Search components were mergedhttps://bugzilla.wikimedia.org/show_bug.cgi?id=46542, to simplify finding information for developers and reporters. Also, the bug management task listhttps://www.mediawiki.org/wiki/Bug_management/Task_listreceived a major cleanup, making it clearer what is being worked on and what you can help with.
*Mentorship programs https://www.mediawiki.org/wiki/Mentorship_programs* Quim Gil https://www.mediawiki.org/wiki/User:Qgil focused on:
- Completing Round 5 of Outreach Program for Womenhttps://www.mediawiki.org/wiki/Outreach_Program_for_Womenwith casual evaluation meetings with the 6 intern/mentors teams. To be summarized with a blog post in early April. - Wikimedia's application for Google Summer of Code 2013https://www.mediawiki.org/wiki/Summer_of_Code_2013and a new round of Outreach Program for Womenhttps://www.mediawiki.org/wiki/Outreach_Program_for_Womenincluding 17 common project ideas with mentors. - Making Possible projectshttps://www.mediawiki.org/wiki/Mentorship_programs/Possible_projectsthe reference list of big tasks to potential contributors. Featured project ideashttps://www.mediawiki.org/wiki/Mentorship_programs/Possible_projects#Featured_project_ideasmust go through a reality check considering project feasibility for newcomers, availability of mentors and community/maintainers buy-in, which we check through related feature requests filed in Bugzillahttps://www.mediawiki.org/wiki/Bugzilla . - Announcing a GSoC and other open source internship programshttp://www.meetup.com/Wikipedia-Engineering-Meetup/events/109096132/meetup in San Francisco on April 11.
*Technical communicationshttps://www.mediawiki.org/wiki/Technical_communications * Guillaume Paumier https://www.mediawiki.org/wiki/User:Guillom reviewed, published and advertised several tech blog posts, and did communications support for the deployment of Extension:Scribuntohttps://www.mediawiki.org/wiki/Extension:Scribunto; this included reviewing blog posts, organizing IRC office hours, and announcing the deployment on wikis and listshttp://lists.wikimedia.org/pipermail/wikimediaannounce-l/2013-March/000614.html. He modified a template https://www.mediawiki.org/wiki/Template:Event so that events from the MediaWiki calendarhttps://www.mediawiki.org/wiki/Project:Calendarshow as bulleted itemshttps://www.mediawiki.org/wiki/Template_talk:New_opportunities/Contenton the home page https://www.mediawiki.org/wiki/MediaWiki. He continued to investigate SugarCRM, and expanded *Product developmenthttps://www.mediawiki.org/wiki/Product_development * to facilitate the involvement of contributors, and redesigned, reorganized and simplified the *How to contributehttps://www.mediawiki.org/wiki/How_to_contribute * landing page. He added "Open tasks" sections to pages of activities in need of Product help, and linked to them from the Product hub. He also met with Quim Gil to discuss his contributors planhttps://www.mediawiki.org/wiki/User:Qgil/Contributors, and followed up on the gerrit tagging proposalhttp://thread.gmane.org/gmane.science.linguistics.wikipedia.technical/68183. He researched ways to create and maintain translations of the Wikimedia Glossary https://meta.wikimedia.org/wiki/Glossary, and started a discussion on the lists http://thread.gmane.org/gmane.org.wikimedia.wikidata/1856about the best way to move forward with glossaries scattered across wikis. Last, he started to plan for the centralization of mobile documentationhttps://www.mediawiki.org/wiki/Technical_communications/Mobile_documentation_consolidation, and drafted thoughts about a consolidation of technical communitieshttps://www.mediawiki.org/wiki/Technical_communications/Dev_wiki_consolidation .
*Volunteer coordination and outreachhttps://www.mediawiki.org/wiki/Volunteer_coordination_and_outreach * Quim Gil https://www.mediawiki.org/wiki/User:Qgil focused on:
- Drafting Wikitech contributorshttps://www.mediawiki.org/wiki/Requests_for_comment/Wikitech_contributors, a proposal to attract technical volunteers and connect them with interesting people and activities in a single site: wikitech.wikimedia.org https://wikitech.wikimedia.org/wiki/Main_Page. Helping define the proposal for distribution of content between Wikitech and mediawiki.orghttps://www.mediawiki.org/wiki/Technical_communications/Dev_wiki_consolidation . - (Re)defining factors for measuring successhttps://www.mediawiki.org/wiki/QA/Strategy#Measuring_successin QA activities. - QA weekly goals https://www.mediawiki.org/wiki/QA/Weekly_goals: supporting and promoting our first browser automation activity: Browser automation testing for Wikipedia Searchhttps://www.mediawiki.org/wiki/QA/Browser_testing/Search_features. Also the general MediaWiki reports Bug Triagehttps://www.mediawiki.org/wiki/Bug_management/Triage/20130307and the LiquidThreads Bug Triagehttps://www.mediawiki.org/wiki/Bug_management/Triage/20130318 . - San Francisco meetupshttp://www.meetup.com/Wikipedia-Engineering-Meetup/: organized Lua meets Wikipediahttp://www.meetup.com/Wikipedia-Engineering-Meetup/events/106078042/meetup. - Helping the Security for developers traininghttps://www.mediawiki.org/wiki/Security_for_developers/Trainingmeeting and creating a wiki page to be recycled for future editions. - Drafting criteria to become an official Wikimedia mobile apphttps://meta.wikimedia.org/wiki/Wikimedia_Apps/proposal#Main_criteriain sync with Mobile Programs & Engineering teams.
Kiwix http://www.kiwix.org
*The Kiwix project is funded and executed by Wikimedia CHhttps://meta.wikimedia.org/wiki/Wikimedia_CH .* Work on the 0.rc3 release of Kiwix is ongoing, mostly consisting of bug fixing and a few UI improvementshttps://sourceforge.net/p/kiwix/kiwix/ci/master/tree/CHANGELOG. The release date is in around one month. For the first time, a ZIM file of Wikisource (in French)http://download.kiwix.org/zim/wikisource_fr_all.zim.torrentwas done, within the scope of the Afripediahttp://blog.wikimedia.org/2013/01/24/afripedia-project-increasing-off-line-access-to-wikipedia-in-africa/project. Wikidata https://meta.wikimedia.org/wiki/Wikidata
*The Wikidata project is funded and executed by Wikimedia Deutschlandhttps://meta.wikimedia.org/wiki/Wikimedia_Deutschland/en .* Denny Vrandečić and Lydia Pintscher gave a short update on Wikidata's status at the metrics and activities meetinghttps://meta.wikimedia.org/wiki/Metrics_and_activities_meetings/2013-03-07. A more detailed analysis can be found in our blog posthttp://blog.wikimedia.de/2013/03/19/some-data-on-wikidata/. In addition, Wikidata phase 1 (language links) has been activated on the remaining 282 Wikipediashttp://blog.wikimedia.de/2013/03/06/wikidata-now-live-on-all-wikipedias/. This means that all Wikipedias now get their language links from Wikidata. Not too long after that, phase 2 (infoboxes) was activated on the first 11 Wikipedias http://blog.wikimedia.de/2013/03/27/you-can-have-all-the-data/. They can now make use of shared structured data from Wikidata in their articles. On Wikidata itself we introduced a new data type (string), extended references in statements (they can now have multiple values), and improved the search box. We have written down how we envision querieshttps://meta.wikimedia.org/wiki/Wikidata/Development/Querieson Wikidata and would appreciate your feedback. As a nice demonstration of the potential of Wikidata we've seen two new projects this month: Wiri http://toolserver.org/%7Emagnus/thetalkpage/and a tree of life http://simia.net/treeoflife/. Future The engineering management team continues to update the *Deploymentshttps://wikitech.wikimedia.org/wiki/Deployments * page weekly, providing up-to-date information on the upcoming deployments to Wikimedia sites, as well as the *engineering roadmaphttps://www.mediawiki.org/wiki/Roadmap *, listing ongoing and future Wikimedia engineering efforts.