
Teaching 700 Researchers Across 57 Countries: How CodeRefinery Does It Online
Last week I co-instructed the first week of the CodeRefinery workshop, teaching Git version control to researchers across the Nordic region. Well, more like across the globe – about 700 participants from 57 countries. The largest CodeRefinery workshop ever!!
CodeRefinery has deliberately designed a collaborative teaching ecosystem that actually works at scale.
The Teaching Stack
Twitch livestream – Everyone watches together in real-time. But it’s not a webinar that disappears. It’s archived forever on YouTube. Missed the live session? Watch it later. Confused about something? Rewatch that 10-minute segment. The livestream is the centerpiece, but not the whole story.
Co-teaching – The livestream is led by two instructors who interact with each other. Instead of one person lecturing, two people teach together, asking each other questions. It feels intimate yet is broadcast to hundreds. The dynamic between the two instructors shapes the whole experience – it’s conversational, not frontal.
Public notes document – Every Q&A happens in a shared live document, visible to everyone, archived forever. Someone asked a question about merge conflicts? The answer stays there forever, searchable, not lost in chat history. Questions become shared knowledge. Every question someone else was too shy to ask gets answered anyway, visible to all. It’s hundreds of people online, but it feels deeply interactive.
Zoom help room – When someone gets stuck on an exercise or needs clarification, they jump into a Zoom room. An expert helper unblocks them in 5 minutes, without disrupting the main stream. It’s like having a tutor just off to the side, available when needed but not intrusive.
Online materials and exercises – All lesson materials and exercises are available online. During the workshop, participants work through exercises live, guided by instructors and helpers. It’s real-time and participatory – people are actively coding and learning together as it happens.
Team leaders and local support – Groups gather locally (or virtually) with team leaders – experienced people who aren’t necessarily experts but know the material well enough to unblock their peers. At KTH, UiO, Aalto, Tartu, Reykjavik, and elsewhere, these local teams watch together, exercise together, support each other. A distributed network of tutors.
It’s a Collaborative Effort
CodeRefinery doesn’t frame teaching as something an instructor does to people. It frames it as something a whole network does together.
Instructors. Co-instructors. Helpers. Team leaders. Broadcasters. Notes managers. Educators at home institutions bringing their groups. Participants who got unstuck and now answer questions for others. Everyone plays a role. And this distributed network creates something essential: constant interaction.
No black screens on Zoom. No passive watching. People are there, together, even though they’re not in the same room. That’s the paradox CodeRefinery solves: teaching at scale without losing the human element.
And here’s my lesson plan for the Git. And some testimonials in English and Polish :)