Metacognition in software training

This exercise is a part of a Train-the-Trainer session for graduate teaching assistants. This first-hand experience enables future trainers to see the outcomes of learning new technology with procedural training versus a systems-based training. By promoting systems-thinking in instruction, learners retain more of what they learned and use critical thinking to find creative solutions to new problems.

Learning objective: Justify the instructional design strategy of the Python Readiness learning series.

  • Define learning objectives

    Develop Instructor-Led Training

    Develop Control Panel Simulator

    Facilitate instructor-led session

  • Articulate Storyline

    MS Powerpoint

    Notion

Excerpt from Instructor Gude

Reflection activity:

Recall your own experience of learning programming skills.

Debrief and contextual transition:

For many programmers just starting out, they memorize lines of code, copy/paste steps, and make brute-force guesses until they get an answer. This trial-and-error process comes naturally for some, but is frustrating and demotivating for others.

We can help our learners make strategic choices and get into the practice of imagining the system they are working within by building up their mental models rather then emphasizing memorization.

Control panel activity:

You will all learn a new skill today: operating a special control panel. However, you will learn how to operate this control panel in different ways.

Provide half the class with the Group A Instructions document and the other half with the Group B Instructions document. The whole class gets 2 minutes to study their instruction documents, then they are asked to test their knowledge in the Control Panel Simulator.

Debrief:

Did you succeed in all three simulations? How did you arrive at your success? Did you guess a few times until something worked? Or did you know what to do given your understanding of the underlying system?

Reflection activity:

This learning series was born out of a need to get incoming graduate students ramped-up on Python to prepare for their graduate coursework. The series includes:

  1. Self-assessment and self-paced practice lessons

  2. Knowledge check sessions (Python syntax, Jupyter, environments)

  3. Instructor-led training (Exploratory Data Analysis, troubleshooting)

  4. Train-the-Trainer

Why do you think the series was created this way? Why emphasize exploratory data analysis and troubleshooting for this audience?