Jump to content

Wikimedia Technical Committee/Processes

From mediawiki.org

This page documents on-going routines for Technical Committee. This page was originally created as the result of an audit of existing practices, tracked as T125218.

Committee meetings

[edit]

Creating the agenda

[edit]

Each private committee meeting records its agenda and minutes in a private Google Doc. To create an agenda:

  • Make a copy of the template (requires access to the Technical Committee's Google Drive), and rename the file with the meeting date.
  • Copy action items from the previous week’s meeting minutes into the “Status of our action items” section of the agenda.

Taking meeting minutes

[edit]

During the planning meeting, the facilitator should take notes by subject and speaker, providing links to relevant Phabricator tasks and updating the times shown in the agenda to reflect the progress of the discussion.

To complete the minutes:

  • Extract action items into the action items section.
  • Summarize the minutes into 3-10 bullet points, and add them to the public notes section.

Public notes example

  • Discussed: Strategy for PHP interface changes phab:T193613. This RFC proposes policies and strategies to mitigate problems arising from the need to change PHP interfaces that are implemented by classes defined by extensions. In particular, it proposes a separate policy that defines the stable interface for use by extensions, see <https://www.mediawiki.org/wiki/Stable_Interface_Policy>.
  • Discussed: Reconsider how we run QUnit unit tests phab:T212521. This RFC proposes restructuring unit tests away from using QUnit.
  • Discussed: Serve Main Page of WMF wikis from a consistent URL phab:T120085. This RFC proposes serving a wiki’s main page from the domain root. The configuration option has been merged as disabled by default, and the RFC is ready for discussion with stakeholders.
  • Discussed: Need to clarify consequences of approved RFC Define criteria for setting explicit PHP support target for MediaWiki phab:T228342. Guidelines established by this RFC should be available on mediawiki.org, including process for announcing changes to the PHP version required for core on wikitech-l.
  • No IRC meeting next week

RFC office hours

[edit]

When scheduled, public RFC discussions on IRC happen directly after the private committee meeting and take place in #wikimedia-office on Freenode.

Sending a reminder email

[edit]

An hour before the RFC discussion on IRC starts, send a reminder to Wikitech-l.

Example

Subject: Up next: RFC discussion about versioning of the new core REST API.

This was already announced in the last week's TechCom weekly digest, but in case you have missed it:

In one hour, we will be talking about <SOME TOPIC OR RFC: NAME> <LINK TO PHABRICATOR TASK>

You can join the discussion in the #wikimedia-office channel on Freenode.

Chairing the meeting

[edit]

We use MeetBot commands to manage the meeting and generate notes. See the example notes from 2019-05-29.

Use the bot to start the meeting, call out #info for the meeting summary, and end the meeting. The chair should also collect questions, remind people of the current topic, and try to facilitate a structured discussion.

Command Action
#startmeeting TechCom RFC discussion Start the meeting
#topic Route Handler Interface RFC Set the topic for the meeting
#link https://phabricator.wikimedia.org/T221177 Record a link
#chair alice Add Alice as a co-chair
#info <bob> RFC review meetings happen in IRC. Record Bob's comment in the meeting summary
#endmeeting End the meeting and generate the notes

Weekly digest template

[edit]

Start a thread on Wikitech-l.

Subject:

  • TechCom meeting <YYYY-MM-DD=DATE OF UPCOMING WEDNESDAY MEETING>

Links:

Body template:

This is the weekly TechCom board review in preparation of our meeting on Wednesday. If there are additional topics for TechCom to review, please let us know by replying to this email. However, please keep discussion about individual RFCs to the Phabricator tickets.

Activity since Monday YYYY-MM-DD on the following boards:

https://phabricator.wikimedia.org/tag/techcom/
https://phabricator.wikimedia.org/tag/techcom-rfc/

Committee inbox:

Committee board activity:

New RFCs:

Phase progression:

IRC meeting request:

Other RFC activity:

Public minutes

[edit]

During the weekly planning meeting, the facilitator should take high-level notes that capture the main points of the discussion. Following the meeting, the facilitator should clean up and condense these notes (see previous posts for style and format examples), before posting them to: a# mediawiki.org, as a new subpage under Wikimedia Technical Committee/Minutes.

  1. TechCom Radar newsletter, by sending the new minutes subpage from Newsletter:TechCom Radar.
  2. Wikitech-l, reply to or create the "TechCom meeting YYYY-MM-DD" thread.

Radar newsletter on mediawiki.org

[edit]

From the newsletter page, select "Announce", add Wikimedia_Technical_Committee/Minutes/YYYY-MM-DD as the page title and "TechCom Minutes YYYY-MM-DD" as the summary.

Template for the Minutes subpage:

{{TechComPlanningMeeting/header|private-minutes=ADD LINK TO GOOGLE DOC}}

<COPY PUBLIC MINUTES FROM GOOGLE DOC>
  E.g.:
  The minutes from TechCom's triage meeting on ….

  Present: …

  Hosted IRC discussion on <description> <link>
  * Minutes: <link>
  * Log: <link>

  Topic
  …

  Next week IRC office hours
  …
</COPY>

{{TechComMinutes}}

Mailing list

[edit]

Send out to wikitech-l@lists.wikimedia.org

Templates for Wikitech-l mailing list:

Subject: TechCom meeting YYYY-MM-DD

<COPY PUBLIC MINUTES FROM GOOGLE DOC>
  Here are the minutes from this week's TechCom meeting:

  * <Last call/Discussed/etc.>: <RFC name> <Phabricator link>
  <List each item from the public meeting minutes with a short description.>

  * IRC discussion next week: <If applicable, add a short summary
  of the planned discussion topic.>
  As always, the meeting will take place on Freenode in the
  #wikimedia-office channel at HH:MM UTC (HH:MM PDT, HH:MM CEST).

  Workboards:
  * <Phabricator link>
</COPY>

You can also find our meeting minutes at
https://www.mediawiki.org/wiki/Wikimedia_Technical_Committee/Minutes

Periodic welcome and practices email

[edit]

https://phabricator.wikimedia.org/T164538

Every 6 months around MW releases, send out a welcoming overview on Wikitech about current practices and policies, and highlight anything that may have changed.

Team function

[edit]

Meet weekly

[edit]

This seems to be important for cohesion and momentum. While many of the essential duties could be performed asynchronously, having regular time together has intrinsic value. In addition, several of the processes are more efficient and/or more likely to be done during a recurring meeting.

TechCom holds a private weekly meeting to plan community activity. The goal is to help provide clear, collaborative and timely counsel on architectural decisions. To do this, TechCom attempts to process the latest RFCs and review anything that has been overlooked, reviewing relevant Phab tickets (mainly on the TechCom-RFC board as of this writing in 2016). Attendance is private, but everyone is invited to add items to the agenda for the next meeting (additions from outside of TechCom are suggestions which TechCom members may decline).

Meeting chair copies committee meeting minutes from Google Docs to mediawiki.org.

Reliable communications

[edit]

Committee members need to know how to broadcast updates to each other, how (where) to ask each other questions, and where to post or read status reports not specific to individual RfCs. (Updates about RfCs should go on that RfC's wiki page or phab task.) Email, a conpherence in phabricator, and IRC are all valid channels, but the group should have norms about responsiveness.

Discussions about TechCom itself

[edit]

This includes discussions about internal business (e.g. membership, meeting schedules), and to work on continual improvement. Regular retrospectives (quarterly or every 6 months) would probably be helpful. Due to timezone issues, it might be worth experimenting with asynchronous retrospectives.