DST wants to connect with WMF teams who do work on the front end to understand when and how they could adopt Codex.
Adoption spectrum
We see teams as being somewhere on the following spectrum of Codex adoption:
- Information phase. Teams in this phase have not started using Codex (or possibly Vue.js) and need information about what we're doing, when we're doing it, and how they could get onboarded to Codex. They may not know exactly what's blocking their adoption of Codex or when they would prioritize doing so.
- Adoption phase. Teams in this phase have started using Codex or have a general plan for doing so in the future. They likely know some of the things blocking them and have specific needs.
- Collaboration phase. Teams in this phase have not only started using Codex, they're also contributing to it. They have a deep understanding of Codex and are actively supporting its development.
In order to serve all teams and eventually level them up to the collaboration phase, we should develop different processes to support the three phases.
Process
0. Collect initial data on thoughts about Vue adoption
In this stage, we want to college some basic information from each front-end team about their thoughts on adopting Codex, which means adopting Vue as well. Since Vue adoption is a critical part of Codex adoption, we will ask an engineer (likely the tech lead) on each team what their team is thinking about when and how to adopt Vue and Codex, and what's blocking them from doing so. See T324481.
1. Introduce Codex + Vue.js via the roadshow
For teams in the information phase (and potentially in the adoption phase), we need to start by introducing our work to enable these teams to understand how they can use the design system and what it would mean to start using Vue.js. Once the teams are informed of the basics, they will be better equipped to tell us what they need to adopt Codex.
This step will be completed via the DST roadshow (see T317360). That task will cover both synchronous and asynchronous methods for providing teams with the information they need to start thinking about onboarding with Codex.
Once teams complete this step, they will move into the adoption phase.
2. Meet with each team to discuss Codex adoption
For teams in the adoption phase, we will hold a synchronous meeting to discuss general plans for adopting Codex and anything blocking the team from doing so. This will enable the DST to provide support and prioritize work that will ease adoption. We should meet with all product teams and relevant tech teams (see Desiree's comment for a list of tech teams).
Draft list of teams to meet with:
- Anti-harassment tools
- Campaigns
- Community tech
- Editing (?)
- Growth
- Fundraising tech (?)
- Inuka
- Language
- Moderator tools
- Structured data
- Trust and safety tools
- Web (?)
- WMDE (?)
- API platform
- Analytics platform
- Technical engagement (toolhub)
Process
- Schedule meeting.
- Rep from DST schedules a 30 minute meeting with the Product Manager (or similar), Designer, Tech Lead, and Program Manager
- At time of scheduling, DST rep includes a meeting description with a list of links to resources and some topics for the team to think about beforehand if possible
- Hold meeting. Goals:
- Help the team understand what to expect when starting to use Codex, including:
- New processes/tools for design (resources: ??)
- Onboarding to Vue.js (resources: Vue 3 docs, access to Vue Mastery trainings)
- Starting to use Codex Vue components, design tokens, and icons (resources: Codex docs, docs on using Codex in MediaWiki, sample projects)
- Evaluating performance concerns (when to load Vue.js, supporting no-JS and slower connections)
- Ask the team what they view as blockers to Codex adoption
- Record responses so we can aggregate them across teams
- Ask about what specific resources the team wants
- Ask the team if they have a general plan for Codex adoption
- E.g. a timeline or specific project
- If they don't, ask them to consider this and get back to DST rep asynchronously
- Inform the team of DST's role in providing support
- Explain prioritization and general timeline of in-progress and future design, Codex, and infrastructure work
- Explain hybrid model and that contributions to Codex may be necessary (and are welcomed)
- Provide info on how the team can contact the DST for various needs
- Help the team understand what to expect when starting to use Codex, including:
3. Evaluate feedback from meetings
After the meetings are held, we will aggregate information about blockers to Codex adoption and review it as a team so we can prioritize work that will unblock adoption.
To do
- Review the process with the DST, update, and finalize
- Track team meetings and evaluating feedback in Phabricator