Wikimedia Engineering/2014-15 Goals

From MediaWiki.org
Jump to: navigation, search
TriangleArrow-Left.svgFY2013-14 Wikimedia Engineering Goals, FY2014-15 (July-June) FY2015-16TriangleArrow-Right.svg

Purpose of this document: Goals for the Wikimedia Engineering and Product Development department, fiscal year 2014–15 (July 1, 2014 – June 30, 2015). The goalsetting process owner in each section is the person responsible for coordinating completion of the section, in partnership with the team and relevant stakeholders.

These goals will be iterated on a quarterly basis. Each quarter, the top priorities for the department as a whole will be elucidated and highlighted.

Top departmental priorities for Q3 (January-March 2015)[edit | edit source]

Note: The top priorities live on a subpage, but are dynamically loaded below - the content is identical and automatically updated in both places.


Strategic context for this quarter:

  • We are renewing our focus on VisualEditor as a core commitment we must deliver at a high level of quality, to make it easier for anyone to edit our projects. After two quarters of foundational work, many key blockers have been addressed and we are confident that we can make a successful push toward wider usage.
  • On the mobile web, we continue to focus on contributions beyond editing. While we have seen success and growth of mobile editors, we recognize that the mobile web is not simply a smaller version of the desktop, and offers new opportunities for casual participation. This quarter, we are calling out specifically the work on the mobile web, but the work in apps continues, consolidating and building on the readership focused features we launched last quarter.
  • We have long committed to being a data-driven organization. In order to make data a part of every product team's day-to-day decision-making, we need to ensure that key metrics are reliably collected (instrumentation). This is still an organization-wide issue, and we are therefore calling it out as a top priority. Beyond merely counting individual user actions, we are especially interested in making visible the drop-off/conversion rates for key user actions like editing and uploading in a consistent manner (funnel analysis).

What we are consciously not yet calling out as a top priority:

  • The Wikidata Query Service. We are continuing work on this project, prototyping different technical solutions and specifically using the mobile web team's work and the existing WDQ-based tools to inform requirements. However, we recognize that we are still in the prototyping stage, and we're not yet staffed to make this a top priority for this quarter.
  • SOA Auth. The priorities of the services engineering team in particular will need to be fully aligned with shipping VisualEditor and mobile features, so we are reluctant to call out any specific service that may need to be de-prioritized.
  • Fundraising refactor / A/B testing. With the analytics team focused on instrumentation and fundraising-tech busy with post-fundraiser cleanup and payment processing related work, now is not the best time for a major cross-functional initiative to consolidate e.g. A/B testing functionality across teams.
  • Front-end standardization / UX standardization work. This will take a backseat to VisualEditor work this quarter (many of the same individuals are involved), and deliverables will be scoped accordingly.
Objective

Beneficiaries

Measures of success Project Lead Accountable executive Personnel and teams involved Status
Prepare for bringing VisualEditor to all new users on wikis where it is currently opt-in New Editor, Casual Editor
  • We will get VisualEditor by the end of Q3 to be ready to be on by default ("opt-out") on the English Wikipedia and other wikis in desktop mode, subject to community happiness, for "new users" – anonymous users and logged in users who have never edited; doing nothing to existing accounts with edits.
  • We aim to run a trial for new and IP users getting VisualEditor on by default for a week or two to test the value before the end of Q3.

Prioritised functional and technical objectives:

  • Any identified major stability issues fixed – no regressions or data corruptions
  • Improved performance, especially in editor load
  • Existing features provided, plus in-flight UX and product changes:
  • Expanded unit, regression and content testing
  • Fit-for-purpose special character inserter; currently blocking ~50 languages which need it, like Navajo and Welsh
  • IME support for top 10 (etc.) IME users; currently blocking ~80 languages which use it, like Hindi and Japanese
Trevor Parscal Damon Sicore Full Editing team (including Engineering, Product, QA, Community Engagement and Design members), plus Ori Livneh & Tim Starling.

Existing dependencies on the Parsoid and Services teams.

Some likely minor dependencies on the Analytics and Platform teams.


Front-end standards and continuous integration workstreams will be supported on a much lower basis by Bartosz and Timo respectively

Just beginning
Release and test two new reader-targeted contribution features on the mobile web: WikiGrok and Collections
  • Wikidata
  • Readers
  • Casual editors
  • WikiGrok:
    • Establish baseline (percentage & absolute numbers) for:
      • quality of responses (primary success metric)
      • engagement of users who land on a WikiGrok enabled article (secondary success metric).
    • Measure against other quality and engagement metrics:
      • quality: compare WikiGrok response quality ratio to successful/reverted edits ratio from new users on mobile – are WikiGrok responses better, worse, or comparable?
      • engagement: compare WikiGrok engagement to reader-to-editor conversion on mobile – are we engaging a wider circle of readers with this more lightweight, mobile-friendly contribution?
  • Collections:
    • Launch pilot of a new reader curation + sharing feature.
    • Begin collecting baseline usage statistics (creating, adding, consuming) and characterizing use cases
    • Decide on further development on this feature based on initial baseline stats on:
      • number of creators (as compared to mobile web editors and desktop page creators)
      • user class of creators (are we reaching outside the power editor group?)
      • number of shares
      • pageview traffic to content viewed via shares
Maryana Pinchuk Erik Moeller The Mobile Web WikiGrok and Collections teams, including engineering, product, design/UX and support from Research and Analytics WikiGrok: on track – first reader test live

Collections: just starting

Solidify the instrumentation and dashboarding pipeline and consistently apply instrumentation across key features
  • Editing Team
  • Product teams
Dan Andreescu Erik Moeller Analytics Engineering and Research,

Design U/X,

Ops

Just Beginning

Site Operations and Site Architecture[edit | edit source]

Goalsetting process owner: Mark Bergsma

Quarter Goals
Jul–Sep 2014
  • Virtualization for miscellaneous servers at codfw In progress In progress
  • Core data backups/replication at codfw YesY Done
  • IPsec on cross-data centre links for private data In progress In progress
  • Migrate application servers to Ubuntu 14.04 Trusty, and assist with HHVM YesY Done
Oct–Dec 2014
  • Core site services at codfw In progress In progress
  • Test deployment of HTTP 2.0 / SPDY N Not done
  • SSL with PFS YesY Done
  • Varnish 4 in limited production N Not done
  • codfw fundraising infrastructure fully functional in time for the fundraiser In progress In progress
