Page MenuHomePhabricator

Finalize dev portal content and structure: "Contribute" section
Closed, ResolvedPublic

Description

  • 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
  • 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

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
    • 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

Things I looked at that have insufficient contributing instructions for developers

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:

Event Timeline

It's possible that this site section should include a link to the Apps cross-collection landing page, in case a developer is looking to contribute to app development? The current version of the portal does not include a link to https://meta.wikimedia.org/wiki/Wikimedia_Apps, but it should. (doc review tracked by T293771). Right now, the app-related content is all Android app stuff: https://developer-portal.wmcloud.org/get-started/wikimedia-tech/#wikipedia-for-android

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:

apaskulin updated the task description. (Show Details)

Change 777441 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Update contributing section

https://gerrit.wikimedia.org/r/777441

Change 777441 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Update contributing section

https://gerrit.wikimedia.org/r/777441

I think perhaps your work on this, along with the existence of Toolhub, may have resolved https://phabricator.wikimedia.org/T136866?

Change 782484 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Add contributing guides

https://gerrit.wikimedia.org/r/782484

Change 782484 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Add contributing guides

https://gerrit.wikimedia.org/r/782484

Change 788870 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Merge content overview into use content

https://gerrit.wikimedia.org/r/788870

Change 788870 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Merge content overview into use content

https://gerrit.wikimedia.org/r/788870

Change 789817 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Remove gadget tutorial from contribute section

https://gerrit.wikimedia.org/r/789817

Change 789859 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Add MediaWiki to contribute by topic

https://gerrit.wikimedia.org/r/789859

Change 789860 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Move Java higher on the page

https://gerrit.wikimedia.org/r/789860

Change 789864 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Remove Toolhub from contributing section

https://gerrit.wikimedia.org/r/789864

Change 789817 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Remove gadget tutorial from contribute section

https://gerrit.wikimedia.org/r/789817

Change 789864 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Remove Toolhub from contributing section

https://gerrit.wikimedia.org/r/789864

Change 789860 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Move Java higher on the page

https://gerrit.wikimedia.org/r/789860

Change 789859 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Add MediaWiki to contribute by topic

https://gerrit.wikimedia.org/r/789859

Change 790410 had a related patch set uploaded (by Alex Paskulin; author: Alex Paskulin):

[wikimedia/developer-portal@main] content: Use longer descriptions

https://gerrit.wikimedia.org/r/790410

Change 790410 merged by jenkins-bot:

[wikimedia/developer-portal@main] content: Use longer descriptions

https://gerrit.wikimedia.org/r/790410