Wikimedia Technology/Goals/2017-18 Q3

From MediaWiki.org
Jump to: navigation, search
TriangleArrow-Left.svgQ2 Wikimedia Technology Goals, FY2017–18, Q3 (January–March) Q4TriangleArrow-Right.svg

Introduction[edit]

Purpose of this document[edit]

Goals for the Wikimedia Technology department, for the third quarter of fiscal year 2017–18 (January–March 2018). The goal owner in each section is the person responsible for coordinating completion of the section, in partnership with the team(s) and relevant stakeholders.

Goals for the Audiences department are available on their own page

Legend[edit]

Tech Goal categorizes work into one or more of these quadrants:

A Foundation level goals C Features that we build to improve our technology offering
B Features we build for others D Modernization, renewal and tech debt goals

ETA (Estimated Time of Arrival) fields may use the acronym EOQ (End of Quarter).

Status fields can use the following templates: In progress In progress, To do To do, N Postponed, YesY Done or Incomplete Partially done


Technology departmental programs[edit]

Program 1: Availability, performance, and maintenance[edit]

Overall goal owner: Mark Bergsma

  • Owner for Outcome 1: Mark Bergsma
  • Owner for Outcome 2: Ian Marlier
  • Owner for Outcome 3: Nuria Ruiz
  • Owner for Outcome 4: Bryan Davis
  • Owner for Outcomes 5 and 6: Greg Grossmeier
Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 1: Deploy, update, configure, and maintain production services (Traffic infrastructure, databases & storage, MediaWiki application servers, (micro)services, network, and miscellaneous sites & services)
  • Upgrade Varnish from v4 to v5 on all remaining Traffic clusters
TechOps (Traffic) Analytics (varnishkafka) D EOQ In progress In progress
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 1: Deploy, update, configure, and maintain production services (Traffic infrastructure, databases & storage, MediaWiki application servers, (micro)services, network, and miscellaneous sites & services) Generate consistent logical backups in CODFW
  • Finish the generation script with the addition of the following features:
    • Add orchestration of multiple hosts
    • Consolidate backups into a small number of files
    • Implement a retention policy
  • Ensure exact data consistency of the new backups with the live core DB servers
  • Failover existing eqiad backup system to this new system
TechOps D EOQ In progress In progress
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 1: Deploy, update, configure, and maintain production services (Traffic infrastructure, databases & storage, MediaWiki application servers, (micro)services, network, and miscellaneous sites & services) Modernize Puppet configuration management
  • Complete Puppet 4 agent upgrade on Ubuntu trusty hosts
  • Upgrade PuppetDB to version 3.2 or newer
  • Upgrade Puppet master infrastructure to Debian stretch
  • Investigate landscape of PuppetDB frontends, and provision one
  • Port Cumin to work with a newer PuppetDB API
  • Investigate challenges and plan Puppet 5 upgrade
TechOps D EOQ In progress In progress
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 3: Maintain data center infrastructure and equipment lifecycle from procurement through break-fix to decommissioning Hardware refresh and expansions
  • Complete outstanding backlog of refresh/expansion migrations
    • Migrate to new etcd/zookeeper servers (conf*) in eqiad
    • Deploy new ores* eqiad+codfw to production
    • Finish new MediaWiki appservers refresh in eqiad
    • Migrate to new loadbalancer (lvs*) servers in eqiad
    • Migrate to new access switches in ulsfo
    • Finish outstanding core db refreshes and fully decommission <=db1050, <db2030, labsdb1001-1003
  • Complete the following Q3 refresh/expansions:
    • Expand media storage/Swift capacity in eqiad and codfw
    • Refresh MediaWiki appservers in codfw
    • Refresh tendril database monitor server
    • Refresh servers tin and bast1001
  • Bring new eqiad row A-C access switch stacks online and available for active server connections
TechOps Scoring Platform, Analytics, WMCS D EOQ In progress In progress
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 3: Maintain data center infrastructure and equipment lifecycle from procurement through break-fix to decommissioning
  • Procure and turn up at least two transit links and at least one transport link
  • Fully configure SG hardware, software, and network for live service
  • Begin testing and validation of production service from SG
  • Enable live production service from SG for at least some Asian countries' live users
  • Gather metrics for before/after comparison of user impact