Jan–Mar 2015
Apr–Jun 2015
  • Start of quarterly failover tests between eqiad/codfw

Interdependencies:

  • Cooperation with the Platform team on HHVM
  • Coordination with other teams on quarterly failover tests

Wikimedia Labs[edit | edit source]

Goalsetting process owner: Mark Bergsma

Quarter Goals
Jul–Sep 2014
Oct–Dec 2014
  • Labs available in the new data centre (with Neutron/IPv6) N Not done
  • Distributing tools, deployment-prep to both data centers (availability/redundancy) N Not done
Jan–Mar 2015
  • OpenStack manager extension improvements or replacement (Horizon)
Apr–Jun 2015

Interdependencies:

  • Improvements to the Labs management web interface (MediaWiki OpenStack manager or possibly Horizon) will need involvement from the UX group, and potentially development assistent from a (MediaWiki?) development team.

Language Engineering[edit | edit source]

Goalsetting process owner: Amir Aharoni

Quarter Goals
Jul–Sep 2014
  • Deploy first version of ContentTranslation
  • Re-enable webfonts for high priority and user requested languages
  • Develop initial version of scalable webfonts for mobile web for high priority languages
  • Research: Quantitative and qualitative analysis about internationalization tools and assets
  • Support: Provide language support including development and code review support for internationalization & localization of Wikimedia website features
  • Maintain standards compliance e.g. CLDR, Unicode updates
Oct–Dec 2014
  • Extend language support and features for ContentTranslation as per Content translation/Roadmap
  • Develop on-screen keyboards for high priority and user requested languages
  • Develop updated version of interlanguage links based on compact language links beta feature metrics
  • Support: Provide language support including development and code review support for internationalization & localization of Wikimedia website features
  • Maintain standards compliance e.g. CLDR, Unicode updates
Jan–Mar 2015
  • Extend language support and features for ContentTranslation as per Content translation/Roadmap
  • Leverage Rashomon for ContentTranslation persistent storage
  • Integrate VisualEditor with ContentTranslation (assuming support for non-Latin scripts such as Indic is stable)
  • Have parallel translation information from ContentTranslation with an open API
  • Support: Provide language support including development and code review support for internationalization & localization of Wikimedia website features
  • Maintain standards compliance e.g. CLDR, Unicode updates
Apr–Jun 2015
  • Extend language support and features for ContentTranslation as per Content translation/Roadmap
  • Provide more language on-screen keyboards for high priority and user requested languages
  • Support: Provide language support including development and code review support for internationalization & localization of Wikimedia website features
  • Maintain standards compliance e.g. CLDR, Unicode updates

Interdependencies:

  • Analytics?

Draft: Wikimedia Language engineering/Roadmap 2014-15

MediaWiki Core[edit | edit source]

Goalsetting process owner: Rob Lanphier

Quarter Goals
Jul–Sep 2014
  • HHVM deployment - deployed as Beta feature, partial production deployment
  • Performance: Establish key performance indicators for end-to-end response time and server performance
  • Single user login finalisation - most development work done
  • Search: Feature complete, achieving parity with legacy system (lsearchd) in all reasonable respects
  • API discoverability improvements

October Quarterly Review

Oct–Dec 2014
  • Wrapup from Q1
    • SUL finalisation - announce date of transition In progress In progress
    • HHVM - finish deployment In progress In progress
    • Search - finish deployment of CirrusSearch In progress In progress
      • Quant target: By November 2014, we aim to halve median backend response time for uncached operations, including page preview and save.
  • Library infrastructure for MediaWiki
  • Editing performance
  • API architecture In progress In progress
  • Search - work with Mobile Web team on backend requirements for microcontributions project

January Quarterly Review

Jan–Mar 2015
  • Help with Wikidata's complex query language
  • Tool for category intersection and/or Wikidata tag intersection
  • Template styling
  • Work with Operations on SPDY (see bug 33890)
Apr–Jun 2015

Interdependencies:

  • SPDY – TechOps
  • SOA Auth – Services
  • API discoverability improvements – ECT
Q1 HHVM targets, expressed as wall time for PHP methods in milliseconds
Method 50th percentile (current) 50th percentile (target) 90th percentile (current) 90th percentile (target)
WikiPage::doEditContent 185.54 92.77 1014.44 507.22
EditPage::getPreviewText (cf. [1]?) 352.81 176.40 2248.17 1124.09

Release Engineering[edit | edit source]

Goalsetting process owner: Greg Grossmeier

Quarter Goals
Jul–Sep 2014
  • Deployment tooling
    • Complete support for HHVM in production
    • Hand off of tooling knowledge to Mukunda from Bryan
  • Beta Cluster
    • Complete support for HHVM in Beta Cluster
  • Browser testing
    • Port builds from Cloudbees to WMF Jenkins and close down Cloudbees completely
    • Split builds efficiently between local headless runs and our 10 available simultaneous SauceLabs VMs
  • Quality Assurance
    • Monitor process discussions across WMF where appropriate e.g. Phabricator workflow design
Oct–Dec 2014
  • Phabricator
    • Developer support
  • Deployment tooling
    • on hold due to Phabricator support
  • Jenkins
    • Jenkins performance improvements
  • Beta cluster
    • Beta Cluster monitoring
    • Yet Another Cluster
  • Browser tests
    • Workshops/trainings in lieu of one-to-one pair programming
    • Improved "best practices" and "getting started" documentation
    • Environment abstraction layer in mediawiki-selenium
  • Vagrant
    • Investigate creating shareable vagrant- or docker-based test environments
    • Optimize memory hungry services running in the vagrant VM (reduce base memory usage)
Jan–Mar 2015
  • Beta Cluster stability
  • Successfully re-integrate MediaWiki releases
    • On time releases with minimal impact on our team’s time.
  • Isolated CI instances
    • We use single-use test instances for CI
  • Team process improvements
    • A better outcome in our next Health Check Survey
Apr–Jun 2015

Buffer zone

Interdependencies: Ops, MW Core

Engineering Community[edit | edit source]

Goalsetting process owner: Quim Gil

Our quarterly goals are defined according to our main drivers for 2014-15:

