Contributors
[Names]
We are actively seeking contributors to help with design of exercises, feeback on lessons, proofreading etc. Please submit a pull request to make your contribution.
Process
We are loosely following the reverse instructional design process described in the software carpentry lesson template here: [reverse design] (http://carpentries.github.io/lesson-example/01-design/index.html)
Assumptions
Audience: Number of students: 12 Number of educators: 2 + 1 helper Contact time: Practical time: Skill level: Beginner through to lower intermediate. Background: CSIRO employees, including research scientists, technicians, and support staff. Prior learning:
- Basic familiarity with the Linux/bash command line.
- Executing Python from command line.
- Working with files.
- Ability to use a text editor.
- Spyder IDE
1. Final task (Practical exercise)
Task
Task:
- Write a commmand-line Python program that:
- Accepts two commmand-line arguments:
- The first specifies an input file
- The second specifies an output file name
- Accepts two commmand-line arguments:
- Read the first file line by line
- For each line, perform text processing (to be determined)
- Writes out results to the file name specified as second argument
- Verify the results.
- FIXME: is verification done by the Python code, or externally?
FIXME: Is this the final task (after 5 days), or a mid-week task?
Task:
Data
All data will be supplied.
2. Concept map
What are all the ideas, connections, and assumptions a learner must master to achieve the task(s) described above? Please take photos of your concept maps and upload to the figures directory, with a link below.
FIXME: add links to concept map images.
3. Episodes
Break your concept map up into smaller ‘chunks’. Each new map should only contain 5-6 ideas. These form the individual teaching ‘episodes’ from which our larger topic unit is composed.
Give each ‘chunk’ a title and link to the smaller concept map figure below. Estimate the teaching time.
FIXME: add list of episodes
4. Ordering
We all know how interconnected every concept is, however teaching happens in linear time (let’s debate this over dinner!). So, we now need to turn our concept networks into ordered lists.
Start by ordering your ‘chunks’ or episodes. Then write each idea or concept within a chunk onto a sticky note, and order the sticky notes. Make a poster of your stick note episodes! Do you episodes fit into your teaching time? Bring it to lunch for feedback.
Once you are happy with your design, please transcribe it below.
5. Exercises (formative assessments)
Each sticky note needs an exercise! Start putting your episodes into GitHub, and formulating an exercise to test / teach each concept. Keep in mind the ‘data’ you described back in step one. Try and keep the exercises relevant and engaging.
Keep a note of exercises / tasks that still need work here. Raise them as git issues for completion post workshop.