TechOps (Traffic)
  • Finance (network link procurement
  • Legal (network link contracts)
  • Partnerships (WP Zero issues)
  • Performance (metrics)
A EOQ Corresponding to each bullet point under goals:
  • In progress In progress
  • To do To do
  • To do To do
  • To do To do
  • To do To do
Outcome 1: All production sites and services maintain current levels of availability or better. Objective 3: Maintain data center infrastructure and equipment lifecycle from procurement through break-fix to decommissioning Cleanup esams and refresh servers and infrastructure
  • Remove all decommissioned hardware
  • Prepare racks OE14, OE15 and OE16 with new infrastructure
    • Setup new access switches
    • Procure and install new PDUs
  • Complete router migration from cr1-esams to cr3-esams
  • Install RIPE Atlas Anchor
  • Procure and install LVS and miscellaneous servers
TechOps (DC Ops, Traffic) D EOQ In progress In progress
Outcome 2: All our users consistently experience systems that perform well Objective 1: Maintain a comprehensive toolset to measure performance of our platforms
  • Measure performance from Asia both pre- and post- Singapore data center coming online. Evaluate the performance impact, and publish that evaluation.
  • Review performance of FileImporter
  • Review performance of CentralNotice, and identify areas for improvement.
  • Build out private wiki support in Thumbor implementation
Performance
  • FundTech (help with CentralNotice)
  • Traffic (coordination around Singapore)
  • FileImporter team
  • TechOps (Thumbor private wiki support will require puppet changes)
Jan 31 (Singapore-related)

EOQ (others)

Corresponding to each bullet point under goals:
  • To do To do
  • To do To do
  • To do To do
  • To do To do
Outcome 2: All our users consistently experience systems that perform well Objective 2: Catch and address performance regressions automatically through automation
  • Continue to develop on-demand performance testing infrastructure
  • Enhance performance testing infrastructure using the Chrome Trace log
Performance EOQ Corresponding to each bullet point under goals:
  • To do To do
  • To do To do
Outcome 2: All our users consistently experience systems that perform well Objective 3: Modernize our Performance toolset. We will measure performance metrics that are closer to what users experience.
  • Review current research on performance perception
  • Choose a limited, clearly defined set of performance metrics that can be applied across all Foundation projects.
  • Begin reporting on those metrics on a weekly basis.
Performance EOQ Corresponding to each bullet point under goals:
  • To do To do
  • To do To do
  • To do To do
Outcome 3: We have scalable, reliable and secure systems for data transport. Objective 1: Consolidation of analytics Kafka infrastructure to tier-1 requirements, including TLS encryption Analytics TechOps C: Improving our offering

D: Tech debt

Q4 In progress In progress
Outcome 3: We have scalable, reliable and secure systems for data transport. Objective 2: Maintenance and expansion of current Hadoop cluster to support new use cases that require more computational resources Analytics C: Improving our offering Q4 In progress In progress
Outcome 3: We have scalable, reliable and secure systems for data transport. Objective 3: Software, hardware upgrades, and maintenance on analytics stack to maintain current level of service Analytics TechOps C: Improving our offering EOQ In progress In progress
Outcome 4: Wikimedia Cloud Services users can leverage a reliable and public Infrastructure as a Service (IaaS) product ecosystem for VPS hosting. Objective 1: Maintain existing OpenStack infrastructure and services WMCS TechOps DBAs (migrate db to S3) C: Improving our offering

D: Tech debt

EOQ To do To do
Outcome 4: Wikimedia Cloud Services users can leverage a reliable and public Infrastructure as a Service (IaaS) product ecosystem for VPS hosting. Objective 2: Pay down technical debt and allow upgrading of the core OpenStack platform to modern, supported releases by replacing the current network topology layer with OpenStack Neutron, which has become the standard for most OpenStack deployments. WMCS C: Improving our offering

D: Tech debt

EOQ In progress In progress
Outcome 5: We have effective and easy-to-use testing infrastructure and tooling for developers. Milestone 1: Develop and migrate to a JavaScript-based browser testing stack Specific improvements to the now canonical framework, see: task T182421, notably:
  • Upgrade webdriverIO to version 4.9
  • Investigate replacing nodemw with mwbot
  • Video recording for Selenium tests in Node.js
Release Engineering All developers B: For others offering EOQ In progress In progress
Outcome 5: We have effective and easy-to-use testing infrastructure and tooling for developers. Objective 1:  Maintain existing shared Continuous Integration infrastructure
  • Draft requirements for a Kubernetes based solution for CI - task T183513
  • Migrate MediaWiki PHPUnit tests to Shipyard (docker-based CI) (~40% of Nodepool usage) - task T183512
  • Unify production and CI docker image build process - task T177276
Release Engineering
  • TechOps
C: Improving our offering

D: Tech debt

EOQ Corresponding to each bullet point under goals:
  • To do To do
  • In progress In progress
  • In progress In progress

Program 2: MediaWiki[edit]

Goal owner: Tim Starling

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Stakeholders in MediaWiki development will have sense of progress and direction in MediaWiki. Objective 1: Develop a MediaWiki roadmap Actively participate in the Audiences Technology Working Group to create a plan for the evolution of the technology stack MediaWiki/Audiences D Modernization, renewal and tech debt goals EOQ
Outcome 2: MediaWiki code quality will be improved. Objective 1: Increase measured unit test coverage Generate unit test coverage reports for extensions (T71684) MediaWiki C Features that we build to improve our technology offering EOQ
Outcome 2: MediaWiki code quality will be improved. Objective 2: Break up large classes and source files Namespacization (T166010) MediaWiki D Modernization, renewal and tech debt goals Q4
Outcome 3: MediaWiki security and stability will be improved. Objective 1: Address the backlog of action items that arise from security and downtime post-mortems Execute scripts to cease using unserialize() for MediaWiki text storage (T161647) MediaWiki C Features that we build to improve our technology offering EOQ

Program 3: Addressing technical debt[edit]

Goal owner: Jean-Rene Branaa

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: The amount of orphaned code that is running Wikimedia “production” services is reduced. Objective 2: Identify and find stewards for high-priority/high use code segment orphans - task T174091 Objective 2. Release Engineering All teams C: Tech Debt EOQ In progress In progress
Outcome 2: Organizational technical debt is reduced. Objective 2: Define and implement a process to regularly address technical debt across the Foundation  Objective 2. Release Engineering C: Tech Debt EOQ In progress In progress
Outcome 2: Organizational technical debt is reduced. Objective 3: Promote and surface important technical debt topics at large gatherings of Wikimedia developers (e.g., DevSummit and Hackathon(s)) Objective 3. Release Engineering Code Health Group, Technical Debt SIG C: Tech Debt EOQ4 To do To do

Program 4: Technical community building[edit]

Overall goal owner: Bryan Davis

  • Owner for Outcome 1: Bryan Davis
  • Owner for Outcomes 2 and 4: Dario Taraborelli
  • Owner for Outcome 3: Cindy Cicalese
  • Owner for Outcome 5: Deborah Tankersley
Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Becoming a technical contributor to the Wikimedia movement by creating and maintaining 'tools' (bots, webservices, etc) and other innovative solutions is easier than it has been historically because documentation is easier to find, more comprehensive, and descriptive of start to finish steps needed to solve common problems. Cloud Services product users feel comfortable sharing their knowledge with others as part of a community with a culture of sharing via documentation and mutual support. Objective 1: Collaborate with community to find volunteers willing to form a documentation Special Interest Group to update documentation of existing Cloud Services products

Carry over from Q2

WMCS Technical Collaboration A: Foundation goal (Community)

B: Serving our audiences

C: Improving our offering

EOY To do To do
Outcome 1: Becoming a technical contributor to the Wikimedia movement by creating and maintaining 'tools' (bots, webservices, etc) and other innovative solutions is easier than it has been historically because documentation is easier to find, more comprehensive, and descriptive of start to finish steps needed to solve common problems. Cloud Services product users feel comfortable sharing their knowledge with others as part of a community with a culture of sharing via documentation and mutual support. Objective 3: Increase community awareness of volunteer developed Tools

(Added for Q3; not in official plan)

WMCS Technical Collaboration A: Foundation goal (Community)

B: Serving our audiences

C: Improving our offering

EOQ To do To do
Outcome 2: The adoption of Wikimedia technology can be reliably measured. Objective 1: Design a set of formal KPIs (key performance indicators) to measure the growth and diversity of our technology audience (task T171220)
  • Write up report of interviews, including identified audiences, current measurement practices, and recommendations (T183202)
Research
  • Tech Management
A: Foundation goal (Community)

B: Serving our audiences C: Improving our offering

EOQ To do To do
Outcome 3: Value-added vendors who provide services and support based on Wikimedia software and true 'third parties' who install and use software produced by the Wikimedia movement on their own computers are more confident in recommending, deploying, and extending Wikimedia FLOSS projects. Objective 1: Establish canonical point of contact for third-parties by promoting the existence of a dedicated technical liaison for software projects with support for third-party users Establish channels of communication with third-party developers (T184606) MediaWiki Technical Collaboration B Features we build for others Q4
Outcome 3: Value-added vendors who provide services and support based on Wikimedia software and true 'third parties' who install and use software produced by the Wikimedia movement on their own computers are more confident in recommending, deploying, and extending Wikimedia FLOSS projects. Objective 2: Clarify the Foundation’s short- and long-term commitments to third-party users. Create, publish, and promote a multi-tiered, third-party support level system for Wikimedia software projects. Document the support level of existing FLOSS projects and ensure that the documented levels of support are delivered. Expand the set of bundled extensions to achieve a default MediaWiki experience that's comparable to Wikimedia sites (T178349) MediaWiki Release Engineering B Features we build for others Q4
Outcome 3: Value-added vendors who provide services and support based on Wikimedia software and true 'third parties' who install and use software produced by the Wikimedia movement on their own computers are more confident in recommending, deploying, and extending Wikimedia FLOSS projects. Objective 2: Clarify the Foundation’s short- and long-term commitments to third-party users. Create, publish, and promote a multi-tiered, third-party support level system for Wikimedia software projects. Document the support level of existing FLOSS projects and ensure that the documented levels of support are delivered. Create RFC for improving extension management (T88596) MediaWiki B Features we build for others EOQ
Outcome 3: Value-added vendors who provide services and support based on Wikimedia software and true 'third parties' who install and use software produced by the Wikimedia movement on their own computers are more confident in recommending, deploying, and extending Wikimedia FLOSS projects. Objective 2: Clarify the Foundation’s short- and long-term commitments to third-party users. Create, publish, and promote a multi-tiered, third-party support level system for Wikimedia software projects. Document the support level of existing FLOSS projects and ensure that the documented levels of support are delivered. Develop strategy for MediaWiki for 3rd party usage

Initiate a catalog of Wikimedia software projects frequently used by third parties

Create and publish a multi-tiered, third-party support level system for Wikimedia software projects frequently used by third parties

MediaWiki B Features we build for others Q4
Outcome 4: The collaboration with research in industry and academics is further scaled and supported. Objective 1: Organize and host the annual Wiki Research Workshop. (task T171118)
  • Invite speakers (task T181832)
  • Oversee paper review process and announcement of results (task T183031)
  • Devise and announce the details of the program for the workshop (task T183033)
Research
  • Workshop co-organizers
A: Foundation goal (Community)

B: Serving our audiences

EOQ Corresponding to each bullet point under goals:
  • YesY Done
  • To do To do
  • In progress In progress
Outcome 5: Organize Wikimedia Developer Summit Objective 1: A good representation of non-WMF stakeholders related to the main theme are invited and participate at the event (preferred) or online.
  • Program Committee evaluates submitted position statements; and selects invitees
  • Invitations are sent and responses processed
  • Program Committee identifies themes and defines sessions
  • All necessary event planning takes place (venue, etc.)
CTO Team
  • Developer Relations
  • Program Committee members
A: Foundation goals (Community)

B: Serving our audiences

C: Improving our offering

EOQ Incomplete Partially done
Outcome 5: Organize Wikimedia Developer Summit Objective 2: Discussions start before the event with the involvement of all the relevant stakeholders, in order to identify the points that need to be addressed at the event.
  • For each theme or session (TBD), an online discussion is initiated
CTO Team
  • Developer Relations
  • Program Committee members
A: Foundation goals (Community)

B: Serving our audiences

C: Improving our offering

EOQ Incomplete Partially done

Program 5. Scoring Platform (ORES)[edit]

Goal owner: Aaron Halfaker See phab tracking Epic: task T183198

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Tool developers and Product teams can innovate tools that use machine prediction to make wiki-work more efficient Objective 1: Expand vandalism & good-faith detection models to more wikis (focus on Emerging Communities) ORES Extension refactoring (task T183199) Scoring Platform Global Collaboration EOQ In progress In progress
Outcome 2: Volunteers are empowered to track trends in prediction bias and other failures of AI in the wiki Objective 1: Develop best practices for using community input to improve/correct predictions Blog about JADE, MW integration (risker's curation list), and social infrastructures (task T183200) Scoring Platform Communications EOQ In progress In progress
Outcome 1: Tool developers and Product teams can innovate tools that use machine prediction to make wiki-work more efficient Deploy Draft Topic model for English Wikipedia (task T176336) Scoring Platform EOQ In progress In progress
Outcome 2: Volunteers are empowered to track trends in prediction bias and other failures of AI in the wiki. Objective 1: Develop best practices for using community input to improve/correct predictions Deploy JADE MVP in Cloud VPS (task T176333) Scoring Platform EOQ In progress In progress
Annual plan proposal (FY19) (task T183203) Scoring Platform Talent and Culture (A. Stillwell) EOQ In progress In progress
Outcome 1: Tool developers and Product teams can innovate tools that use machine prediction to make wiki-work more efficient Objective 1: Expand vandalism & good-faith detection models to more wikis (focus on Emerging Communities) Existing ORES service support and stability Scoring Platform Operations continuous In progress In progress

Program 6. Streamlined service delivery[edit]

Goal owner: Mark Bergsma

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: We have seamless productization and operation of (micro)services Objective 2: Create a standardized application environment for running applications in Kubernetes
  • Serve one production service via Kubernetes
    • Serve at least 50% of Mathoid via kubernetes
    • Validate whether the (implemented) standardized application environment works as expected
    • Utilize the deployment pipeline (stretch)
TechOps C EOQ Corresponding to each bullet point under goals:
  • To do To do
  • To do To do
Outcome 2: Developers are able to develop and test their applications through a unified pipeline towards production deployment. Objective 2: Verify deployment-pipeline 'production' image
  • Verify basic functionality of 'production' deployment and image (initially targeting mathoid) - task T183165:
    • Functional PoC within integration in the deployment-pipeline
    • Deploy to isolated k8s
Release Engineering
  • Tech Ops
  • Services
C EOQ Corresponding to each bullet point under goals:
  • In progress In progress
  • To do To do
Outcome 2: Developers are able to develop and test their applications through a unified pipeline towards production deployment. Objective 3: Provide a lightweight integrated development environment Develop tools allowing users to create, manage and test their services in minikube Service Platfom C EOQ In progress In progress

Program 7. Smart tools for better data[edit]

Overall goal owner: Nuria Ruiz

Outcome 1 owner: Nuria Ruiz
Outcome 2 owner: Marko Obrovac
Outcome 3 owner: Bryan Davis
Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Foundation staff and community have better tools to access data. Objective 1: Wikistats 2.0 redesign
  • (CARRY ON) Daily and monthly pageviews per country. Visualization and reports task T90759
  • Mobile responsive-ness for most used pages based on piwik data task T176143
Analytics C: Improving our offering Q3
Outcome 1: Foundation staff and community have better tools to access data. Objective 1: Vetting and release of new metrics that measure content consumption Analytics C: Improving our offering Q3
Outcome 1: Foundation staff and community have better tools to access data. Objective 1: Users see improvements on data computing and data quality. Analytics

C: Improving our offering D: Tech debt

Q4
Outcome 1: Foundation staff and community have better tools to access data. Objective 2: Better visual access to EventLogging data Analytics C: Improving our offering

D: Tech debt

Q3
Outcome 2: Access to Wikimedia content and data with scalable APIs Objective 1: Revision storage scaling Complete the migration:
  • Fully migrate to Cassandra 3
  • Improve Cassandra dashboards by leveraging Prometheus metrics
Service Platform D: Tech debt EOQ In progress In progress
Outcome 3: Wikimedia Cloud Services users have easy access to public data. Objective 1: Provide reliable and available access to Wikimedia database dumps by upgrading the hardware used and consolidating access by internal teams, Cloud Services users, external mirrors, and HTTPS downloaders to the new canonical location.

(Carry forward from Q2)

WMCS Tech Ops (Dumps) C: Improving our offering Q3 In progress In progress

Program 8. Multi-datacenter support[edit]

Overall goal owner: Tim Starling

Outcome 1 owner: Tim Starling
Outcome 1, Objective 3 owner: Mark Bergsma
Outcome 2, Objective 1 owner: Marko Obrovac
Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Our audiences enjoy improved MediaWiki and REST API availability and reduced wiki read-only impact from data center fail-overs. Re-examine the requirements and scope of TP8 MediaWiki Performance, Services C Features that we build to improve our technology offering EOQ To do To do
Outcome 1: Our audiences enjoy improved MediaWiki and REST API availability and reduced wiki read-only impact from data center fail-overs. Install and use mcrouter in deployment-prep (Carried over from 2017-2018 Q2) Performance TechOps D: Tech Debt Jan 31 In progress In progress
Outcome 1: Our audiences enjoy improved MediaWiki and REST API availability and reduced wiki read-only impact from data center fail-overs. Objective 3: Integrate MediaWiki with dynamic configuration or service discovery, in order to reduce the time required for a master switch from one datacenter to another Use EtcdConfig in production to allow automation of a datacenter switch
  • Test EtcdConfig in different failure scenarios
  • Prepare conftool for safely editing mediawiki-config values (additional validation, separate etcd credentials)
  • Deploy EtcdConfig to production
  • Allow use of EtcdConfig to configure slave databases (stretch)
TechOps MediaWiki Platform D EOQ Corresponding to each bullet point under goals:
  • To do To do
  • To do To do
  • To do To do
  • To do To do
Outcome 2: Backend infrastructure works reliably across data centers Objective 1: Reliable, multi-DC job processing Migrate at least two high-traffic jobs to the new infrastructure Service Platform Operations, Analytics D: Tech debt EOQ In progress In progress

Program 9. Growing Wikipedia across languages via recommendations[edit]

Goal owner: Leila Zia

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Surface relevant information about the articles to editors at the time of editing with the goal of helping editathon organizers Objective 1: Build, improve, and expand algorithms that can provide more detailed recommendations to editors about how an article could be expanded. (task T171224)
  • Build a ground truth test set of section translation and synonym classifiers (task T183039)
  • Build a section translation classifier (task T182211)
  • Build a section synonym classifier (task T183037
  • Investigate section dependence and ways to model it (task T183038)
  • Build a model to recommend high quality images for Wikidata items missing them (task T180013)

Research

  • External collaborators (Bob West)

B, C

EOQ
  • In progress In progress
  • In progress In progress
  • To do To do
  • To do To do
  • In progress In progress
Objective 2: Develop and gather design requirements for how the algorithms’ results should be exposed to the editors. (task T171225)
  • Explore the design of the interface for the section recommendation experiment (task T183041

Research

  • External collaborators (Bob West)
  • Pau

B, C

EOQ To do To do
Objective 3: Evaluate the usefulness of article expansion recommendations for target users. (task T171226)
  • Run an experiment to evaluate section recommendations for less experienced editors (task T183042)

Research

  • External collaborators (Bob West, Tiziano Piccardi, Michele Catasta)

B, C

EOQ To do To do
Objective 4: Build Labs API(s) that can be used by researchers and developers to use and surface the recommendations in other products and research initiatives. (task T171227)
  • Build an API and/or a tool to surface section recommendations (task T183043)

Research

  • External collaborators (Bob West, Tiziano Piccardi, Michele Catasta)

B, C

EOQ In progress In progress

Program 10. Public cloud services & support[edit]

Goal owner: Bryan Davis

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
No specific named goals in Q3 for Program 10.

Program 11. Improving citations across Wikimedia projects[edit]

Goal owner: Dario Taraborelli

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Quantitative research is available to help Wikipedia and Wikidata contributors focus and prioritize their sourcing efforts. Objective 1: Estimate what proportion of content in Wikipedia or Wikidata is unsourced and in need of citations. (task T171230)

Research

  • External collaborators (L3S)

B, C

EOQ In progress In progress
Outcome 1: Quantitative research is available to help Wikipedia and Wikidata contributors focus and prioritize their sourcing efforts. Objective 2: Collect and analyze clickthrough data for footnotes and external links to understand how readers interact with them (task T171231)
  • Finalize link instrumentation proposal and its implementation, pending security and privacy review.

Research

  • External collaborators (Lauren Maggio)
  • Legal
  • Security
  • Analytics

B, C

EOQ In progress In progress

Program 12: Grow contributor diversity[edit]

Goal owner: Leila Zia

Note: We have decided to not to commit to official goals for this program in Q3. I would like for us to spend some time on a recent proposal for the experiment that we developed with the collaborators, flesh it out with interested communities and plan for an experiment in Q4. However, we cannot commit to doing this given the workload for Program 9 and knowing that some of our resources will need to be spent on Annual Planning in Q3 (not captured anywhere here:). --LZia (WMF) (talk) 21:52, 15 December 2017 (UTC)

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status

Product departmental programs[edit]

Note: When the draft annual plan was written, the Search Platform and Fundraising Tech teams were in Product. They were moved into Technology during the "tune-up" in June 2017.

Program 1: Make knowledge more easily discoverable[edit]

Goal owner: Erika Bjune

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Goal 1, Outcome 1: Through incremental Discovery improvements, readers are better able to discover and search for content. Objective 1: Implement advanced methodologies such as “learning to rank” machine learning techniques and signals to improve search result relevance across language Wikipedias.
  • Create and test advanced parser features To do To do
  • Evaluate and build new features for machine learning pipeline (T162279) In progress In progress
  • Begin to build relationships with external information retrieval researchers In progress In progress
  • Category search (keywords for sub-category searching) To do To do
Search Platform Analytics, Operations, Community Engagement C. Improve our own feature set EOQ In progress In progress
Goal 1, Outcome 1: Through incremental Discovery improvements, readers are better able to discover and search for content. Objective 2: Improve support for multiple languages by researching and deploying new language analyzers as they make sense to individual language wikis.
  • Continue to investigate morphological libraries for ElasticSearch plugins. In progress In progress
    • Implement Serbian, investigate Slovak
  • Improve search by using fuzzy (phonetic) language matching. To do To do
  • Continue general language support. In progress In progress
    • Investigate language analyzer config options
Search Platform Analytics, Operations, Community Engagement A. Foundation Goal: Reach,

C. Improve our own feature set

EOQ In progress In progress
Goal 1, Outcome 1: Through incremental Discovery improvements, readers are better able to discover and search for content. Address technical debt:
  • Elasticsearch 5.6/Logstash 5.6/Kibana 5.6 (ELK stack)
  • Maintain APIs
  • Translation extension
Search Platform Operations, Search Front-end D. Technical Debt EOQ To do To do
Goal 2, Outcome 1: Through improvements to the user experience of search interfaces, users are better able to find content in an intuitive and easy way. Objective 4: Investigate how to expand and scale Wikidata Query Service to improve its ability to power features on-wiki for readers
  • Acquire and productionize six new servers for WDQS, (see T178548)
  • Set up individual internal and external service endpoints with enhanced features for expert users
Search Platform Analytics, Operations, WMDE C. Improve our own feature set EOQ To do To do

Program 7: Payment processor investigation and long-term strategy[edit]

Goal owner: Katie Horn

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Advancement and fr-tech find a solution that lowers or does not increase current maintenance costs. We are continuing with the Ingenico reintegration and scoping Contribution tracking Get to "1 hour test" phase with ingenico Fr-tech Ingenio D EOQ In progress In progress

Program 8: Donor retention[edit]

Goal owner: Katie Horn

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: In FY 16/17 four well-trained team members spent 106 hours on deduping related to the English campaign. One of those employees may not be available for this task next year and a new contractor may help. We still hope to reduce the hours spent. Have we made a positive impact on Major Gifts manual work? Measure impact and meet to retro work. Fr-tech and Major Gifts Major Gifts team B EOQ In progress In progress


Cross-departmental programs[edit]

Community Health[edit]

Segment 3: Research on harassment[edit]

Goal owner: Dario Taraborelli

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: We aim to understand and model the characteristics of harassment in Wikimedia projects. This will primarily focus on quantitative research. Objective 1: Conduct research to characterize and model wikihounding. (task T171249)

Research

  • Community Tech

B, C

EOQ In progress In progress
Outcome 1: We aim to understand and model the characteristics of harassment in Wikimedia projects. This will primarily focus on quantitative research. Objective 2: Prototype new models to facilitate sockpuppet detection and the classification of toxic discussions. (task T171251)

Research

  • External Collaborators (Srijan Kumar, Jure Leskovec)
  • Support and Safety

B, C

EOQ In progress In progress


Privacy, Security, and Data Management[edit]

Segment 2: Privacy and Data Management[edit]

Goal owner: Nuria Ruiz

Quarterly Work Primary Team(s) ETA Status
Support teams and departments as needed Analytics, Legal, Security Ongoing In progress In progress

Segment 2: Security[edit]

Note: When the annual plan was written, the Security team's goals were not part of the annual plan, but they still needed to be addressed.

Goal owner: Erika Bjune

Quarterly Work Primary Team ETA Status
  • Hiring:Secure Director and define and start seeking other reqs
  • Cookie audit and policy
  • Privacy: Create and train on WMF PGP keys
  • Solidify GDPR compliance
  • Trainings:
    • Phishing
    • App security for developers
  • One Security Release
  • Ongoing security reviews as requested
Security EOQ In progress In progress


Structured Data on Commons[edit]

Segment 1: Database Integration[edit]

Goal owner: Tim Starling

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
  • Outcome 2: Introduce Multi-Content Revisions
  • Objective 2: Enable saving components to use the new backend. Update transaction management facilities to ensure changes to one or more types of content in a page are committed safely in the database and related systems.
MediaWiki Platform B Features we build for others; C Features that we build to improve our technology offering EOQ

Segment 2: Search integration and exposure[edit]

Goal owner: Erika Bjune

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 1: Readers, editors, and content re-users can find media [on commons] using precise queries. Objective 1: Commons search will be extended via CirrusSearch and Elasticsearch and Wikidata Query Service, to support searching based on structured data elements describing media. Search for file captions, including multilinguality Search Platform, Analysts, WMDE C. Improve our own feature set EOQ To do To do
Outcome 1: Readers, editors, and content re-users can find media [on commons] using precise queries. Objective 2: Advanced search capabilities (e.g., Wikidata Query Service, SPARQL queries) will be updated to support the more specific media search filters and the relationships to the topics they represent.
  • Upgrade and re-implement full-text search on ElasticSearch on Wikidata
  • Investigate using MCR with Wikidata
Search Platform, WMDE Operations C. Improve our own feature set EOQ To do To do

Segment 4: Programs[edit]

Goal owner: Jonathan Morgan

Annual plan outcome Annual plan objective(s) Quarterly Work (or Goal) Primary Team(s) Dependencies Tech Goal ETA Status
Outcome 2: Develop a better understanding of existing needs for Structured Commons Objective 2: Write case studies and documentation for Commons and Wikidata projects that allow project development among Wikimedia Communities and allow us to identify gaps in existing tools.(task T171252)
  • Interview 6-10 volunteer contributors to Wikimedia Commons to understand current workflows and impact of structured data (task T175185)
Research Community Programs; Technical Collaboration; Multimedia C EOQ To do