Quarter Goals
Jul–Sep 2014
  • Developer Hub prototype
    • Landing page, 3 projects showcased, 3 APIs documented
    • API sandbox functional prototype
    • Contribution process defined
  • Successful Wikimania hackathon
    • Facilitation of the schedule in an unconference setup
    • Quality and diversity of activities for old and new technical contributors, as well as tech-curious editors.
  • Collaboration started with top three partners
    • Plan for engaging established communities
    • List of upstream projects and other collectives we care about
    • Agreement of collaborations with some of our top partners
Oct–Dec 2014
  • Most Trello and Mingle projects migrated to Phabricator.
  • Basic plan for code review in Phabricator.
  • Joint collaboration with partners visible in events and outreach programs
  • Common process for Google Code-in and onboarding newcomers
  • FOSS Outreach Program for Women (confirmed) & Facebook Open Academy (upon evaluation)
Jan–Mar 2015
  • Sane developer experience — UX & doc debt in mediawiki.org
  • Proof of concept of code review in Phabricator adapted to Wikimedia needs.
  • Decision on migrating continuous integration or not.
  • Successful Wikimedia Hackathon USA
  • Best Wikimedia participation in FOSDEM, driven by EU chapters
Apr–Jun 2015
  • Code review moved from Gerrit to Phabricator. CI too?
  • Wikimedia Hackathon EU
  • Google Summer of Code and FOSS Outreach Program for Women

All the rest to be defined.

Interdependencies: Analytics (API data usage, Developer Hub), Design (Developer Hub, mediawiki.org), Global Education Program (Engaging Communities), Grantmaking (Engaging Communities), Platform (Phabricator, Developer Hub), Product (Phabricator), Technical Operations (Phabricator), Zero (Engaging communities).

Multimedia[edit | edit source]

Goalsetting process owner: Gilles Dubuc

Quarter Goals
Jul–Sep 2014
  • Upload Wizard - Platform - fix bugs, unit tests, chunked uploads, metadata structure
  • Upload Wizard - Features - progress bar, drag and drop, better FAQ, replace infographic
  • Structured Data - planning with Wikidata, new metadata structure, design file page/editing tools, community discussions
  • Critical bug fixes - Examples: Image scalers, Core media handling, Media Viewer, TimedMediaHandler load on every page
  • Multimedia Metrics - upload funnel analysis, drop-off rate, UI clicks, # uploads, # uploaders, other upload tools, files used
Oct–Dec 2014
  • Upload Wizard - Platform - fix more bugs, separate interface code, metadata-related infrastructure
  • Upload Wizard - Features - better licensing & category tools, add metadata anytime during load
  • Structured Data - implement structured data on Commons with Wikidata and community
  • Critical bug fixes - Examples: Image scalers, Core media handling, Media Viewer, TimedMediaHandler upgrade
Jan–Mar 2015
  • Upload Wizard - refactoring and unit testing (and possibly stability and UX improvements enabled by that). Bugs encountered while undertaking this effort will be fixed, but might not be as high-profile as the ones we'll handle once we have JS error visibility. Tracking funnel metrics over time instead of only having a rolling snapshot.
  • JS error logging - getting it working on beta and preparing a plan for production. The goal for the team is to get visibility on which main errors/bugs are responsible for the Upload Wizard funnel drops.
  • Platform - investigating a better solution for thumbnail storage.
Apr–Jun 2015

Note that these milestones and roadmap are preliminary and subject to change. They will be re-evaluated quarterly, based on previous quarter results, as well as community and team feedback.

Interdependencies

To meet our goals for multimedia, we plan to partner with these other teams:

  • Wikidata: implement structured data on Commons and other sites
  • Visual Editor: upload media to articles, find and use existing media
  • Search: make it easier to find media based on structured data
  • Mobile: view and upload media on mobile platforms
  • Kaltura: upgrade audio and video players
  • Design: improve the user experience / usability
  • Core Features: upload media to discussions (Flow)
  • Analytics: improve our metrics

To learn more, visit our Multimedia 2014-15 planning page.

Editor Engagement – Collaboration[edit | edit source]

Goalsetting process owner: Danny Horn

Quarter Goals
Jul–Sep 2014

Q1 theme – Never miss a message

User-facing features:

  • Subscriptions:
    • Subscribe to individual topics
    • Auto-subscription for topic user has created or participated in
    • Subscribing to Flow board = notifications for new topics on that board
  • Notifications:
    • Roll-up notifications for activity, one notification item per topic
    • Clicking on a notification takes you to topic page, with unread messages marked with color
    • Read/unread state for Flow notifications
    • Mark all as read
  • Log item improvements for Watchlist and Contributions
  • Mobile UI and design
  • Table of contents siderail module
  • Search on a Flow board

MediaWiki changes:

  • Create a namespace for thread pages
  • Decouple thread history and board history
  • Notifications: dynamic read/unread states

Possible deployment:

All deployment ideas are preliminary; actual rollout depends on conversations with staff and community stakeholders.

  • Teahouse – Question forum (w Heather)
  • Draft talk namespace on WP (w Steven)
  • RfC talk pages on Mediawiki.org (w Sumana)
  • Help desk
  • Mediawiki.org article/project/features pages
  • Metawiki - project/article pages
  • More WikiProjects on Wikipedia, possible rollout to articles in those areas

Metrics:

  • Start gathering baseline data for # of messages, # unique people using Flow
  • Figure out interesting comparisons between talk pages and Flow, given current usage of both
  • Figure out a way to measure the connection between Flow use and editor retention
Oct–Dec 2014

Q2 theme – User talk: Prep and landing

User-facing features:

  • More scaleable way to enable Flow without Flow team's direct involvement
  • Ability to auto-archive existing talk pages when Flow is enabled on a page
  • Positive "reached a decision" feature -- close/summarize for nice people
  • Visual Editor integration with Flow input boxes
  • Media Uploader modal inegration with Flow input boxes
  • Support of MVP bots used on user talk pages
  • LiquidThreads: Transition to wikitext, turn off extension, archive and switch to Flow
  • Hide/delete/suppress workflow refresh
  • Thread-level email notifications
  • Color-based "avatars" to improve the visual experience of reading long threads
  • Newsletter support

Possible deployment:

  • User talk on Product-friendly projects
  • Translatewiki.net
  • Possible opt-in user talk test?
  • Expand rollout of WikiProjects/article pages
Jan–Mar 2015

Q3 theme – Big Time

