“Renga”

Collective poetry with Git/Github, at intermediate level.

1 hour,
asynchronous

Group or individuals

Online

Intermediate

Git and Github are tools used to support collaborative development of code. These tools are typically quite hard to get into for beginners. This exercise is thus a low-stake example of a collaborative task using these tools.

Renga is a very old genre of Japanese collaborative poetry, in which alternative sound units are linked in succession by multiple poets. The Renga exercise is an implementation of this process through Git and Github: students interact with each other through a shared repository, and contribute to edits on a single text file.

Preparation

  1. Students must have Git installed, and have been shown the basic commands, including “git add”, “git commit”, “git status”, “git log” and possibly “git diff”. Therefore, Renga is a good exercise for a second session that follows an introduction to Git. The students do not need to be fully proficient with the commands, but they should roughly understand what they do.
  2. You can have the students create a Github account on the day, but it may save time to have them do it before the session.
  3. Prepare an empty repository on Github that contains an empty text file; including making sure that students will have edit permissions.

On the day

  1. Review the basic Git commands and answer pending questions.
  2. Explain the relationship between Git and Github, and demonstrate examples of shared repositories, like https://github.com/torvalds/linux or https://github.com/numpy/numpy.
  3. Introduce the repository you have created and make sure everyone has access to Github, and edit permissions.
  4. Explain the purpose and aims of the exercise.
  5. Demonstrate a first edit to the text file.
  6. Let the students add to the text file.

Variations

  1. Introduce moderated pull requests and code review.
  2. Introduce Github workflow and branching.

Leave a comment