|
| 1 | +# Technical Facilitator Playbook |
| 2 | + |
| 3 | +## How do you interact with the repo? |
| 4 | +The Technical Facilitator will teach using the content provided in the `/01-slides` directory. You are allowed to live code with them during your lecture. Just make sure you upload the live-coding files to a new directory called `/live-coding` under `/01-slides` to this repository using a new branch and open up a pull request for it to be merge. |
| 5 | + |
| 6 | +## How does the module flow? |
| 7 | +The module is organized into 4 main directories: |
| 8 | +1. Slides |
| 9 | +2. Assignments |
| 10 | +3. Homework |
| 11 | + |
| 12 | +The `/01-slides` directory would be the first directory anyone would see, and contains the lecture slides, learning outcomes, and anything related to the learning outcomes such as live-coding files. |
| 13 | + |
| 14 | +The `/02-assignments` directory is the second directory containing the assignments that would be marked as a `pass` or `fail`. Compared to `/04-homework`, the assignments are slightly more difficult, and helps encapsulates the learnings for the week. All assignments are mandatory to complete and deliver. |
| 15 | + |
| 16 | +The `/04-homework` directory contains all the homework, a learner can do to demonstrate mastery of the learning contents. Unlike the `/02-assignments` directory, all homework is optional, but is highly encouraged to attempt. |
| 17 | + |
| 18 | +### Week 1 |
| 19 | + |
| 20 | +| Lesson | Topic | Resources | |
| 21 | +|--------|-------------------------------------------------------------|------------| |
| 22 | +| 1 | Motivation and Big-O Notation | [Slides](https://github.com/UofT-DSI/algorithms_and_data_structures/blob/main/lessons/1_motivation-big-o.pdf) | |
| 23 | +| 2 | Data Structures, Sorting, and Searching | [Slides](https://github.com/UofT-DSI/algorithms_and_data_structures/blob/main/lessons/2_ds-search-sort.pdf) | |
| 24 | +| 3 | Recursion | [Slides](https://github.com/UofT-DSI/algorithms_and_data_structures/blob/main/lessons/3_recursion.pdf) | |
| 25 | + |
| 26 | +### Week 2 |
| 27 | + |
| 28 | +| Lesson | Topic | Resources | |
| 29 | +|--------|-------------------------------------------------------------|------------| |
| 30 | +| 4 | Recursion | [Slides](https://github.com/UofT-DSI/algorithms_and_data_structures/blob/main/lessons/3_recursion.pdf) | |
| 31 | +| 5 | Recursive Data Structures | [Slides](https://github.com/UofT-DSI/algorithms_and_data_structures/blob/main/lessons/4_recursive-ds.pdf) | |
| 32 | + |
| 33 | +## How do you assign assignments? |
| 34 | +Assignments are given and assigned at the start of each week at the end of the first lecture. The Technical Facilitator will announce to the learners what the assignment is about, and how everything they will learn within the week will equip them to work on the assignment. |
| 35 | + |
| 36 | +## How an assignment is expected to be completed and delivered? |
| 37 | +Learners are expected to complete the assignment before the first lecture of the following week. They will deliver the assignment by opening up a pull request on their copied repo. The learner will also add a TA as a reviewer indicating they delivered a completed assignment, and it is ready to be graded as a `pass` or `fail`. |
| 38 | + |
| 39 | +## What is the criteria for `pass` or `fail`? |
| 40 | +The criteria for a `pass` or `fail` is if all parts of the program are working, and nothing in the code is broken. For some assignments, a rubric will be given outlining the criteria needed to pass. |
| 41 | + |
| 42 | +## How to mark? |
| 43 | +If the learner's solution works, then they `pass`! You or the TA would only need to focus on providing them constructive feedback on how they can improve their code. If the solution does not work, then they `fail`, and you would provide any constructive feedback on their existing code, and encourage them to get their solution working. |
| 44 | + |
| 45 | +## How will feedback be given? |
| 46 | +Feedback will be given through the pull request a learner had made, and allowing them to make revisions if needed. In order to maximize learning, feedback must be constructive, and specific. |
| 47 | + |
| 48 | +<hr> |
| 49 | + |
| 50 | +## Definitions |
| 51 | +**Lecture**: A Lecture is a synchronous period of time, lasting up to 3 hours, where the Technical Facilitator will facilitate and deliver the contents and learning outcomes online through Zoom. Learners are encouraged to participate and ask questions as they learn. Breaks are given if lecture goes pass an hour, with a 10 minutes break given for every hour still in a lecture. |
| 52 | + |
| 53 | +**Work Period**: A Work Period is an asynchronous period of time, lasting up to 3 hours. The learners will work on their assignments and/or homework during this block of time. A TA will be present online through Zoom to assist the learners and answer any questions they may have. As work periods are asynchronous and flexible, learners can choose to work on their own time. However, it is encouraged to work during the block of time when a TA is present. |
| 54 | + |
| 55 | +**Assignments**: An Assignment is work assigned as part of the program. They are slightly more difficult, providing an opportunity for learners to integrate and synthesize what they have learned throughout the week to meet the set learning outcomes. |
0 commit comments