User-facing features:

  • Connect with Mobile Apps
  • Support for Village pump-level pages (performance, user flow, additional features tbd)
  • Support for RfC/RfA discussions
  • Discussion thread with scratchpad for checklists and task lists
  • Performance – load-testing

Possible deployment:

  • More aggressive project/article page rollout
  • Expand rollout of user talk
  • Maybe the Village pump. Or something equally scary.
Apr–Jun 2015

Q4 theme – Flown

User-facing features:

  • The unexpected thing that we didn't think of but is super obvious now that we've messed it up
  • Tagging -- several possible options:
    • Surfacing threads on multiple boards
    • Splitting up board activity among several tags
    • Subscribing to a tag, rather than a board
  • Moving threads between user talk and article talk
  • Splitting threads -- turning tangents into separate pieces, with their own notifications

Possible deployment:

  • Broad project/article page rollout
  • Broad user talk rollout

Interdependencies:

  • Mobile web – Jon Robson joining the Flow team for Q1
  • Visual Editor and Multimedia for the Mini-VE and Media Uploader
  • Mobile apps – Connecting probably in Q3

Editor Engagement – Growth[edit | edit source]

Mobile[edit | edit source]

Goalsetting process owner: Maryana Pinchuk

This fiscal year, the Mobile Apps team will be focused on getting data on feature usage of the new native mobile applications for iOS and Android in order to set goals and prioritize work on new apps features.

The Mobile Web team will split their time between two main focus areas:

Technical enablement – ensuring that other teams can work with MobileFrontend code, standardizing UI and code across desktop and mobile, and helping other teams design and build features that are responsive and work cross-platform.

Product work – this encompasses both a) porting select desktop experiences to tablets and handsets; and b) creating new features and contribution streams that help raise the number of new mobile users who hit the active editor threshold (5+ edits per month; below, referred to as new mobile active editors), so that we not only acquire but retain a healthy new editor population via mobile apps and web.

Our quantitative targets are based on the Growth team's editor model and focus on acquisition (getting more users to register for accounts via mobile), activation (getting more newly registered users to make 5+ edits in their first month), and retention (retaining new mobile active editors for 2+ months post registration). Note: targets for acquisition may change based on ongoing data collection around total edit numbers on tablets; if we observe a sustained drop in total contributions post tablet redirect, we may prioritize work on anonymous editing on mobile, which may change the number of signups on mobile.

Quarter Goals
Jul–Sep 2014 Product work

Mobile–desktop parity:

  • Tablets: Release VE to stable
  • Tablets: data-driven UX refinements (overlays, article actions, etc.)
  • Tablets: test of talk page links and redlinks in stable for tablet users to provide data for article creation work and talk page usage on mobile
  • Apps: Release iOS app

Mobile-specific contribution:

  • Tablets: activation experiment: WikiGrok, a Wikidata game for the Wikipedia mobile site

Quantitative target:

  • 25% increase in acquisition of new mobile signups from Q4 (net new users)
  • 25% increase in activation of new mobile active editors from Q4 (net new edits)

Technical enablement

  • Help Editing team create one VE skin that works responsively across mobile and desktop (20% time of 1 FTE)
  • Get Flow mobile-ready (100% time of 1 FTE)
Oct–Dec 2014 Product work

Mobile-desktop parity:

  • Tablets: (based on data from Q1) Tablets: Article creation workflow or talk page overlay for new users

Mobile-specific contribution:

Quantitative target:

  • 25% increase in acquisition of new mobile signups from Q1
  • 25% increase in activation of new mobile active editors from Q1
  • Stretch goal: 50% increase in acquisition & activation from Q1

Technical enablement

Jan–Mar 2015

Product work

Mobile-desktop parity:

  • Tablets: Special pages and feeds
  • Handsets (based on tablet data from Q1 & 2): article creation and/or talk page overlay

Mobile-specific contribution:

  • (Based on results from Q2): continue work on new mobile-specific contribution funnels

Quantitative target:

  • 50% increase in acquisition of new mobile signups from Q1
  • 50% increase in activation of new mobile active editors from Q1
  • Stretch goal: 100% increase in acquisition & activation from Q1

Technical enablement

Apr–Jun 2015 Product work

Mobile-desktop parity:

  • Handsets: Special pages and feeds
  • Handsets (based on tablet data from Q1 & 2): article creation and/or talk page overlay

Mobile-specific contribution:

  • Based on data from Q1 & 2: continue testing and refining existing mobile-specific contributions or start new activation/retention experiments

Quantitative target:

  • 100% YoY increase in acquisition of new mobile signups
  • 100% YoY increase in activation of new mobile active editors
  • Stretch goal: 200% YoY increase in acquisition & activation; measurable increase in retention

Technical enablement

  • Mobile editing fully handed off to VE team

Interdependencies:

Editing team: We'll be working with the Editing team throughout the year to create a standardized editing experience (both wikitext and VisualEditor) across devices.

Flow: A MobileFrontend engineer with be embedded with the Flow team throughout Q1 to help build a mobile-first Flow experience.

Research & Data and User experience: We will be doing more in-person qualitative testing of new and existing mobile features to ensure good usability and a high-quality user experience. We will also run controlled tests and gather quantitative data on features to determine their effects on new and active editor numbers.

Analytics: We will need help from Analytics to continue monitoring and analyzing pageview traffic to determine the flow of readership to the desktop and mobile sites of all our projects.

Growth: Some of the mobile-specific contribution experiments planned for this year may dovetail with Growth experiments. Because we will be focusing on the same set of metrics/targets, the Growth and Mobile team should be working closely and sharing product thinking, experimental setup and overall strategy.

Maps & Geo[edit | edit source]

Goalsetting process owner: Tomasz Finc

The Maps & Geo team will be a new team at the Wikimedia Foundation tasked with scaling our existing mapping resources to enable the world to visualize Wikipedia all around them. They will start the year forming the team, inventorying existing work, and scale our tile services and osm db to be production ready. Next they'll work with the Mobile Web and App team to empower our users to use mapping resources.

Quarter Goals
Jul–Sep 2014
  • Hiring the team's first engineer
  • Assess team charter
  • Inventory existing Maps & Geo features
  • Take ownership of Labs OSM DB
Oct–Dec 2014
  • Build out beta ready tile service
  • Build out production OSM DB
  • Assess current Maps & Geo team needs
  • Hire second engineer
