User:TBurmeister (WMF)/Sandbox/DevPortal

From mediawiki.org

See the live site structure at developer.wikimedia.org and more information at Developer portal: Content_strategy#Information_architecture


This doc proposes a set of high-level user goals -- or "critical user journeys" -- to be used as the top-level organizing framework for v4 of the Developer Portal. This proposal is based on previous work, including but not limited to: user personas and motivations, dev portal prototype v0-v3, and user research.

Each user journey proposed will be a top-level section in v4 of the Developer Portal. The rest of this doc outlines:

  • Methodology for designing this information architecture
  • Which user personas and v3 portal contents map to the newly-proposed sections

This page partially outlines the IA, but for easier iteration and feedback the full content is temporarily in this Google doc. See that doc for:

  • Proposed subsections for each section
  • Proposed Wiki content links for each subsection

Methodology[edit]

  • Used an open cardsorting approach to identify user goals from existing content descriptions from dev portal prototype v3.
  • Mapped user persona motivations to high-level user goals.
  • Reviewed Special:MostLinkedPages, Special:MostInterwikis, and Special:MostRevisions to identify frequently-used and important docs, and ensure that they would have a sensible home in the new structure.
  • Reviewed existing content hubs (especially Developer_hub and its talk page) to ensure key links are represented prominently in the new structure.
  • Reviewed and incorporated previous work and ideas like that at User:Waldyrious/Docs.
  • Reviewed findings from in-person user interviews to align high-level sections with observed user behavior and expectations.

Proposed sections and what they cover[edit]

The following sections outline how each of the the proposed user journeys -- which are the top-level elements for the developer portal navigation -- cover the previously-identified user persona motivations and content elements of developer portal prototype (v3).

Note: headings followed by two asterisks (**) are single-sourced sections that appear in more than one location.

Get started[edit]

Learn how Wikimedia software projects work[edit]

Browse tutorials[edit]

Learn about Wikimedia technology[edit]

Explore open source projects[edit]

  • MediaWiki**
  • Wikibase**
  • Wikipedia for Android**
  • Offline reading projects**
  • Cloud tools and services
  • Technical decision making process
  • Search the codebase

Set up developer accounts[edit]

Choose your goal and start coding[edit]

Use Wikimedia content or data in your project[edit]

Persona motivations and existing prototype content covered by this section

User persona motivations:

  • Use Wikimedia content in my app
  • Use an example dataset for data science purposes.
  • Use data from Wikimedia as part of my research.
  • Use data to understand my wiki, Wikimedia projects, and Wikimedia users

v3 prototype links:

  • Access content databases for Wikimedia project.
  • Access data from Wikidata.
  • Access Wikipedia without internet access.
  • Browse Wikimedia APIs
  • Download all Wikimedia projects for backup, offline use, research, and more.
  • Explore Wikimedia project data.
  • Fetch pages from Wikipedia, Wiktionary, Wikivoyage, and more.
  • Find articles in Wikipedia, images in Commons, and more.
  • Get data from Wikidata with the SPARQL query endpoint.
  • Get daily featured articles, most read pages, and more.
  • Get page view data for Wikimedia projects.
  • Get the number of unique devices accessing Wikimedia projects.
  • Get Wikidata, page views, edit scores, and more data from Wikimedia projects.
  • Get mobile-friendly content, featured article feeds, pageview data, and more.
  • Get pages by title on any Wikimedia project.
  • Get pages in mobile format.
  • Monitor the current and past performance of Wikimedia sites.
  • Review recent changes, and monitor content
  • Learn to use the MediaWiki Action API Geosearch module
  • Learn to use the MediaWiki Action API Images and Imageinfo modules
  • Retrieve and present relevant information from Wikidata by associating it with entities in my application.
  • Use MediaWiki Action API
  • Use MediaWiki REST API
  • Use Event Streams API to get the most recent changes to Wikimedia projects.

Browse web APIs[edit]

Learn with API tutorials[edit]

Reuse wiki content[edit]

  • Get featured content by date
  • Search for and display wiki pages and media
  • Parse wikitext page content
  • Get pages in mobile format
  • Get data from Wikidata with SPARQL

Access data and analyze wikis[edit]

  • Use Wikimedia open data sources
  • Get data about wikis
  • Get data dumps
  • Query content databases
  • Use machine learning to detect vandalism
  • Get a stream of recent changes
  • Access structured knowledge on Wikidata
  • Explore project data on WikiStats

Build and discover tools[edit]

Persona motivations and existing prototype content covered by this section

