Office Hour Logistics
Read Getting Oriented if you haven't already.
Starting OH
To host a session of office hours, you should arrive at \((CS)^2\) at least five minutes before your office hours begin.
- When you arrive, prop the door open and take a seat at either Drove or Exaltation (the tables to the right of the door). Politely ask students to leave these tables if they are currently working at either.
- Make any preparations you need to host office hours (open up the project guide, any resources provided by course staff, etc.).
- Pull up the office hours queue form, located at
https://grinch.caltech.edu/cs-squared/ta?course=x, where x should be replaced with the course code of the class you're TAing (for example, cs1-25fa). If this link doesn't work, then the professor(s) have yet to add you as an administrator. - Use the wall phone (between Drove and Exaltation) to start your relevant office hours section (see Room Controls). Do this at most one minute before your office hours begin, since it will allow students to begin enqueuing, and we don't want students to need to show up to office hours early to queue up. If some screens around the room don't update after you start your relevant office hours section, you should reboot those screens by holding down the button under the screen until the screen shows the "Insignia" logo.
After you start your relevant office hours section, please let the students know that the queue has opened! Students can now queue up by following the instructions at the check-in ipad (between the door and the snacks). If this ipad isn't working, see Troubleshooting. For 2-3 minutes, anybody who queues up will be randomized into the queue (to ensure students don't race to be the first in line).
Closing the Queue Early
We don't want students to be enqueued for help if there will not be time to help them. You should close the queue if you anticipate that you cannot help all the students in time.
The monitors will display the number of students \(n\) that are left in the queue. As described below in Start Helping a Student, you should help each student for a maximum of 8 minutes.
So, if there are \(t\) minutes remaining in an OH with \(T\) TAs, if \(\frac{8 n}{T} \geq t\), you should pause the queue with the phone. This will not remove students in the queue.
You can reopen the queue if you run out of students to help early.
Start Helping a Student
You can now begin helping students.
- Look at the next student in the queue by viewing the Add record menu in the "Is there someone you want to dequeue for help next?" question.
- Tell that student to come to your table. You should not go to students to help them; stay at Drove or Exaltation.
- If that student is still in \((CS)^2\), add them to the "Is there someone you want to dequeue for help next?" question.
- If they are not, add them to the "Do you want to remove anybody from the queue without helping them?" question, and return to step 1.
- Mark which table you are helping the student at. After you fill this out once, it should autofill.
- Once a student has come to your desk and sat down, submit your responses. You should dequeue one student at at time; do not begin a 'mini-session' without explicit permission from Professor Blank.
A message will pop up saying which student you are helping, and for how long. At certain timestamps, the screen will tell you if half the student's time has elapsed (yellow), or if their time has expired and you need to move on the next student (flashing red). If the message begins flashing red, say that you are not allowed to help the student for longer, and that you must move on. Use Adam as an excuse if you need to.
We don't want you to submit the question until the student is at your desk because dequeuing a student will begin a stopwatch recording how long you have helped the student for. It is crucial that this timing information is accurate to how long the student is helped for, since it affects their prioritization in the queue.
Usually, a student's allotted time for a debugging session is eight minutes. Eight minutes is not a long time. We know that. When you are new to TAing, you might find yourself going over. Learning the timing is difficult, but you should at least be mindful of the time you are taking. If you are consistently going over, you can ask for guidance from experienced TAs or Professor Blank.
Finally, while this is an logistical explanation of running OH, there are a few important tips to keep in mind.
- Stick to one bug per help session. If a student comes to you with a bug, and you are able to help them solve that bug, and they have another bug, you should ask them to spend some time working on that on their own. Students may come with multiple unrelated conceptual questions. Feel free to answer as many of these as time permits.
- Your goal is to help the student get "unstuck", not solve the bug. TA training will go over this in more detail, but students should try to solve the bug on their own before coming to you, and may continue working on the same bug after coming to you. The "success" of a session of office hours is determined not by if the bug is solved, but if they are able to continue making progress without you.
Finish Helping a Student
When you are done helping a student, you'll need to submit the form again.
- Add the student you finished with to the "Is there someone you just finished helping?".
- Fill out the correct reponse to "Which option is most applicable to the help session you just finished?".
- We completely solved the issue: If they came to you with a bug or a question, and you were able to address that bug or answer that question. Again, stick to one bug per help session.
- We made some progress, but we ran out of time: Again, running out of time is not ideal, and if you are consistently responding with this, you should come to an experienced TA or Professor Blank for advice on helping a student quicker.
- We made some progress, and they want to keep working: If students have an idea to solve something, and it will take some time, encourage that student to go do that on their own! Students shouldn't be sitting at your desk typing code. Your time and the students' time is valuable, so if a student can do something without your assistance, encourage that!
- We made some progress, and I want them to keep working: If you feel like you've provided the student with enough to get them unstuck, your job is done. You should encourage them to continue working on the bug, even if they haven't solved it with you.
- Escalate to course leadership: TAs don't know everything, and aren't responsible for everything! If you run into something that is either (a) "above your paygrade" (not your responsibility) or (b) you can't address (and none of your co-TAs can), you should escalate to course leadership and message one of the Head TAs or course professors on discord.
- I did not provide enough help; please pass them to another TA: Only select this option if there are two TAs in your OH session. Two TAs are better than one. Especially if you are new, we'll try to pair you up with another more experienced TA. This will dequeue the student and send them to the top of the queue so your fellow TA can dequeue them next.
- Do your best to invoke this as quickly as possible after getting stuck. Especially if your OH is busy, we would prefer for a student to not have 16+ minutes (if there are two TAs hosting OH, that's an eighth of the total available TA time!) of TA help for one bug. Of course, maybe this will happen, so use your best judgment.
- You can enqueue a new student with the same steps described in Start Helping a Student. This is meant for your convenience, but you can also just submit the form twice if you prefer.
Ending OH
- If you followed the instructions for Closing the Queue Early, there shouldn't be any students left in the queue. If there are, you'll need to tell them to wait for the next OH, and then you should remove them from the queue with "Do you want to remove anybody from the queue without helping them?".
- Pause the office hours with the phone, and then also click Reset to None Mode so the schedule of upcoming office hours reappears.
If you are holding the last hour of office hours for the day, please close the door when your session is complete. Politely ask the students to leave office hours.
Congratulations on successfully hosting office hours in \((CS)^2\)!