Skip to content

Student Workbooks

When I teach a programming course, I always set them up with a student workbook where they can enter in all the demos and practice assignments I have them do in class. You can see a couple of samples here, here and here.

It’s easy to set up and, once it’s in place, you can re-use it each term. Just follow these steps.

  1. Create a new repository on your computer with the files/demos you want the students to start with.

  2. Push it to whatever GitHub account/organization you want. I put all my workbooks as public repositories under the GitHub account I use for my work (see the samples linked above).

  3. Go under the “Settings” for your repository and turn on the “Template Repository” checkbox.

    Template Repository Setting

Voilà! You now have a workbook to distribute whatever way works best for you (I use GitHub Classroom).

Here are some common things you should have in your student workbook template.

  1. Aways add a ReadMe.md file. This is your chance to introduce the workbook to your students.

  2. Be sure it has a .gitignore file to filter out whatever files/folders you don’t want to track in the repo. For example, if I was teaching Python, I would copy this content from gitignore.io and paste it into my .gitigore.

  3. I also add a .gitattributes with at least the following.

    * text=auto

    I typically put a lot more in mine, using the sample from David Laing’s article Customize Your gitattributes to be come a git ninja.

Beyond that, it’s a matter of taste as to what other content you want to add to the repo. I typically include a src folder as a “parent” to other starter kits I want students to use. When all is said and done, I would have something like the following.

  • Directorysrc
    • Directory-start-here- A simple intro demo they can run
      • ReadMe.md
      • sample.py
    • Directory001/ The first hands-on demo in class
  • .gitattributes
  • .gitignore
  • ReadMe.md