mob icon indicating copy to clipboard operation
mob copied to clipboard

Track the current goal of the mob

Open koeberlue opened this issue 3 years ago • 4 comments

Problem description

In a normal mob session we decide on a goal before jumping into the code. This helps us keeping our focus, identify (sub)tasks to tackle later on and generally be on the same page on what we want to achieve right now.

But we regularly have people join the mob session after the goal has already been specified, e.g. when they have to attend a meeting, answer important emails first or do a nappy change on their kid). Whenever people join they either can not fully participate directly, because they do not know the current goal, or they have to interrupt the mob to ask for the goal.

Possible solution

It would be great to specify a goal when calling mob start, e.g. mob start 6 --goal "Add new command line parameter".

Every subsequent mob start could then print the current goal, just as a reminder to everyone. Also there could be an additional command to get and set the current goal. Something like this:

$ mob goal # print the current goal 
> Add new command line parameter
$ mob goal "Fix NullPointerException in UserRepository" # set a new goal
> New goal: Fix NullPointerException in UserRepository

Additionally it would be great to see the current goal on https://timer.mob.sh as well.

koeberlue avatar Jun 30 '22 17:06 koeberlue

I understand the wish for having a goal that is shared among everybody.

Storing shared metadata in git is not that easy.

I'd suggest the following:

  • MVP
    • Add it as a property of a room in timer.mob.sh. The property consists of a goal, a timestamp when it was set, and perhaps the git user that set it
    • One can see the goal on the web. When the goal is changed by someone, everybody gets an update and the goal will update on the screen for everybody.
    • One can set the goal via the CLI (sending a PUT request to update the goal in the connected room) via mob goal GOAL
    • One can show the goal via the CLI via mob goal
    • One can delete the goal via the CLI via mob goal --delete
  • LATER ITERATIONS
    • change the goal on the web as well
    • on mob start, the tool sends a get request to timer.mob.sh to get the current goal and display it.

Does this make sense to you?

simonharrer avatar Jul 01 '22 06:07 simonharrer

Yeah, this sounds really great!

A small addition: Maybe the timer room could even show a list of all goals of the previous ~4 hours. Similar to the list of commiters. Besides helping people get on track this could also be a nice motivation boost. "Look what we already achieved today"

But maybe this should also fall under LATER ITERATIONS. I was just thinking that this might influence how the feature is implemented in the timer repository. What do you think?

koeberlue avatar Jul 01 '22 07:07 koeberlue

Hey @koeberlue sorry for this late response. I started working on the feature to set goals for the Mob. You can find my first implementation here. What do you think about it?

hollesse avatar Mar 16 '23 16:03 hollesse

Hey @hollesse , thanks for the work you put in. This looks great und would help us tremendously :)

koeberlue avatar Mar 21 '23 09:03 koeberlue