Want to help out or contribute?

If you find any typos, errors, or places where the text may be improved, please let us know by providing feedback either in the feedback survey (given during class) or by using GitLab.

On GitLab open an issue or submit a merge request by clicking the "Edit this page " button on the side of this page.

E For Instructors

More guidance for instructors is also found in the introduction R course.

E.1 Timings for specific sessions

E.1.1 Slides: Time ~50 min

  • First presentation: ~20 min
  • Second presentation: ~30 min

E.1.2 Introduction section: Time ~55 min

  • Section 5.2: ~15 min
  • Exercise 5.3: 15 min
  • Section 5.4: ~5 min

E.1.3 Importing session: Time ~2 hrs

  • Briefly go over overview and objectives, ~5 min
  • Section 6.2: ~45 min
  • Exercise 6.3: 15 min
  • Section 6.4: ~25 min
  • Exercise 6.5: 15 min

E.1.4 Functions session: Time ~3 hrs

  • Briefly go over overview and objectives, ~5 min
  • Section 7.2: ~35 min
  • Exercise 7.3: 15 min
  • Section 7.4: ~40 min
  • Exercise 7.5: 15 min
  • Section 7.6: ~30 min
  • Exercise 7.7: 5 min
  • Exercise 7.8: 20 min

E.1.5 Functionals session: Time ~3.25 hrs

  • Briefly go over overview and objectives, ~5 min
  • Section 8.2: ~45 min
  • Exercise 8.3: 10 min
  • Exercise 8.4: 25 min
  • Exercise 8.5: 5 min
  • Section 8.6: ~10 min
  • Section 8.7: ~5 min
  • Section 8.8: ~30 min
  • Section 8.9: ~20 min
  • Exercise 8.10: 10 min
  • Section 8.11: ~10 min

E.1.6 Joining data session: Time ~2.25 hrs

  • Briefly go over overview and objectives, ~5 min
  • Section 9.2: ~10 min
  • Exercise 9.3: 10 min
  • Section 9.4: ~10 min
  • Exercise 9.5: 15 min
  • Section 9.6: ~15 min
  • Section 9.7: ~25 min
  • Section 9.8: ~15 min
  • Section 9.9: ~15 min

E.1.7 Pivoting session: Time ~2.25 hrs

  • Briefly go over overview and objectives, ~5 min
  • Section 10.2: ~5 min
  • Section 10.3: ~15 min
  • Exercise 10.4: 10 min
  • Exercise 10.5: 15 min
  • Section 10.6: ~20 min
  • Exercise 10.7: 15 min
  • Section 10.8: ~15 min
  • Section 10.9: ~5 min
  • Section 10.10: ~5 min
  • Exercise 10.11: 15 min

E.2 Course details

  • Instructor and helper number: The recommended number of instructors would be about ~1 instructors for every 1-2 sessions, with a ratio of 1 helper (including instructor) for every 4-6 participants.

  • Group work (optional):

    • Have 4 learners per group, not more.
  • Before first day:

    • Setup the course R Project beforehand so that the instructors can use it. Create as a Git repo and push up to GitHub, so instructors can clone the project before their session.
  • First day:

    • During the introduction, don’t forget to introduce all the instructors and helpers.
    • Set up tables so that all learners can directly face the projector (and not have to twist their neck).
  • End of course: Ask if any participant would like to be involved in next year’s teaching, or in making the material, or in being a helper.

E.3 Instructor tips

E.3.1 Before your session

  • Have an RStudio theme that uses a white background with black text. This setting is easier to read on projectors.
  • In “Global Options -> Appearance”, put a higher Zoom value and increase the font size (maybe around 14). Exact zoom and font size depends on the projector.
  • Put the Console and Script panes side by side rather than stacked. This can be changed in the “Global Options -> Pane Layout”
  • If the instructor team is sharing a code-along repository (e.g. so there is continuity between session), make sure to pull the latest changes from the previous session.