Jan–Mar 2015
  • Launch Production tile service
  • Support WMF teams on maps needs
Apr–Jun 2015
  • Experiment with new features

Interdependencies:

  • Mobile Web, Mobile App, & Platform

Editing[edit | edit source]

Goal-setting process owner: James Forrester

The Editing Team is working to make VisualEditor a great editor for new and experienced editors alike, focusing on improving the performance and usability whilst adding some more features to make VisualEditor more helpful, intuitive and practical for use for every content edit, alongside maintaining, improving, and extending the existing editor software. Below are a set of goals that we hope to achieve over the next financial year (July 2014 – June 2015), with a balance of optimistic and pessimistic assumptions about speed of delivery; not all goals may be achieved in the time period indicated, and some may be updated over time.

On-going work happening every quarter:

  • Stability and bug fixing, prioritising any bugs that cause wikitext corruption or any other form of disruption for our wikis’ communities (including in the wikitext editor);
  • Performance improvements for users, tracking load & save times, execution speed;
  • UX improvements tracked regularly and reported in a quarterly public user testing narrative;
  • Ensuring the success of VisualEditor on mobile, with a target of feature equivalence on tablet and at least some features on phone, with responsibility for both VisualEditor and wikitext editing pipelines on tablets and phones as well as desktop transitioning from Mobile to the team; and
  • Collaborating with volunteers and other Engineering teams like Parsoid, Services, Platform, & Core on related efforts like skin improvements, front-end performance, and other areas.
Quarter Goals
Jul–Sep 2014
  • N Postponed Deployment: Engaging with English Wikipedia to discover pain points as part of agreeing the criteria for a gradual ramp-up of VisualEditor availability and usage to default, expected to happen in Q2, subject to community discussions (after this point, ongoing support)
  • YesY Done Core: Internet Explorer 10+ browser support
  • Incomplete Service deployed in production but client not created Feature: Auto-filling citations from ISBN, DOI or URL
  • N Postponed Feature: Editing templates’ parameters as rich content, not wikitext, with helper tools for some types like image (searching Commons), link (searching wikis), date (date selector extended from Wikidata’s), and possibly others
  • Metrics [2]:
    • Load performance: No significant changes expected – 3s 50%ile, 5s 75%ile, 25s 99%ile (same as baseline)
    • Save performance: Major improvement is compressing save data before submitted for save – 3s 50%ile, 6s 75%ile, 15s 99%ile (from 4s 50%ile, 8s 75%ile, 15s 99%ile baseline)
    • Per-edit adoption: No significant changes expected – 35% IPs, 20% post-default users, 4% pre-default users (same as baseline)
Oct–Dec 2014
  • N Not yet complete Core: Initial improved support for IMEs, for key expanded if not all language groups
  • N Not yet complete Feature: Auto-filling citations from ISBN, DOI or URL
  • YesY Done Feature: Table editing – inserting new and deleting existing rows and columns, and common "advanced" tools like sortable columns & table header
  • Incomplete Not yet complete; some improvements made Experience: Clearer link editing tools based on design research
  • N Not yet complete Experience: Simplified citation system based on design research
  • YesY Done Experience: Improved media search based on design research
  • Metrics:
    • TBC
Jan–Mar 2015
  • Deployment: Engaging with English Wikipedia to discover pain points as part of agreeing the criteria for a gradual ramp-up of VisualEditor availability and usage to default, expected to happen in Q3/4, subject to community discussions (after this point, ongoing support)
  • Core: Initial improved support for IMEs, for key languages – e.g. ja, ko, ar, fa, Indic languages – if not all language groups
  • Feature: Auto-filling citations from ISBN, DOI or URL
  • Experience: Improved special character inserter based on design research
  • Experience: Clearer link editing tools based on design research
  • Experience: Simplified citation system based on design research
  • Experience: Media editing tool redesign
  • Metrics:
    • TBC
Apr–Jun 2015
  • Deployment: Engaging with German, Dutch and Spanish Wikipedias in a similar fashion to English Wikipedia, agreeing the ramp-up to default to happen from around 2015Q1 onwards, subject to community discussion
  • Core: Language variant editing support for Chinese and other languages
  • Core: Release a stand-alone VisualEditor for third party embed-ability
  • Feature: Editing templates’ field as rich content, not wikitext, including nested templates
  • Feature: Helper tools for some template field types like image (searching Commons), link (searching wikis), date (date selector extended from Wikidata’s), and possibly others
  • Feature: Wikidata invocation editing as a template parameter type
  • Feature: Auto-save local-only drafts if a browser crashes/disconnects mid-edit
  • Metrics:
    • TBC

Interdependencies:

  • Auto-filling citations depends on the Outreach Program for Women work to do this led by the Services team (and partially mentored by the Editing team).
  • Uploading media functionality relies on work planned to be done in the Multimedia team.
  • Language variants support relies entirely on work planned to be done in the Parsoid team.
  • Continued key on-going dependencies on the Parsoid, Services, Platform Core MediaWiki and Mobile teams, and collaboration with the Core Features and Growth teams for their VisualEditor-related goals.

Likely delayed until FY 2015/16:

  • Deployment: Engaging with non-Wikipedias to consider issues for them like which key extensions and gadgets will need VisualEditor support
  • Feature: Uploading media – uploading an image/video/etc. to Commons mid-edit via a button in the toolbar, inserting into the edited page on completion
  • Feature: Rich gallery editing and creation support

Design – User Experience[edit | edit source]

Goalsetting process owner: Jared Zimmerman

Quarter Goals
Jul–Sep 2014
  • YesY Done — Define goals and requirements for State of the User Reports (REFLEX) with Product and Analytics
  • YesY DoneConsistency audit of released projects alignment with Living Style Guide
Oct–Dec 2014
  • N Postponed —Hire Sr. Designer with technical focus for partner projects and other feature areas (Moved from Q1)
  • In progress In progress — Initial version of Living Style Guide with basic controls, palette, typography, iconography, behaviour, and best practices for desktop and mobile posted (Started in Q1)
  • N Postponed — Full coverage of iconography in core and foundation default extensions with mediawiki.ui icon set (Started in Q1)
  • N Postponed — Release Hovercards Beta Feature to selected small language wikis based on community requests (Postponed due to SendBeacon testing)
