- Review content and compare with on-wiki content to identify potential coverage gaps.
- Interview and collaborate with SMEs in each area to identify key user tasks and potential gaps in portal content.
- Update site structure and content, confirm correct sequencing for content on each page.
- Complete task-completion-focused UXR (tracked in T286087 and related).
- Review and finalize all copy.
- Add any docs not already included in the Key Docs list to the schedule for doc review.
- Resolve all TODOs in markdown files.
Notes
Subjourney: General interest in contributing
- Read the code of conduct
- Choose a project by programming language
- Go to that project’s docs, and read the contributing instructions
- Set up your development environment
- Write and submit code
- Set up your development environment
- Go to that project’s docs, and read the contributing instructions
- Choose a project by programming language
- Read the code of conduct (Omitted due to high friction)
- Choose a good first bug
- Select the project tag on the task
- Navigate to the project description page
- Find a link to contributing instructions or a link that leads to contributing instructions
- Set up your development environment
- Write and submit code
- Set up your development environment
- Find a link to contributing instructions or a link that leads to contributing instructions
- Navigate to the project description page
- Select the project tag on the task
- Choose a good first bug
Subjourney: Specific interest in contributing
- Read the code of conduct
- Choose a project by topic, or search for a specific project
- Go to that project’s docs, read the contributing instructions, and follow them
- Choose a project by topic, or search for a specific project
- Set up your development environment
- Write and submit code
Tasks
- Do a short task
- Add a feature
Objectives
- Connect contributors with open source projects accepting contributions
- Give contributors the information they need to be successful
Strategy
- The Dev Portal shouldn’t attempt to be a comprehensive catalog of every Wikimedia software project. In cases where a contributor is looking for a specific project not listed in the Dev Portal, link to tools like code search that can help them find for a specific project.
- Projects listed by programming language should have, at a minimum, contributing instructions that are more than just a link to a set of tasks. Although good first task processes are a great tool to help contributors, a Phabricator task on its own is not a viable starting point without contributing instructions. Because of this, I’ve removed Good first bugs as a key doc and relied on linking to it from New Developers.
- Instead of listing projects individually by topic, link to landing pages that can be longer and provide more context.
- In order to allow for more context, link to a landing page instead of linking to Phabricator and Gerrit docs individually.
- Add links to contributing instructions alongside links to software project landing pages
Proposed structure
Learn how contributing works (new-contributor)
- Code of conduct
- Developer accounts
- New developers
- WikiContrib
Contribute by topic (contribute-by-topic)
- Documentation
- Localization
- Mobile apps
- Offline reading
Contribute by programming language
- Python (contribute-python)
- Pywikibot
- JavaScript (contribute-javascript)
- Gadgets
- Codex
- PHP (contribute-php)
- MediaWiki and extensions
- Ruby (contribute-ruby)
- Wiki Education Dashboard
Search all projects (search-projects)
- Code search
- doc.wikimedia
- Gerrit repos list
- GitHub repos list
- GitLab repos list
- Toolhub
Guidelines and code conventions (single doc render)
- Developer guidelines landing page
- Coding conventions landing page
Future ideas
- Add a way to browse projects by human language
- Replace the New Developers page with the Dev Portal by creating a page for the “Some basics to know” section; moving New_Developers/Communication_tips somewhere else and updating transclusion on How to become a MediaWiki hacker
Projects with contributing instructions that I didn’t add but could
- https://wikitech.wikimedia.org/wiki/Get_involved
- https://gerrit.wikimedia.org/g/blubber/+/master/CONTRIBUTING.md
- https://wikitech.wikimedia.org/wiki/Analytics/Systems/Wikistats_2#Contributing_and_Deployment
- https://github.com/wikimedia/toolhub/blob/main/docs/CONTRIBUTING.rst
Things I looked at that have insufficient contributing instructions for developers
- https://www.wikidata.org/wiki/Wikidata:Contribute
- https://commons.wikimedia.org/wiki/Commons:Bugs
- https://www.mediawiki.org/wiki/Skin:Vector
- https://www.mediawiki.org/wiki/Design#Process
Checklist from comment
More notes from spreadsheet cleaning: following docs are in previous lists of key docs but not included in the current version of portal, we should make an explicit inclusion/exclusion decision on them:
- https://www.mediawiki.org/wiki/Development_guidelines (my vote: include! maybe just left this out by accident)
- Included
- https://www.mediawiki.org/wiki/Category:WMF_Projects
- Excluded
- https://www.mediawiki.org/wiki/Special:MyLanguage/Security_for_developers (the portal currently links to https://www.mediawiki.org/wiki/Security)
- Linked to Development Guidelines landing page instead
- Exclude: https://www.wikidata.org/wiki/Wikidata:Data_donation (Explict decision per f2f with @apaskulin on related work in phab:T293770 and phab:T299084)
- https://meta.wikimedia.org/wiki/Special:MyLanguage/Abstract_Wikipedia
- Excluded: No contributing instructions. Could include under Connect