E.3.2 Throughout the sessions

  • At the start of the session, except for the first one, quickly review what was covered in the previous sessions. Doing this can help remind the learners where they are at in the course and to reinforce what they learned previously.

  • At the beginning of the morning sessions and occasionally throughout the session, refer back to the big picture of why we are doing what we are doing

  • After reading exercises/activities, briefly go over the content again and, where relevant, emphasize the why of it.

  • For most of the sessions, there are sections that tell the participants to read on their own. Know beforehand where these sections are and get them to read over the section. Ask for any questions about what they read, and if you want to elaborate you can, but it’s not necessary given they just read it.

  • There are also areas called “Details for instructors” that has notes or comments about something to focus on or reinforce for a concept. Make sure to know where these are and to use them to help you as you go through the material.

  • For the exercises, make sure to get the learners helping each other out in their pairs.

  • Try not to go over the time given for the exercises. If many learners are struggling to finish on time, make a note of it to fix or revise later and then go over it with everyone.

  • Exercise solutions do not need to be covered in too much detail by the instructor, given the solution is provided already.

    • During the exercise, copy and paste the solutions from the site into your code-along R Project, so you can move to the next section quickly.
  • Try to keep the screen on your RStudio as much as possible and don’t switch applications often, only when you need to go to the course material or to show an exercise.

  • Be aware of how much space you have on the projector screen and don’t let R code go too long. You have two options to take so that all code stays on the screen (use which ever you find most visually appealing):

    1. Use soft-wrapping of R code. You can set this in RStudio by going to “Tools -> Global Options -> Code -> Editing tab” and then tick the “Soft-wrap R source files” option.

    2. Or, adding more lines to the code then you normally would use. For instance, instead of:

      ggplot(NHANES, aes(x = BMI, y = Age, colour = Diabetes)) +
          geom_point()

      You could add new lines like:

      ggplot(NHANES, 
             aes(x = BMI, 
                 y = Age, 
                 colour = Diabetes)) +
          geom_point()
  • If a section doesn’t mention for the student to read it, that means the instructor should mention and talk about it. But don’t read it word for word, instead talk about it while doing the code along. It’s strongly suggested that you try to use your own words rather than exactly what was written. This makes it easier for you and makes it more engaging for the learners.

  • While doing the code-along, describe and explain what you are typing. Typing alone doesn’t help explain the why, and learners need to understand the why to help them reinforce the concepts and code. (It’s also something we often get feedback on.)

  • Something that takes some practice as a teacher is getting used to being in an instructor role and essentially being in a position of “power” over the learners. People come to the course consenting and expecting to being in this instructor-learner hierarchy, trusting (or hoping) that the instructor helps guide them into learning something new and/or useful. They are willing giving their time to sit in front of you and listen after all! This hierarchy comes with a lot of responsibility and “duties”, several of which relate to making sure the learners know you are present. Taking up space in a non-aggressive and friendly way, moving around, looking out in the audience and making eye contact (lots of eye contact), are all key aspects to showing you are there for them and present.

  • For those learners with more complex and persistent technical/computer issues, move them over to an area off to the side (e.g. at the instructor table) to work on fixing the problem so as not to disrupt the session for everyone else.

E.3.3 Making use of the stickies

  • Check in with the learners to see where they are at by asking something like: “Do you see the same thing as is on the screen?” If yes, put the ‘all good’ sticky on your laptop. If no, use the ‘need help’ sticky.”
  • For the reading activities, before starting, say: “Please read this section as instructed. When you are done, put the ‘all good’ sticky up.”
  • For exercises, before starting, say: “Please complete the exercise. When you are done, please put the ‘all good’ sticky up. If you need help, put the ‘need help’ sticky up.”

E.4 Lesson material details

E.4.1 About the slides

The slides are generated from the xaringan R package, which uses remark.js. In the slides, there are notes that you can read either by going to the source .Rmd file or by opening the slides and hitting the p key. To use the slides more efficiently, check out the remark.js keyword shortcuts.

Slides are generated by sourcing the R/build-slides.R script, rather than the typical “Knit” approach. That’s because of the way RStudio runs knit while in a “Website” formatted setup like when creating bookdown websites. To bypass this behaviour, you need to run the R/build-slides.R script.