Jan–Mar 2015
  • In progress In progress — Extend mediawiki.ui and Living Style Guide to include all components used by current foundation projects
  • In progress In progress — Hire Sr. Designer with technical focus for partner projects and other feature areas (Moved from Q3)
  • Full coverage of iconography in core and foundation default extensions with mediawiki.ui icon set (Started in Q1), dependant on hire of Visual Design Fellow (done)
  • In progress In progress — Release Hovercards Beta Feature to selected small language wikis based on community requests
Apr–Jun 2015
  • Designeering Hackathon (SF)
  • Investigate unified home for State of the User, Data and API (Services), Transparency Report, and Financial Reports.

Interdependencies:

  • Engineering support for Living Style Guide and mediawiki.ui
  • Product management support for prioritizing UI and behavior consistency in story prioritization
  • Wikidata/WMDE support for certain mediawiki.ui components
  • Productization of split testing framework (from growth) into reusable component

Design - Research[edit | edit source]

Goalsetting process owner: Jared Zimmerman

Quarter

Goals

Jul–Sep 2014
  • YesY Done — Define goals and requirements for State of the User Reports (REFLEX) with Product and Analytics
  • N Postponed — Finalize plan for Research Internship Program
  • YesY Done Define and prototype tools for qualitative research and data gathering.
Oct–Dec 2014
  • N Postponed — Hire Sr. Design Researcher to extend research coverage
  • YesY Done — Hire Research Recruiter to extend team's ability to do recurring qualitative evaluative research
  • In progress In progress — Make decision on software for State of the User (REFLEX), work with platform, and ops to get initial small scale test environment running
  • In progress In progress — Begin infrastructure planning for test environment
Jan–Mar 2015
  • Support Analytics in releasing first iteration of State of the User Report
  • In progress In progress — Begin infrastructure planning for test environment
  • Publish State of the User Report in conjunction with Product and Analytics
Apr–Jun 2015
  • First round of Research Internship Program Fellows
  • Show how State of the User Report has influenced design decisions
  • Rerun benchmarking reports

Interdependencies:

  • Product and Analytics support for State of the User Report
  • Research Internship Program is joint venture between Analytics, Design, and Grantmaking

Parsoid[edit | edit source]

Goalsetting process owner: Subbu Sastry

See this page for additional details. Besides these high level goals, we will continue to focus on bug fixing, supporting existing Parsoid clients, improving performance, and regular deploys.

Quarter Goals
Jul–Sep 2014
  • N Postponed Must: Likely spillover from 2013 goals: Basic language variant support
  • N Postponed Must: Stable element ids (supports content translation, WT/HTML switching in VE, other features)
  • YesY RT testing, visual diffs, lots of fixes Must: Prepare to use Parsoid HTML for page view (finish up visual diffs, set up RT testing, a prototype for all page views)
  • Incomplete Working with IneZ with Wikia Should: Native gallery impl
  • N Postponed Should/Could: Start experimentation with content widgets: Cross-team effort (Parsoid, VE, Services, Community Engagment, ...)
Oct–Dec 2014
  • Prepare to use Parsoid HTML for page view (beta for mobile?, all page views?)
    • YesY Done Implement V2 Parsoid API for integration with RESTbase
    • Incomplete Final reviews and work needed CSS based customization of Cite extension
    • Incomplete Awaiting final review and deploy Support mixed content-style templates used heavily in some infoboxes
  • Supporting clients
    • YesY Done Ongoing critical bug fixes
    • Incomplete Partially done Explore performance issues with HTML parameters
    • Incomplete Initial work done Must: Stable element ids (supports content translation, WT/HTML switching in VE, other features)
    • N Postponed Language variant support
  • Technical debt and maintenance
    • YesY Done Migrate cluster to node 0.10
    • YesY Done First pass migrating codebase to use Promises
    • Incomplete Fixed some RT server endpoints to keep it usable Unclog RT server
      • MySQL db yet to be purged of old test results
  • N Postponed New applications
Jan–Mar 2015
  • Must: Beta/post-beta for Parsoid HTML for page view
  • Must/Should: Wikilint/LintTrap
  • Must/Should: Sister projects/extension (other extensions beyond gallery)
  • Should/Could: HTML content templating: Cross-team effort (Parsoid, VE, Services, Community Engagment, ...)
Apr–Jun 2015 Ongoing work to support for HTML-only wikis
  • HTML content templating
  • Content widgets

Interdependencies

  • Rashomon / Content API is needed for html page views, stable element ids, efficient template updates.
  • VE, Flow, Mobile depend on Parsoid output
  • i18n consultation for language variant support
  • Content translation group on stable ids
  • Collaboration / interaction with editors community for wikilint/linttrap
  • Wikidata for content widgets

Services[edit | edit source]

Goalsetting process owner: Gabriel Wicke

Hiring for the new services team has just started. Eventually we'll be four engineers. The team's focus will be on modularizing our technical infrastructure and enabling other teams by developing internal services and a high-performance external REST API.

Quarter

Goals

Jul–Sep 2014
  • Implement first iteration of REST API front-end (restface)
    • Alpha deploy to api.wikimedia.org
    • Simple proof of concept implementation of page metadata end point for Parsoid HTML views (redlinks etc)
  • PDF render service deployment
  • First iteration on Rashomon storage service (with versioned blob and queue buckets & 'lame' auth)
    • Deploy & start using it with Parsoid
    • Wrap HTML load/save in restface
  • Citation service
  • Mathoid deploy
  • HTML templating: documentation, in particular KnockOff compiler & PHP implementation
    • Iterate once we have feedback from users & think more about use for content & messages
Oct–Dec 2014
  • Security: Design & implement more intelligent security architecture / authentication solution
  • Efficient page metadata end point for Parsoid HTML page views (redlinks etc)
    • Performance goal: at least 80% hit rate in front-end caches, <100ms 95th percentile response time for cache misses
  • Set up proper Varnish caching and purging for API (w/ help from ops)
  • Packaging / deployment -- Make debian/ubuntu packages for frontend / pdf / rashomon
  • Structured API documentation -- set up frontend
  • Help other teams like Mobile use page-related storage & build data extraction services
