Project:New contributors/Roadmap

Vision
"Mary lands to our site and finds information, contacts and opportunities to contribute organized around thematic nodes that she can follow. She registers and is welcomed with a list of tasks. After filling out her profile, she is notified about projects, tasks and events related to her interests. She will receive new notifications whenever there is an update suiting her preferences."

People
Identify yourself to connect with relevant people and activities.

The User page is extended with category data using, becoming a proper profile:
 * Interests: OSS activities, programming languages and projects.
 * Opt-in options for each: Send me updates, Show me in lists.
 * Locations.
 * Languages.
 * Free software/free knowledge project involvement.
 * Social media handles.
 * Avatar.

The User Talk page is preloaded with LiquidThreads.

Automatic fields:
 * Badges - Project membership, Group membership, Events attended, Mentorship programs.
 * Maybe good to use an existing solution for this. OpenBadges?


 * Activity stats - MediaWiki, Gerrit, Bugzilla, Labs.
 * Could centralize these somehow, in a dashboard to show others.
 * See - List of Gerrit users

Social:
 * TBD - A way to show related users.
 * TBD - A way to show Wikilove / Barnstars / Likes given to and received from.

Searching people:
 * For lists of people around one tag see Groups.


 * Combined tag searches e.g. Barcelona AND JavaScript, Lua AND Willing to learn.

Metrics:
 * TBD: Lists of top contributors based on user stats e.g. top code reviewers of the month.

World map of contributors:
 * The old idea. Manual or allowing optional geolocation.

Nodes
The key information around a specific topic

Nodes attract newcomers and connect them with more established contributors sharing their interests. You visit a node to learn about a topic and the activity around it. You join a node to identify yourself, receive notifications, meet peers and collaborate.

Expect nodes about PHP, Android, Gadgets, Security, Open Data, Labs, Wiki Loves Monuments, Women, Bangalore, French...


 * When a user enters a new category through her profile, the corresponding node is created automatically in the Node namespace.
 * Users can define their level of involvement in the node: supporter or follower.
 * Supporters are listed at the top of the list.
 * Followers are not listed by default, but they can activate the option in their profile.
 * Users are listed and delisted automatically according to their profile preferences.
 * Users can join / leave a node via an an option in the node page.
 * Users can watch / edit / discuss in the node page & related Talk page, but they can't remove or manipulate the list.
 * The nodes' Talk pages are preloaded with LiquidThreads.
 * Duplicated / mistyped nodes can be redirected to the right ones.

Implementation under discussion.


 * Users can sign up explicitly as members, appearing as such in the list.
 * Groups that are officially recognized as Wikimedia User Groups are identified as such.

Projects
A standard way to report goals, members, tasks and updates.

All projects are encouraged to have a standard page under the Project namespace. The structure contains:
 * A box with data fields to be defined, like WMF projects have.
 * Members, connected with user profiles.
 * Description.
 * Standard process for status reports.
 * Related categories.


 * Project admins can identify users as project members with roles.

Tasks
A funnel to connect pending work with potential contributors.


 * Publish tasks for contributors, tagging them by interests, location, language...
 * A quick way to advertize and categorize in MediaWiki tasks that are already described and handled elsewhere (Bugzilla).
 * NOT a new parallel tool.
 * Integrated with Bugzilla.
 * Other tools like Gerrit sync with Bugzilla - see, "Integrate git/Gerrit and Bugzilla"


 * Users can add themselves as mentors for tasks.
 * Users can signal that they are interested in a task.

Events
A standard way to advertise activities and discover the people joining them.


 * Events share a lot with Tasks, but they are tied to dates and have many participants.
 * Task mentors = Event organizers. Interested in task = Sign up to event.
 * Events are automatically listed on a Calendar.
 * People signing up are automatically listed at the event.


 * After the event: organizers distribute badges to actual participants.

Notifications
Receiving updates about the things that matter to you.

Maintainers can contact users, filtered by tags, with:
 * Promoted tasks.
 * Events.
 * News and announcements.

If Echo is not ready yet for this we can fallback to an adaptation of TranslationNotifications. In the future, Flow should take over.

Automatic notifications for subscribers:
 * Your watched Project has a new status report.
 * Your watched user has a new role.
 * Your Group/Project has a new member.

Ontology

 * Considering using fuzzy geolocation coordinates in relation to city / region / country for better promotion of local activities e.g. promoting an event in San Diego (CA, USA) to contributors from Tijuana (BC, Mexico).


 * Study possibilities and benefits of syncing some of our categories with Wikidata:
 * Locations e.g. countries.
 * Programming languages.
 * Human languages.
 * FLOSS projects.
 * Hobbies