From 401869969934acd99919287f78c5b6ff7ffc1f09 Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Fri, 30 May 2025 15:38:46 +0200 Subject: [PATCH 1/8] feat: :sparkles: guide on start of iteration --- iterations/_preamble.qmd | 9 +++++++ iterations/start.qmd | 52 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 iterations/_preamble.qmd create mode 100644 iterations/start.qmd diff --git a/iterations/_preamble.qmd b/iterations/_preamble.qmd new file mode 100644 index 0000000..3e04b00 --- /dev/null +++ b/iterations/_preamble.qmd @@ -0,0 +1,9 @@ +::: callout-important +We track our iterations' progress and tasks on GitHub with [this project +board](https://github.com/orgs/seedcase-project/projects/18/). +::: + +::: callout-tip +It's good practice to assign a timekeeper to keep us on track and so we +avoid spending too long on any one topic. +::: diff --git a/iterations/start.qmd b/iterations/start.qmd new file mode 100644 index 0000000..0ba63dd --- /dev/null +++ b/iterations/start.qmd @@ -0,0 +1,52 @@ +# Start of an iteration + +{{< include _preamble.qmd >}} + +An iteration starts with a planning meeting at the start of each month. +It should ideally be between 30-45 minutes. You as the team lead should +already have prepared for and made a general plan for the iteration, so +this meeting should not be used as a way for everyone to write out and +list all the tasks needed. Rather, the main purpose of this meeting is +to get everyone aligned on the aim and overall plan. + +This meeting should ideally *not* be held the same day as the previous +iteration's debrief and retrospective meeting. Two intense meetings in a +row tend to tire most humans out, and being tired is counterproductive +for an effective meeting. + +::: callout-note +A basic agenda for the meeting might be: + +- Review and agree on the iteration aims and end date. +- Review the list of tasks already listed. +- Brainstorm and add any other issues as needed. +::: + +### Before meeting + +In general, only you as the team lead are required to prepare for the +planning meeting. Before the planning meeting, you need to refine (or +create) the iteration aim and move any existing tasks (GitHub Issues) +into the iteration that are relevant to the aim of the iteration. An +iteration aim should be something that is achievable within the +iteration timeframe. + +You will also create any issues that are missing from the current list +of issues. While making issues, keep them as small as is reasonable and +as descriptive and targeted as possible. + +Other team members can optionally review the aim and output of the +iteration board, review the list of issues already listed, and write out +any potential issues as needed to complete the iteration aim. + +### During meeting + +During the meeting, someone will share their screen (if virtual) and the +team will go through the tasks on the board together. Everyone will +discuss and decide or agree on the iteration goal (the "increment" or +"milestone"). + +Then, everyone will briefly review the current list of tasks on the +board and brainstorm any other tasks that are needed. You'll all then +agree on the number of tasks in the iteration as well as the +distribution of priority labels of the tasks. From 44d42e514767383478abf6bb12e628dd47263485 Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Fri, 30 May 2025 15:40:14 +0200 Subject: [PATCH 2/8] build: :wrench: add iteration start to Quarto sidebar --- _quarto.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/_quarto.yml b/_quarto.yml index f1cb441..0df4dd7 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -22,6 +22,9 @@ book: ::: chapters: - index.qmd + - part: "Iterations" + chapters: + - iterations/start.qmd - part: "Operations" chapters: - operations/security.qmd From 0625b70f6b2d9794aa508f1f66df517309cb46de Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Mon, 30 Jun 2025 13:27:48 -0400 Subject: [PATCH 3/8] docs: :pencil2: we should review the roadmap too --- iterations/start.qmd | 1 + 1 file changed, 1 insertion(+) diff --git a/iterations/start.qmd b/iterations/start.qmd index 0ba63dd..0dc5f13 100644 --- a/iterations/start.qmd +++ b/iterations/start.qmd @@ -18,6 +18,7 @@ for an effective meeting. A basic agenda for the meeting might be: - Review and agree on the iteration aims and end date. +- Review the roadmap - Review the list of tasks already listed. - Brainstorm and add any other issues as needed. ::: From a3507fbf218fbdf80886a53fc6d056b3da218941 Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Mon, 30 Jun 2025 13:28:22 -0400 Subject: [PATCH 4/8] docs: :pencil2: should be longer term roadmap --- iterations/start.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iterations/start.qmd b/iterations/start.qmd index 0dc5f13..17aea6f 100644 --- a/iterations/start.qmd +++ b/iterations/start.qmd @@ -18,7 +18,7 @@ for an effective meeting. A basic agenda for the meeting might be: - Review and agree on the iteration aims and end date. -- Review the roadmap +- Review the longer-term roadmap - Review the list of tasks already listed. - Brainstorm and add any other issues as needed. ::: From 497333959a2ede63424f60c93868b5a414d1df81 Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Tue, 1 Jul 2025 08:37:28 -0400 Subject: [PATCH 5/8] fix: :pencil2: suggestions from review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Signe Kirk Brødbæk <40836345+signekb@users.noreply.github.com> --- iterations/start.qmd | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/iterations/start.qmd b/iterations/start.qmd index 17aea6f..c352e5c 100644 --- a/iterations/start.qmd +++ b/iterations/start.qmd @@ -15,11 +15,11 @@ row tend to tire most humans out, and being tired is counterproductive for an effective meeting. ::: callout-note -A basic agenda for the meeting might be: +A basic agenda could be: - Review and agree on the iteration aims and end date. - Review the longer-term roadmap -- Review the list of tasks already listed. +- Review the list of tasks on the project board for this iteration. - Brainstorm and add any other issues as needed. ::: @@ -30,7 +30,7 @@ planning meeting. Before the planning meeting, you need to refine (or create) the iteration aim and move any existing tasks (GitHub Issues) into the iteration that are relevant to the aim of the iteration. An iteration aim should be something that is achievable within the -iteration timeframe. +iteration timeframe. The aim can also include several smaller aims. You will also create any issues that are missing from the current list of issues. While making issues, keep them as small as is reasonable and @@ -44,7 +44,7 @@ any potential issues as needed to complete the iteration aim. During the meeting, someone will share their screen (if virtual) and the team will go through the tasks on the board together. Everyone will -discuss and decide or agree on the iteration goal (the "increment" or +discuss and decide or agree on the iteration aim(s) (the "increment" or "milestone"). Then, everyone will briefly review the current list of tasks on the From 4d5b523122460a5520c6d8179c0531f86981659d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 1 Jul 2025 12:37:34 +0000 Subject: [PATCH 6/8] chore(pre-commit): :pencil2: automatic fixes --- iterations/start.qmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/iterations/start.qmd b/iterations/start.qmd index c352e5c..42e5e08 100644 --- a/iterations/start.qmd +++ b/iterations/start.qmd @@ -30,7 +30,7 @@ planning meeting. Before the planning meeting, you need to refine (or create) the iteration aim and move any existing tasks (GitHub Issues) into the iteration that are relevant to the aim of the iteration. An iteration aim should be something that is achievable within the -iteration timeframe. The aim can also include several smaller aims. +iteration timeframe. The aim can also include several smaller aims. You will also create any issues that are missing from the current list of issues. While making issues, keep them as small as is reasonable and From a864af9e73569543a4c9fd1b9cdb5aa0b9f90e5f Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Tue, 1 Jul 2025 08:59:14 -0400 Subject: [PATCH 7/8] fix: :pencil2: clarify that the sections are mainly for the team lead --- iterations/_preamble.qmd | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/iterations/_preamble.qmd b/iterations/_preamble.qmd index 3e04b00..8612925 100644 --- a/iterations/_preamble.qmd +++ b/iterations/_preamble.qmd @@ -4,6 +4,9 @@ board](https://github.com/orgs/seedcase-project/projects/18/). ::: ::: callout-tip -It's good practice to assign a timekeeper to keep us on track and so we -avoid spending too long on any one topic. +- It's good practice to assign a timekeeper to keep us on track and so + we avoid spending too long on any one topic. +- While this guide can apply to all members of the team, several parts + of it are specific to the team lead. Those parts will be explicitly + marked to indicate that they are only for the team lead. ::: From 188b6e47f0f92db289cabe3c56dfe2b0c8de3756 Mon Sep 17 00:00:00 2001 From: "Luke W. Johnston" Date: Tue, 1 Jul 2025 08:59:31 -0400 Subject: [PATCH 8/8] refactor: :recycle: revise based on comments from review --- iterations/start.qmd | 62 ++++++++++++++++++++++++++------------------ 1 file changed, 37 insertions(+), 25 deletions(-) diff --git a/iterations/start.qmd b/iterations/start.qmd index 42e5e08..d7fb960 100644 --- a/iterations/start.qmd +++ b/iterations/start.qmd @@ -3,11 +3,11 @@ {{< include _preamble.qmd >}} An iteration starts with a planning meeting at the start of each month. -It should ideally be between 30-45 minutes. You as the team lead should -already have prepared for and made a general plan for the iteration, so -this meeting should not be used as a way for everyone to write out and -list all the tasks needed. Rather, the main purpose of this meeting is -to get everyone aligned on the aim and overall plan. +It should ideally be between 30-45 minutes. If you are the team lead, +you should already have prepared for and made a general plan for the +iteration, so this meeting should not be used as a way for everyone to +write out and list all the tasks needed. Rather, the main purpose of +this meeting is to get everyone aligned on the aim(s) and overall plan. This meeting should ideally *not* be held the same day as the previous iteration's debrief and retrospective meeting. Two intense meetings in a @@ -25,29 +25,41 @@ A basic agenda could be: ### Before meeting -In general, only you as the team lead are required to prepare for the -planning meeting. Before the planning meeting, you need to refine (or -create) the iteration aim and move any existing tasks (GitHub Issues) -into the iteration that are relevant to the aim of the iteration. An -iteration aim should be something that is achievable within the -iteration timeframe. The aim can also include several smaller aims. +In general, if you are not the team lead, you don't really need to +prepare for this meeting. If you are the team lead though, you do need +to prepare. So if you are the team lead: -You will also create any issues that are missing from the current list -of issues. While making issues, keep them as small as is reasonable and -as descriptive and targeted as possible. +- Before the planning meeting you need to refine (or create) the + iteration aim(s) and move any existing tasks (GitHub Issues) into + the iteration that are relevant to the aim(s) of the iteration. An + iteration aim (or aims) should be something that is achievable + within the iteration timeframe. The iteration should ideally have + only a few main, larger aims, but can include a few more smaller + aims. -Other team members can optionally review the aim and output of the -iteration board, review the list of issues already listed, and write out -any potential issues as needed to complete the iteration aim. +- create any issues that are missing from the current list of issues. + While making issues, keep them as small as is reasonable and as + descriptive and targeted as possible. + +If you are not the team lead, you can optionally review the aim(s) and +output of the iteration board, review the list of issues already listed, +and write out any potential issues as needed to complete the iteration +aim. ### During meeting During the meeting, someone will share their screen (if virtual) and the -team will go through the tasks on the board together. Everyone will -discuss and decide or agree on the iteration aim(s) (the "increment" or -"milestone"). - -Then, everyone will briefly review the current list of tasks on the -board and brainstorm any other tasks that are needed. You'll all then -agree on the number of tasks in the iteration as well as the -distribution of priority labels of the tasks. +team will go through the tasks on the board together. Ideally, the team +lead would be the one faciliatating the meeting, but it can be anyone. + +You all will go over the roadmap or the longer term plan, to keep +everyone aligned and updated. Then, you all will discuss and decide or +agree on the iteration aim(s) (the "increment" or "milestone"). + +Finally, everyone will briefly review the current list of tasks on the +board and brainstorm any other tasks that are needed. You'll agree on +the number of tasks in the iteration as well as the distribution of +priority labels of the tasks. + +After that, you're done! Remember, this meeting is not meant to take up +too much time.