Jan–Mar 2015
  • Job queue runner using storage service queues
  • Help with Mobile API / service needs (ongoing)
  • Help with Flow API needs
  • Storage service
    • Think about solution (bucket type?) for link table scaling, in collaboration with platform & ops
    • Implement new bucket types in storage service
  • Prototype HTML content / i18n message templating solution in collaboration with Parsoid & platform
Apr–Jun 2015
  • Implement an efficient CentralNotice end point
  • Iterate on HTML templating solution
  • Multi datacenter operation (w/ ops)
  • Possibly implement link table solution in storage service
  • Cacheable Wikidata API? Echo?
  • Possibly look into HTML diffing service for HTML-only operation

For more detail see the services roadmap.

Interdependencies:

  • Parsoid depends on Rashomon revision storage & content API
  • VE, Flow, Mobile & platform depend on HTML content & page metadata end points
  • Lots of stakeholders on storage service (platform, features, mobile, dev community)
  • Lots of stakeholders on HTML templating (community, platform, features, mobile)
  • We depend on ops for provisioning, deployment & monitoring

Analytics[edit | edit source]

Goalsetting process owner: Kevin Leduc

Quarter Goals
Jul–Sep 2014

Implement a dashboard to visualize key metrics defined by the research team and usable by product teams to drive goals and instrumentation.

  • Metrics: the Editor Model, and number of daily {Active Editors, Edits and Pages Created}
  • Broken down by all 882 projects and target site (desktop website, mobile website, apps)
  • With a default view showing the Rolling Monthly Active Editors for the top 7 wikis.
  • Teams immediately benefiting: Growth, Mobile, VE, Multimedia

Stretch Goals

Add the following metrics to the dashboards (broken down by 882 projects and target site):

  • Page Views
  • Unique Visitors (depends on introducing client side tokens, reviewing the privacy implications and ensuring un-sampled data in Hadoop can be relied upon for counting uniques)
Oct–Dec 2014
Fill out Vital Signs
  • PageViews & PageViews broken down by target site
  • Implement Breakdowns for existing metrics
Investigate Open Source BI tool
Grantmaking
  • User can expand uploaded cohorts to include users across all wikis
  • User can delete a member of a cohort
  • User can tag a cohort with pre-defined tags
  • User can list cohorts from an existing tag
EventLogging
  • Identify and direct the purging of raw logs older than 90 days (executed by ops)
  • Identify and direct the purging of rows older than 90 days (executed by sean and ops with input from product)
  • Work with product teams who need to keep some data longer than 90 days to comply with the privacy policy

Goals are dependent on Tech Ops work on EventLogging and standing up a data warehouse

Jan–Mar 2015

Goals dependent on review and discussion of Product/Foundation initiatives

Current Epics include
  • Dashboard Discoverability / Annotations
  • Pageview API
  • Accurate Pageviews for Wikipedia Zero
  • Simplify Limn Dashboard Deployment
  • Migrate source of page view KPI's from Wikistats to Hadoop
  • Limn support in Mediawiki
  • Access Control in Limn (Geowiki/Zero)
  • Canary Event Monitoring
  • Speed Up/Automate Report Card Generation
  • Wikimetrics - Feature Parity
  • Wikimetrics - RESTful API
  • Wikimetrics - User Management
  • A/B Testing Framework
  • Research Platform
Apr–Jun 2015

Goals dependent on review and discussion of Product/Foundation initiatives

Interdependencies:

Technical Operations: we work closely with operations, particularly on the Hadoop buildout
Research and Data: we depend on this team to provide definitions for metrics we need to collect and graph
Foundation: we need input from our many stakeholders to ensure we are producing the correct data and research
Design: we need design to help us build useful interfaces to our data

Research and Data[edit | edit source]

Goalsetting process owner: Dario Taraborelli

Full description: Analytics/Research and Data/2014-15 Goals

Quarter Goals
Jul–Sep 2014
Primary goal - standardize baseline metrics
Secondary goals
  • topical research:
    • anonymous acquisition (Growth)
    • mobile app adoption/traffic and participation trends (Mobile);
    • predictive models of editor activation/survival
  • uplevel R&D process

Includes consulting support as priorities allow

Oct–Dec 2014
Strategy
  • Continue monitor and refine R&D process
Participation
  • All metric definitions for participation implemented in Vital Signs; high-level production metrics (beyond AE)
  • notification/activation experiments (Growth); microcontributions research (Mobile)
Readership
  • F/T traffic research analyst on-board
  • Readership metrics integrated in Vital Signs
  • Publish and socialize aggregate/anonymized traffic data
Content
  • Recommender systems

Includes consulting support as priorities allow

Jan–Mar 2015

H2 2015 Goals dependent on review and discussion of Product team initiatives

Strategy
Participation
Readership
Content
Fundraising
Apr–Jun 2015

H2 2015 Goals dependent on review and discussion of Product team initiatives

Strategy
Participation
Readership
Content
Fundraising

Interdependencies:

Technical Operations: we work closely with operations to support our databases
Analytics: we depend on this team to build out collection and visualization systems for key metrics
Product: we need to be closely aligned with product so we can support new initiatives with research and data
Foundation: we need input from our many stakeholders to ensure we are producing the correct data and research

Fundraising Engineering[edit | edit source]

Goalsetting process owner: Katie Horn

Quarter Goals
Jul–Sep 2014
  • New integration work
    • Support Credit Card donations in France Incomplete Partially done
    • Support the use of one-time virtual credit cards N Not done
    • Accept bitcoin YesY Done
  • Known Maintenance tasks
    • Global Collect changes for SEPA compliance [ABANDONED] N Not done
    • Upgrade currency conversion API N Not done
  • Improvements to the mobile donation experience Incomplete Partially done
  • Civi - continuous integration testing, reporting improvements Incomplete Partially done
  • Launch internal dashboard N Not done
Oct–Dec 2014
  • New integration work (carry-over from Q1)
    • Support Credit Card donations in France YesY Done
    • Support the use of one-time virtual credit cards N Not done
  • Known Maintenance tasks
    • Support new WX format for nightly audit files before the old format goes away Incomplete Partially done
    • Make changes to not retry some rejection codes YesY Done
    • Upgrade currency conversion system to new API YesY Done
  • Launch internal dashboard YesY Done
  • Add functionality to internal monitoring dashboard that helps A/B testing N Not done
  • Preparation for Big English fundraiser YesY Done
  • Improvements to the mobile donation experience YesY Done
  • Big English fundraiser YesY Done
  • Test the effectiveness of credit card processors against each other. YesY Done
  • Civi - dedupe continuation Incomplete Partially done
