Skip to content

Commit a0cb16a

Browse files
committed
clarify the collaborative exercise setup for stream; closes #320
1 parent 5514edb commit a0cb16a

1 file changed

Lines changed: 63 additions & 36 deletions

File tree

content/guide.md

Lines changed: 63 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,16 @@ exercise repository.
4545

4646
## Preparing exercises for the live stream
4747

48+
49+
### What instructors need to do at least 1 day before the workshop
50+
4851
- This **takes 30-60 minutes** to set up. Allocate the time for this before the workshop.
4952
- Make sure to remove all participants from a previous workshop from these two places:
5053
- <https://github.com/orgs/cr-workshop-exercises/teams/stream-exercise-participants>
5154
- <https://github.com/orgs/cr-workshop-exercises/people>
52-
- It requires coordinating with co-instructors and **communication with learners on days 1 and 2**.
53-
- Create the centralized exercises **in an organization** (not under your username) so
54-
that you can give others admin access to add collaborators. Also this way you
55-
can then fork yourself if needed.
56-
- For CR workshops, the exercises were placed under
57-
<https://github.com/cr-workshop-exercises>. The instructors or team leads need to have owner status in the organization in order to invite people.
55+
- We create the exercises **in an organization** (not under your username) so
56+
that you can give others admin access to add collaborators. Also this way
57+
you can then fork yourself if needed.
5858
- All exercise repositories can be created from
5959
<https://github.com/coderefinery/recipe-book-template> by `git clone
6060
--mirror` from the template followed by `git push --mirror` towards the exercise repository.
@@ -64,36 +64,63 @@ exercise repository.
6464
- `centralized-workflow-exercise`
6565
- `forking-workflow-exercise-recorded`
6666
- `forking-workflow-exercise`
67-
- Protect the default branch of the two `centralized-*` repositories.
68-
69-
How to give access to `centralized-workflow-exercise` and `centralized-workflow-exercise-recorded` repositories:
70-
- We created an organization team, `stream-exercise-participants`. The
71-
*centralized* workflow exercise repos have this team added as a
72-
collaborator (*not* the forking - they fork so they don't need write
73-
access there).
74-
- We created a fifth repository, [access-requests](https://github.com/cr-workshop-exercises/access-requests) with an issue template.
75-
- Learners who are not part of an exercise group and want to participate in this exercise will open an issue in the `access-requests` repository.
76-
We use the `access-requests` repository so that learners don't get emails from all
77-
other access requests once they get added to the team.
78-
- Make sure you have 2 other people who have admin access and can help you adding learners who request access 5 minutes after the exercise starts.
79-
- The day/morning before the day of the lesson the instructor or team leader now has to invite the learners **to the team** (not to specific repositories):
80-
1. Copy the learners GitHub username from the issue.
81-
1. Go to [team member page, example linked
82-
here](https://github.com/orgs/cr-workshop-exercises/teams/stream-exercise-participants/members)
83-
and invite that username to the team (this means first clicking invite and
84-
then scrolling down to click the "add username to ..." button. This sends
85-
an email to that users email that is connected to their GitHub account.
86-
1. In the issue, copy following text (or similar) to the issue and "close with comment":
87-
```text
88-
We have added you to the CodeRefinery exercise repository.
89-
90-
What you should do before the exercise starts:
91-
92-
You will get an invitation from GitHub to your email address (that GitHub knows about). Please accept that invitation so that you can participate in the collaborative exercise.
93-
To make sure you don't get too many emails during the exercise, don't forget to "unwatch" both https://github.com/cr-workshop-exercises/centralized-workflow-exercise and https://github.com/cr-workshop-exercises/centralized-workflow-exercise-recorded.
94-
To "unwatch", go to the repository and click the "Unwatch" button (top middle of the screen) and then select "Participating and @mentions".
95-
```
96-
- [Example email requesting learners to join](https://coderefinery.github.io/2024-03-12-workshop/communication/#2024-03-12-exercise-preparation-for-learners-without-own-group)
67+
- Protect the default branch of the two `centralized-*` repositories (but this
68+
can also be done on stream as the very first step if you are sure you will remember as instructor).
69+
70+
71+
### What to communicate to learners at least 1 day before the workshop
72+
73+
- [Example email from a previous workshop](https://coderefinery.github.io/2025-03-25-workshop/communication/#getting-ready-for-day-2-and-3-of-coderefinery-workshop)
74+
75+
76+
### How should learners request access
77+
78+
This is also in the email template above but they need to:
79+
- Open an issue at https://github.com/cr-workshop-exercises/access-requests/issues/new?template=access-request.md
80+
81+
- Accept invitation from GitHub sent to their email address (that GitHub
82+
knows about).
83+
84+
- "Unwatch" both these repositories by clicking the "Unwatch" button (top
85+
middle of the screen) and then select "Participating and mentions":
86+
- <https://github.com/cr-workshop-exercises/centralized-workflow-exercise>
87+
- <https://github.com/cr-workshop-exercises/centralized-workflow-exercise-recorded>
88+
89+
90+
### How to add learners to the team stream-exercise-participants
91+
92+
You need to be "owner" of
93+
<https://github.com/orgs/cr-workshop-exercises/teams/stream-exercise-participants>
94+
to be able to add people to the team.
95+
96+
97+
1) Check <https://github.com/cr-workshop-exercises/access-requests/issues>.
98+
Any open issue means the person hasn't been added yet.
99+
100+
2) Add person to <https://github.com/orgs/cr-workshop-exercises/teams/stream-exercise-participants>
101+
- Click on "Add member" -> "Invite" -> "Add member to stream-exercise-participants"
102+
- **Do not add/invite the person anywhere else**, not as collaborator to any
103+
exercise repo directly. Only add invite them into the team
104+
"stream-exercise-participants". Motivation: This way we give instructors the control over when the exercise can start. Otherwise
105+
learners might merge changes before the lesson and thus change the example and confuse instructors and learners.
106+
107+
3) Close the issue on <https://github.com/cr-workshop-exercises/access-requests/issues> with the following comment (feel free to adapt it):
108+
```
109+
Thanks! I have added you to the collaborative exercise team.
110+
111+
What you should do before the exercise starts:
112+
113+
1) You will get an invitation from GitHub to your email address (that GitHub
114+
knows about). Please accept that invitation so that you can participate in
115+
the collaborative exercise.
116+
117+
2) To make sure you don't get too many emails during the exercise, don't forget
118+
to "unwatch" both
119+
https://github.com/cr-workshop-exercises/centralized-workflow-exercise and
120+
https://github.com/cr-workshop-exercises/centralized-workflow-exercise-recorded.
121+
To "unwatch", go to the repository and click the "Unwatch" button (top
122+
middle of the screen) and then select "Participating and mentions".
123+
```
97124

98125

99126
## Why we teach this lesson

0 commit comments

Comments
 (0)