Wikimedia Developer Summit/2016/Program

2015 Developer Summit main session

The Wikimedia Developer Summit 2016 (#WikiDev16, #wikimedia-tech connect) is the main gathering of the Wikimedia technical community to push the evolution of the MediaWiki architecture and the Wikimedia Engineering goals for 2016. We welcome developers and other technical contributors of MediaWiki core, extensions, gadgets, templates, bots, Wikimedia apps and tools, and third party products relying on Wikimedia APIs.

January 4-6, 2016
San Francisco (California, USA)

ProposalsSession checklist


There are 173 registered attendees. See who is attending or add yourself here.


Registration opened 14 September, 2015.

Registration closed for scholarship requests 2 October, 2015.

Registration closed completely Friday, 11 December, 2015. Any questions about registration? Email:

Participants of this event agree to follow the Friendly Space Policy.

Call for participation[edit]

We welcome sessions seeking discussion and consensus.

The Wikimedia Developer Summit encourages proposals about updating our architecture, infrastructure and services to better support users and developers. Other topics interesting to Wikimedia developers are welcomed as well.

Deadline for new proposals: October 2. Early drafts are OK. All proposals are expected to be discussed and updated during the months prior to the Summit.

Create a task in Phabricator. You can also recycle an existing task.

Expected fields:

  • main stakeholders added as subscribers
  • Wikimedia-Developer-Summit-2016 project and other projects related with the proposal
  • a description to be kept up to date including:
    • definition of the problem
    • expected outcome at the Summit
    • current status of the discussion
    • links to background information
    • related tasks in Phabricator
  • after creating your task, please define other tasks "blocked by" this one, if any.

Scope of the proposals[edit]

More information: Wikimedia Developer Summit 2016/Focus areas

The program focuses on organized discussions that start online and aim to reach to agreements during the event. Good examples of proposals include requests for comment, overlapping implementations, need-consensus topics, undefined areas and, in general, complex discussions that have chances to be resolved face to face in the context of the Summit.

Presentations and tutorials are explicitly discouraged during the Summit. These types of sessions are welcomed as Tech Talks or Lightning Talks organized before the event, especially when they can provide background materials to Summit participants.

The schedule of the first two days is build with sessions that have gone through this call for participation. The third day is reserved for unscheduled activities such as hacking, ad-hoc discussions, or networking.

Submissions and selection process[edit]

The goal of the Summit is to build consensus on important discussions. The process for selecting proposals aims to bring the strong proposals to the schedule and to filter out the rest, in order to focus better on them. Filling the schedule is not a goal.

This is how the life cycle of a successful proposal looks like:

  1. All proposals must have a task in Phabricator associated with Wikimedia-Developer-Summit-2016. You can reuse and update an existing task, or you can create a new one.
  2. Proposals must have an owner, a clear title, and a description kept up to date. They must be associated with the #wikimedia-developer-summit-2016 project as well as other projects related with the topic of the proposal.
  3. A discussion joined by the relevant stakeholders must take place at the task or in another designated URL.
  4. By 2 Oct 2015 all Summit proposals must have been created. Proposals created later can be handled in other venues or purely online.
  5. By 6 Nov 2015 all Summit proposals must have active discussions and a Summit plan documented in the description, explaining what activities are you planning and what results you are seeking to obtain. Proposals not reaching this critical mass can continue at their own path out of the Summit.
  6. By 4 Dec 2015 all the accepted proposals will be published in the program. Strong candidates might be scheduled before.
  7. During December changes can be made to the schedule in order to avoid overlaps as much as possible. Contributors to each proposal are focusing on planning details, identifying the open questions that need answers, confirmed participants, structure of the session, and expected outcome.
  8. On 4-6 Jan 2016 each session runs as planned or better, arrangements for online participation are made by the session owners when needed, notes are taken and posted in the description of the corresponding task, a summary of the outcomes is highlighted, specifying the agreements made, and whether the objective of the session has been accomplished. Action points and next steps are documented as well.

Location and Transport Options[edit]

Mission Bay Conference Center[edit]

location for Monday and Tuesday only

Mission Bay Conference Center
1675 Owens Street
San Francisco, California, USA

Public Transportation information[edit]

The Mission Bay Center can be reached by a 35-minute bus or Muni ride from the Club Quarters Hotel.

  • Muni line KT from Embarcadero to UCSF/Mission Bay (take KT towards Visitacion Valley via Downtown for 6 stops), or
  • Note that the KT line is not labeled 'KT.' This morning, at least, the train we caught at Embarcadero was labeled 'T.' Andrewbogott (talk) 17:24, 4 January 2016 (UTC)Reply[reply]
  • Bus 10 from Sansome & Clay to 17th & Connecticut (take 10-Townsend towards General Hospital / Potrero & 24th for 20 stops)

We are on the second floor of the Mission Bay Center.

Walking in groups or sharing taxis[edit]

Walking between Club Quarters and Mission Bay Center is a pleasant 50 minute walk.

Assume Uber rides will take up to 30 min between getting the taxi and traffic.

If you would like to informally sign up to walk together or share a taxi with others - please do so here.


Plan for Monday through Wednesday[edit]

  • Monday - first full day of discussion sessions at Mission Bay Center. 8:30am start.
  • Tuesday - second full day of discussion sessions at Mission Bay Center 8:30am start.
  • Wednesday - full day of unscheduled discussions, hacking, and hands-on work back at the WMF office flexible start, breakfast will arrive at 9am.

Discussion session resources[edit]

Here are several resources to help you get the most out of your sessions, during the conference and afterward.

  • Role cards - Start each discussion session by assigning meeting roles using the printed role cards in each session room
  • Session checklist - Use this checklist as a guide to running your session (printed copies in each session room)
  • Session note template - Scribes should copy this template to a new EtherPad for each session (also printed on the "Scribe" role card).
  • General good meeting practices - Includes explanation of the role cards

Note: All presentations will be limited to the first 20 minutes of each session. A shorter presentation (or no presentation) is even better.

Session notes[edit]

Please add links to the Etherpad for your session notes to this Etherpad:

Connection to IRC / Gerrit on the wifi[edit]

The wifi blocks ports > 1024. This blocks gerrit (via ssh) and IRC [1]. There are some workarounds for this.

Use web chat for IRC[edit]

Use instead of your usual IRC client.

Proxy via labs[edit]

If you have a labs account you can use labs as a proxy to get around this restriction, via a special instance setup just for the dev summit. Please note that this is a TOS exception just for these two days (general proxying is against the TOS).

Start an ssh tunnel

ssh -D 9020

Then configure your irc client to connect via a socks proxy at localhost on port 9020. Usually this option is in preferences.

Push to Gerrit via https[edit]

For gerrit you'd also need to use the proxy, or you can submit patches via https instead of ssh. The password for this is not your normal password, but an auto-generated password you can find under Settings » HTTP Password in Gerrit.

Use the WMF VPN[edit]

If you're a WMF employee with VPN access, that also works well. Note that you'll need to use the "all traffic" group, rather than the default split tunneling.

Monday, January 4[edit]

Venue: Mission Bay Conference Center


Notes from sessions

Work in progress -- see T116024 - WikiDev '16 program and T119593 "must have" sessions for WikiDev '16

Day 1
Robertson 1
(200 person theatre)
Robertson 2
(50 person classroom)
Robertson 3
(50 person classroom)
UnConference (Leach) Room 1
(40 person theatre)
UnConference (Leach) Room 2
(40 person theatre)
UnConference (Leach) Room 3
(24 person classroom)
8:30 AM Registration for all participants & breakfast
9:00 AM

(50 min)

Welcome & keynote (T121640)
  • Rachel Farrand - Welcome & logistics
  • Rob Lanphier & Valerie Aurora - Summit goals
  • Wes Moran - Opening keynote
9:50 AM

(10 min)

Coffee Break
10:00 AM

(80 min)

Next Generation Content Loading and Routing

T114542 - An attempt to identify and resolve disagreements and misunderstandings in having an API-driven web front-end, performing page composition using service workers and server-side JS fallback.

Software Engineering (T119032) breakout session:
  • T114320 - Code-review migration to Differential status/discussion
Discussion room Unconference - edit me to schedule a session! Unconference - edit me to schedule a session! Unconference - edit me to schedule a session!


(10 min)

Coffee Break
11:30 AM

(80 min)

Working area focus: User interface presentation

T119162 - Working area overview: "how do we make using Wikimedia software more usable, and make it look and feel joyful to use?"

Open slot. Discussion room MediaWiki API: design and usability discussion Unconference Open meeting between the MediaWiki Stakeholders Group and the Wikimedia Foundation (T119403)
12:50: PM

(70 min)

2:00 PM

(80 min)

Working area focus: Content format

T119022 - Working area overview: "how do we make manipulating our data easier and more useful? (both for humans and computers)"

Software Engineering (T119032) breakout session: Discussion room What can the search API do for you? - Gathering feedback about what's good and what's missing in the search API Curation and feeds discussion: How to make it easier for people to manage vast amounts of content - T122813 Shadow namespaces: Phab:T115762
3:20 PM

(20 min)

Afternoon Snack Break
3:40 PM

(80 min)

How should Wikimedia software support non-Wikimedia deployments of its software?

T113210 - Wikimedia software like MediaWiki is widely used for non-Wikimedia content (e.g. intranet wikis, hobbyist wikis) often using infrastructure quite different from the Wikimedia production environment (e.g. different database software, shared hosting). To what extent should Wikimedia software development serve the needs of running Wikimedia software in non-Wikimedia environments?

Content Format (T119022) breakout session: Discussion room

(#Source-Metadata meetup)

Maps & Graphs:
Creating Interactive Content
Code of Conduct (T90908)

The Code of Conduct we are writing will help promote a more welcoming and respectful community. Let's discuss the ongoing work.

Service-oriented architecture:

Enhance our service architecture using a cluster coordination system like kubernetes (T122822) and how to manage the long-term maintenance of services (T122825)

5:00 PM Buses back to WMF
Dinner - don't forget to sign-up

Evening Event: We will do small group dinners on Monday night. We will be asking for volunteers to take small groups (6-12 people) to a restaurant of your choice. It will be up to you to pick a location, make a reservation if necessary and set a participation limit for your dinner. For now, if you would like to help out and volunteer to lead a group please email For reimbursement ease, it would be ideal if all small group lead volunteers are WMF staff or contractors. More info coming soon.

Sign-up Here: Wikimedia Developer Summit 2016/Dinner sign-up

Tuesday, January 5[edit]

Venue: Mission Bay Conference Center


Work in progress -- see phab:T119593

Day 2
Robertson 1
(200 person theatre)
Robertson 2
(50 person classroom)
Robertson 3
(50 person classroom)
UnConference (Leach) Room 1
(40 person theatre)
UnConference (Leach)

Room 2
(40 person theatre)

UnConference (Leach) Room 3
(24 person classroom)
8:30 AM Participant arrival and breakfast
9:00 AM

(50 min)

Discussion room From beta to full-rollout: when is a feature 'good enough', what is 'buy in' and how should we progressively roll features out?


Community members, we want your feedback!

Data is being collected, transformed, and served in a few different ways (ORES, Event Bus, Pageview API, Event Logging, etc.).  Let's talk about possible ways to combine efforts.


Etherpad: WikiDev16-DataFlows

Come talk about Labs and Tools

What do you wish it did, what does it do well, what does it not do well, and anything else that comes to mind.

FIXME: link to task

9:50 AM

(10 min)

Coffee Break
10:00 AM

(80 min)

Working area focus: Software engineering

T119032 - Working area overview: "Central problem: how do we simultaneously make our software more logical and obvious for all contributors, and make it more useful and reliable for the users of our sites?"

User Interface (T119162) breakout session:
  • T114071: Let's discuss the skin creation process
  • What is the scope of a skin, what are they and should they be, what are the major roadblocks when creating skins and improving core support for skins?

Etherpad: WikiDev16-skinning

Real Time Collaborative Editing (T112984)

Winner of session strawpoll from T119162

Focus on UX and social factors (not technical implementation)

Community Tech: Wishlist Survey top 10 ideas and Q+A (phab:T122833)
  • Phab:T114246 -- Quality control and newcomer socialization (ORES)
  • Data is being collected, transformed, and served in a few different ways (ORES, Event Bus, Pageview API, Event Logging, etc.).  Let's talk about possible ways to combine efforts. (Make-up session if nobody shows up at 09:00)
T114019 -- Dumps 2.0 for realz (planning/architecture session):
  • What are the main problems with the xml/sql/other wiki dumps? How would they be produced/made available if we rewrote from scratch?
  • Session agenda and minutes


(10 min)

Coffee Break
11:30 AM

(80 min)

Working area focus: Content access and APIs

T119029 - Working area overview: "how do we make accessing and distributing our data easier and more useful?"

Content Format (T119022) breakout session: Discussion Room WikiProjects and Software Development Working area focus: How to interact with communities when developing software?

T113490 - Working area overview: "Problem solving: As a developer or a community member, what are the best/worse experiences you have known? How can we improve communication between users and developers? How Community Liaisons can help?"

Schedule a session
12:50: PM

(70 min)

2:00 PM

(80 min)

Working area focus: Collaboration

T119030 - Working area overview: "Central problem: how do we scale editing our code up to populations similar to editing our projects, proportionally increasing our positive impact and productivity? Agenda for this session: Make code review not suck (Phab:T114419)"

User Interface (T119162) breakout session: Discussion Room Let's talk next generation video for Wikipedia and friends Data analysis with (python) MediaWiki-Utilities (Phab:T114247)


Exposing structured (multilingual) data to the search engine how to better handle different content types and allow exposing + searching structured data in the search engine? (Phab:T89733)
3:20 PM

(20 min)

Afternoon Snack Break
3:40 PM

(80 min)

5:00 PM Buses back to WMF

Evening Event: Party at WMF HQ. 5:30pm - 10:00pm. More details coming soon.

Wednesday, January 6[edit]

Venue: WMF office
Welcome to the Wikimedia Foundation office!

Expect one full day of unscheduled discussions, hacking, and hands-on work.

Wikimedia Foundation
3rd floor and 5th floor event space.
149 New Montgomery Street
San Francisco, California 94105


Breakfast is served starting at 9am. Lunch will be served at 12:00. Afternoon snacks will be provided. Dinner and drinks will be served around 5:30. All food will be served on the 5th floor.

Available Space[edit]

5th floor Wikimedia Foundation event space and large conference room, WMF 3rd floor (engineering floor). Please do not disturb WMF staff on the North Side of the 5th floor or on the 6th floor. Please do not move or disturb any desks or personal belongings of WMF staff on the 3rd floor. There are plenty of communal tables and couches. Key cards are needed to move between the 3rd and the 5th floor. We are not able to issue key cards to non WMF staff. Non WMF staff should please ask WMF staff or event organizers for assistance moving between floors.

Evening Event[edit]

Informal/relaxed dinner and drinks provided in 5th floor working space, feel free to stay and work, hack or hang out until around 10pm.

Travel sponsorship[edit]

We have a modest travel budget that we want to use to bring key participants to the Summit. The registration form includes an option to request travel sponsorship. Candidates for travel sponsorship must be active contributors in ongoing Summit proposals (see Call for participation).

We plan to communicate travel sponsorship decisions to all candidates by 2 Oct 2015. We will keep the possibility to request travel sponsorship as long as we have budget available, evaluating new candidates as they come.

Previous summits[edit]

The Wikimedia Developer Summit is a combination of three events organized in San Francisco in the past: the 2014 Architecture Summit, the yearly Wikimedia Foundation Engineering All-Hands/Tech Days event, and the San Francisco Hackathon.


Organizers and Friendly Space Policy contacts:,

Other important local phone numbers:[edit]

Event Emergency Phone Number: 1-510-735-4130 (please only use this number in case of a true emergency)

Mission Bay Center: 1-866-431-8273

Local Emergencies: 911

Non emergency local law enforcement: 1-415-553-0123

Local sexual assault hotline:

San Francisco Women Against Rape (SWAR) Hotline: 1-415-647-7273 (24-hour)

Local taxi companies:

  • Yellow Cab: 1-415-333-3333
  • SF Green Cab: 1-415-626-4733
  • Luxor Cab: 415-282-4141
  • Uber and Lyft Services are also available.

Name, address and phone number of a local hospital:

San Francisco General Hospital

1001 Potrero Ave, San Francisco, CA 94110

Emergency Room phone number (415) 206-8111

Hospital operator (415) 206-8000

Concentra Urgent Care - Potrero Hill

2 Connecticut St, San Francisco, CA 94107

(415) 621-5055

A few phone numbers for some local embassies

  • British Consulate General: 1-415-617-1300
  • Consulate General of Canada: 1-415-834-3180
  • Consulate General of India: 1-415-668-0683
  • German Consulate General: 1-415-775-1061
  • Consulate General of Russia: 1-415-928-6878
  • Consulate General of France: 1-415-397-4330
  • Consulate General of Italy: 1-415-292-9200
  • Consulate General of Spain: 1-415-922-2995
  • Consulate General of Sweden: 1-415-788-2631
  • Consulate General of Netherlands: 1-877-388-2443
  • Consulate General of Israel: 1-415-844-7500