Jan–Mar 2015
  • PCI compliance gap assessment
  • New Payment Methods / Ingetrations
    • New payment method to improve donor experience in China YesY Done
    • Start new integration to improve donor experience in Latin America (to be finished and used in Apr-Jun)
  • Known Maintenance tasks
    • Support new WX format for nightly audit files before the old format goes away In progress In progress
    • Civicrm upgrade
    • Ongoing code hygiene improvements in DonationInterface whenever possible
  • Reporting Improvements
    • Custom Civicrm reporting improvements (to be upstreamed)
    • Add functionality to internal monitoring dashboard that helps A/B testing
Apr–Jun 2015
  • Finish and use new integration to improve donor experience in Latin America

Interdependencies:

Wikipedia Zero[edit | edit source]

Goalsetting process owner: Carolynne Schloeder

Quarter Goals
Jul–Sep 2014
  • Launch of portal MVP (full editing of partner configuration - no code)
  • Run second SMS pilot
  • Make Android available for preload through QRD [internal dependencies]
  • Migrate half the partners to IP whitelisting
  • Hire and ramp up new engineer
  • Hire and ramp up two partner managers
  • Grow to 75M free page views per month (current: 65M)
Oct–Dec 2014
  • Portal: full partner editing with stage-gate approval of tech configuration
  • CRM in use [Ops dependency]
  • Improve usability on non-javascript [internal dependencies]
  • Achieve page weight reduction for Wikipedia Zero [internal dependencies]
  • Expand Android preloads - one new OEM deal
  • Migrate remaining partners to IP whitelisting
  • Grow to 90M free page views per month
Jan–Mar 2015
  • Notification of portal activity appear in CRM
  • CRM to support long-term partner maintenance
  • Improve new reader on-boarding (start page or other) [internal dependencies]
  • Impact study in deep dive markets (e.g. India, South Africa, Brazil); promote through comms
  • Grow to 110M free page views per month
Apr–Jun 2015
  • Identify UX improvements for Global South users [internal dependencies]
  • Expand Android preloads - one new OEM deal
  • Key metrics:
    • Moderate - Grow to 125M free page views per month, an increase of 60M page views per month from the current actual of 65M monthly page views.
    • Low - grow to 100M free page views per month
    • Stretch - grow to 200M free page views per month
  • Beyond Wikipedia Zero:
    • Establish baseline for improvement in total page views in priority countries
    • Deliver playbook with reusable templates for growth in other markets

Interdependencies:

Community Engagement (Product)[edit | edit source]

Goalsetting process owner: Rachel diCerbo

Quarter Goals
Jul–Sep 2014
  • YesY Done Finalize team charter and N Not done operating model (dependent on evolving Product process)
  • YesY Done Develop work prioritization and initial allocation
  • YesY Done Development of standardized job descriptions
  • YesY Done Make public page for the team
  • N Postponed Develop communication strategies for engaging community in product development (This is ongoing and evolving)
  • YesY Done Create and implement plans for SUL finalisation and current Flow development
Oct–Dec 2014
  • In progress In progress Implement SUL communications
  • In progress In progress Hiring of additional team member/s
  • In progress In progress Develop communication strategies for engaging community in product development (This is ongoing and evolving)
  • YesY Done Choose and test a product roadmap survey with communities
Jan–Mar 2015
  • In progress In progress Integrating community engagement process to ensure collaboration in product development process
  • Supporting strategy consultation
  • Launch product survey with communities
  • Absorbing TechNews into team workflow
  • In progress In progress SUL communications through April '15
Apr–Jun 2015
  • Continue to iterate collaboration with community
  • TBD

Interdependencies:

  • Product Teams which we are already collaborating with will be supported through their life cycle
  • Mobile development will be supported as the year progresses; exact dates TBD

Team Practices Group[edit | edit source]

Goalsetting process owner: Arthur Richards

Annual goals:

  1. Facilitate the achievement of 80% of the goals by teams receiving dedicated resourcing and/or undergoing multi-day workshops with the Team Practices Group
  2. Establish a mechanism to transparently and iteratively measure engineering team health

Ongoing work across all quarters: support teams in process/practice improvements, driven by health-check survey results

The success of this team will be determined by the success of the teams that leverage TPG's services. A guiding belief of TPG is that healthy teams build better products. It is the TPG's assumption that by supporting WMF engineering teams in becoming healthier and more sustainable, WMF engineering will be more successful as a whole. In addition to qualitative feedback, we can measure the TPG's impact by the success achieved by the individual teams engaged with the TPG - as measured by those teams meeting, or coming close to meeting, their goals. Further, the TPG can begin to validate its assumptions about team health impacting sustainability and product quality by first establishing a mechanism to measure and evaluate engineering team health.

Quarter Goals
Jul–Sep 2014
  • Hire 1 scrummaster to work with the Mobile Web and Mobile Apps teams YesY Done
  • Design a health-check survey YesY Done
  • Deliver health-check survey to Mobile Web, Mobile Apps, Mediawiki Core, Analytics Engineering, and Analytics Research teams YesY Done
Oct–Dec 2014
  • Hire 1 coach to serve as scrummaster for the Analytics Engineering team and provide coaching for the Analytics Research team YesY Done
  • Publish Q1 health-check survey results YesY Done
  • Iterate on and deliver updated health-check survey to Mobile Web, Mobile Apps, Mediawiki Core, Analytics Engineering, and Analytics Research, Fundraising, Release Engineering, Core Features, Language In progress In progress
  • Conduct a structured team practices workshop with the Mediawiki Core team YesY Done
Jan–Mar 2015
  • Hire an additional TPG resource to work with the MediaWiki Core team In progress In progress
  • Publish Q2 health-check survey results
  • Iterate on and deliver updated health-check survey to same teams as q2 plus additional subset (e.g. parsoid, editing, services, rel eng/qa)
  • Conduct one structured team practices workshop (Release Engineering and/or Fundraising)
Apr–Jun 2015
  • Publish Q3 health-check survey results
  • Iterate on and deliver updated health-check survey to all engineering teams to establish engineering-wide team health baselines going into next FY
  • Conduct one structured team practices workshop (team tbd, depending on needs identified in part through health-check survey)