Page MenuHomePhabricator

Design exploration: Goal-setting for groups or individuals
Closed, ResolvedPublic

Description

User stories:

As an event organizer, I want to be able to set a goal for my event, so that participants are motivated to join and contribute based on the goal, and so that I can have a clear story of the event outcome based on the goal.

As an event participant, I want to know how my contributions help accomplish the goals of the event, so that I can understand the impact of my edits and of the event overall.

As an individual editor, I want to be able to set goals for myself and track my progress against goals, so that I can edit with clear milestones and boundaries that are manageable and rewarding.

As an individual editor, I want to be able to discover goals set by other editors or groups of editors, so that I join in these challenges myself or be inspired to create a similar one myself.

As an individual editor, I want to be able to know if other editors/groups have reached or exceeded goals, so that I can reward them for a job well done and spread more wikilove.

Background:

When editors first create accounts, there may be some basic milestones for them to reach that are accompanied by simple notices, such as reaching 100 edits or 1000 edits. But what about after that? How can editors continue to feel motivated to edit, and how can they have goals that are meaningful to them and/or the communities they collaborate with on the wikis?

One way we are thinking of addressing this question is by allowing editors to set goals, either as individuals or for a larger group. The individual goals can be considered like a "personal challenge." The group goals can be a goal for an event (like an edit-a-thon or backlog drive) or for a group/community (like a WikiProject or affiliate). The uniting factor is that a goal needs to be chosen by at least one editor, and then it needs to be publicly shared (so there is a sense of responsibility/ownership), and then the editors need to be able to track their progress against the goal and have a way to share the final outcome (such as reaching the goal, not reaching the goal, almost reaching the goal, etc).

We have seen indicators on the wikis that people respond positively to the call for a "challenge" or contest, in which people are mobilized to complete certain tasks or reach certain milestones within a period of time. For example:

  • 100wikidays: A personal challenge in which a person aims at the creation of (at least) one article per day for 100 days in a row. The general theme and rules follow the idea of the “#100happydays” challenge. Here is a Diff blog post on the challenge and some people's motivations behind it.
  • Wikipedia:The UK and Ireland 20,000 Challenge: Aiming to reach 20,000 article improvements for the UK and Ireland long term. Anybody can contribute any article on the UK and Ireland to add to this list independently whenever they feel like it.
  • Wikimedia conferences, often have challenges for conference attendees, such as the 2024 editing challenge at WikiConference North America (" ...everyone who fills 7 out of 13 tasks will receive a special and unique WikiConference North America barnstar") and the 2023 Wikimania editing challenge (" ...everyone who fills 8 out of 16 tasks will receive a special and unique Wikimania barnstar.").
  • WikiCup: A championship that has taken place every year on Wikipedia since 2007. The Cup is played and won by skill of editing. The purpose of the Cup is to encourage content creation and improvement and make editing on Wikipedia more fun. Contestants may earn "round points" by submitting quality content, Main Page content, or quality-content reviews. It has also inspired smaller, more localized challenges, such as the Michigan Wikipedians 2011 Challenge.

With these larger group challenges, people can feel motivated by goals - by they do not need to worry about setting up the goals themselves. The goals/judging criteria were created by the organizers. This is something else for us to consider - in other words, how can we make it very easy for people to take on or adopt goals, either within groups or individuals? For example, maybe someone wants to take on a personal goal, but they may want to be inspired by goals taken on by other individuals in the past, For this reason, it may be nice to allow editors to share their goals and for other editors to be able to adopt or duplicate them.

For more information, check out Personalized Challenge Exploration.

What we want to learn:

  • What editor and new potential editor archetypes does this work serve? Who would be interested in using this, and why? What would they get out of the experience?

Defining goals:

Type of goal:

There are so many things we could allow as a set goal, such as: number of edits, number of articles, created, etc. However, I think a good way to think about what we'll allow is: What will we track, as part of Collaborative Contributions? Perhaps we can consider allowing any goal on a data point we will already be tracking, such as: number of articles created, number of articles improved, number of bytes.

This will also help us learn what data points we should prioritize adding to future iterations of Collaborative Contributions. In other words, if some editors hinge a goal on a certain data point, then that can tell us that such a data point is important to people.

Time period of goal:

Generally, I think goals with time periods are the most motivating, since people have an incentive to keep on going and finish something on time. If a goal has no deadline, then it can be easy to slack on it and think "I'll continue later..." So, for an MVP, I think we would want to preserve the current event registration structure in which a goal has a start and end date.

However, we may want to explore allowing goals to be set for indefinite times in the future. This could be helpful for particularly ambitious and large goals. For example, here is a large challenge that has no defined deadline, and it also has a progress bar against a goal: Wikipedia:The UK and Ireland 20,000 Challenge.

Group vs. individual goals:

If we use Event Registration (with goal-setting and a progress bar) as the central engine for goal-setting, I can imagine that there are many different ways to set goals, including:

  • Registration closed:
    • Individual sets personal goal and does not allow others to join. For this, no event organizer right would be required for usage.
  • Registration open:
    • Individual sets group goal and allows others to join (i.e., registration open). For this, no event organizer right would be required for usage, perhaps, unless an editor wanted to access organizer features, such as: seeing private registrants, sending mass emails, etc. So, maybe event organizer right is helpful, but not required.
      • In this scenario, people can join if they want but it isn't really a formal event because the editor may not prioritize organizer tasks, like promoting the event and mentoring newcomers. It is more like a "join if you want... or don't join... all is fine with me!" approach.
    • Organizer(s) set collective goals for the group. In this scenario, event organizer right may be required, depending on the wiki.

I can also imagine that, in group activities where registration is open, goals could be handled in at least ways, which are:

  • Collective group goals: This focuses on what the group can do together, which can be helpful if some editors feel less confident/have less time & resources but still want to participate.
    • Examples: Create 10 articles all together as a group, add 10 references all together as a group
  • Per participant group goals: This focuses on goals for each individual. Maybe they are the same for all editors, or maybe they vary depending on the profile of the editor (such as being experienced) or what the editor says they can take on. But the idea is that each editor is responsible for something concrete, without other editors potentially picking up the slack for them.
    • Examples: Each participant must create 10 articles, each participant must add 10 references, each newcomer must create at least 1 new article while each experienced editor must create at least 10 new articles

I think both options could be useful for different audiences and different use cases. For example, let's say that someone sets up a personal challenge (with open registration) to create 10 articles, and they really do want to create 20 articles themselves. They wouldn't want someone creating 8 articles and then doing the bulk of the work to complete the goal. They want to have the satisfaction of reaching 10 themselves! However, another editor may really like the idea of other editors helping them reach their goal. It could go in so many different directions.

Integration with other tools & workflows:

A goal-setting and goal-tracking system could integrate with many other tools and workflows on the wikis, including (but not limited to):

  • Collaboration List: Goals can perhaps be shared in the event listing. Maybe there could even be a new tab for personal challenges.
  • Forms of recognition like thanks & wikilove: Maybe there can be a way to find challenges/events that reached a goal (or almost reached a goal!), and then an easy way to recognize that effort by giving thanks or wikilove.
  • User page: There could be some template/badge for reaching a goal, which people could put on their user pages. Maybe it could be integrated with wikilove.
  • Impact module on Newcomer Homepage: Perhaps there could be metrics on the number of goals achieved.
  • Personal homepage: A new homepage is planned to be created, which will start as a moderator-focused homepage but evolve into a homepage for other types of editors and their needs. This contrasts with the Newcomer Homepage, since it will not focus on newcomer specifically. In this new page, people can maybe be able to set goals, discover goals of others, and celebrate successes related to their goal achievements or those of others.
  • Progression system: If a future Progression System is created for newcomers, then perhaps editors can be encouraged to create their own goals or join a group working on a goal together after they have completed some first basic milestones in the progression system.

Acceptance Criteria:

  • Develop design concepts for users being able to set individual goals or group goals.
  • Explore how goal-setting could be integrated with a potential future progression system. While little is known now about what this system may be, you can sync up with Amin to get some ideas.
  • Explore how goal outcomes (such as goal reached, goal almost reached, goal far from reached) could be broadcast and shared on the wikis, so that people could give feedback, thanks, wikilove, etc.

Event Timeline

ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
ifried updated the task description. (Show Details)
NOTE: this task was narrowed down to a tiny first MVP: organizers being able to set one goal, and progress against goal being displayed in event page, association pop-up, and contributions tab. all other explorations for goal-setting (e.g. individual goals, being able to set multiple goals) will be addressed and worked on in other tasks.
Design explorations
  • Organizer sets a goal (in the Enable event registration form)
    • Chooses the goal type (e.g. articles edited, bytes added - data points that we track already).
      • Sets the target (e.g. edit 25 articles)
        • Option to show/hide a public progress bar on the event page.

Progress against the goal will be displayed in (in order of priority):
a. Contributions tab
b. Event page
c. Event association dialog

Progress bar: We're planning on using the ProgressBar component. Right now, the component supports only an indeterminate version (used mostly for loading), so I've created a task to add a static variant that represents completion/achievement/progress. See: T407638: Create a determinate progress bar variant in Codex.

FlowMockup
Organizer sets goal in Enable event registration form
Screenshot 2025-10-17 at 12.48.53 PM.png (890×1 px, 541 KB)
Progress against goal in Contributions tab
contributions_table (20).png (2×2 px, 244 KB)
Progress against goal in Event page
event page (1).png (734×1 px, 356 KB)
Progress against goal in association dialog
post_publish_popup (7).png (1×2 px, 925 KB)