User persona motivations:

  • Improve a tool (mine or someone else's)
  • Share something cool that I built
  • Solve a problem on my local wiki
  • Download Wikimedia content to use in an offline app or to host a mirror

v3 prototype links:

  • Add context when searching for Wikipedia pages using the MediaWiki Action API.
  • Create bots that automate editing and wiki maintenance.
  • Edit pages from Wikipedia, Wiktionary, Wikivoyage, and more.
  • Find and share tools on Toolhub.
  • Get the latest updates, and connect with tool developers
  • Guide editors by suggesting places in an article where a link could be added.
  • Host your tools with Toolforge.
  • Suggest images to improve articles
  • Adapt code to different languages and regions.
  • Add or remove pages from a watchlist.
  • Create and edit pages.
  • Create bots that automate editing and wiki maintenance.
  • Learn to use the MediaWiki Action API Parse and Links modules
  • Use machine learning to detect vandalism.

Discover tools on Toolhub[edit]

Learn about MediaWiki extension points[edit]

Change MediaWiki behavior and appearance[edit]

  • Change the appearance of MediaWiki with skins
  • Add JavaScript or CSS gadgets to a wiki
  • Add scripting to wiki pages through templates

Automate editing and maintenance[edit]

  • Create scripts or bots that interact with MediaWiki pages
  • Use ML to detect vandalism
  • Use APIs to support editing

Extend and customize MediaWiki functionality[edit]

  • Browse extensions
  • Write new extensions
  • Improve or maintain extensions
  • Extensions FAQ

Host tools on Toolforge[edit]

Contribute to Wikimedia open source[edit]

Persona motivations and existing prototype content covered by this section

User persona motivations:

  • Contribute to a Wikimedia open source project
  • Contribute to Wikimedia docs.
  • Create documentation for a new Wikimedia project.
  • Improve the Wikimedia technical documentation that I use.
  • Learn about our tech stack and systems
  • Translate docs into my language.
  • Translate interfaces into my language.

v3 prototype links:

  • Explore Wikimedia open source code bases.
  • Find resources for writing and maintaining technical docs.
  • Learn about the infrastructure behind Wikimedia projects.
  • Read security policies for the MediaWiki platform and the Wikimedia Foundation.
  • Understand best practices for writing code for Wikimedia software.
  • Find maintainers and code stewards for Wikimedia open source software.

Learn how contributing works[edit]

  • Contribute to Wikimedia software
  • Contribute to MediaWiki and MediaWiki extensions
  • Code of conduct

Projects for new contributors[edit]

Featured Wikimedia open source projects[edit]

  • MediaWiki**
  • Wikibase**
  • Wikipedia for Android**
  • Offline reading projects**

Localization[edit]

Documentation[edit]

Accessibility[edit]

Connect with the tech community[edit]

Persona motivations and existing prototype content covered by this section

User persona motivations:

  • Find out what other people and teams are working on.
  • Connect with other technical contributors
  • Figure out who is responsible for something/who I can talk to about a specific topic or technology.
  • Mentor outreach participants.
  • Share something cool that I built

v3 prototype links:

  • Get a stream of the latest changes to Wikimedia projects.
  • Learn about why and how technical decisions are made.
  • Stay up to date with the latest updates.
  • Subscribe to the mailing list for notifications of breaking changes and other important announcements.
  • Track software deployments to Wikimedia Foundation servers.
  • Apply for a grant to improve software or conduct research.
  • Discussion related to the MediaWiki API and its ongoing development
  • Explore content from past hackathons or join us for an upcoming event.
  • Find maintainers and code stewards for Wikimedia open source software.
  • Find out about internships and mentoring opportunities with Wikimedia.
  • Get the latest updates, and connect with tool developers
  • Join the offline projects user group.
  • Understand the principles we follow to foster a welcoming community.

Explore hackathons & events[edit]

Communicate effectively[edit]

  • Communication channels
  • Code of conduct

Find code maintainers[edit]

Be a tech ambassador[edit]

Apply for grants[edit]

Wikimedia Foundation technical operations[edit]

  • Cloud services
  • Technical infrastructure
  • Software deployments
  • Performance monitoring
  • Security policies
  • System architecture

Get tech project updates[edit]

  • Wikimedia tech news
  • Technical community newsletter
  • Tech blog
  • Technical decision records


Grow your technical skills[edit]

Persona motivations and existing prototype content covered by this section

User persona motivations:

  • Grow my technical skills
  • Learn about and apply for outreach programs.

v3 prototype links:

  • Explore content from past hackathons or join us for an upcoming event.
  • Find out about internships and mentoring opportunities with Wikimedia.
  • Explore system architecture documentation.

Grow tech capacity in your wiki community[edit]

Explore hackathons & events[edit]

Learn about outreach and mentoring programs[edit]

Get help[edit]

How to get help and support[edit]

MediaWiki FAQ[edit]