User:TBurmeister (WMF)/Sandbox/DevPortal
This page is obsolete. It is being retained for archival purposes. It may document extensions or features that are obsolete and/or no longer supported. Do not rely on the information here being up-to-date. |
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.