Introduction
Teaching Assistants (TAs) are available to help you with your work every day of the week and most evenings, except on Saturdays. Note: even strong students who understand the material are likely to need help from TAs regularly. All of them have taken CS 11 and they are a terrific resource, not only for helping you to learn and solving problems, but for getting a student's perspective on Computer Science at Tufts.
This document outlines the CS 11 TA office hours logistics and policies. The majority of policies are copied verbatim from Brown University's policy for their introductory computer science course. These policies have two main purposes:
- To facilitate student learning.
- To set expectations on how students and TAs will interact during office hours
If you feel that any policy is unfair to your situation, feel free to contact a member of the course staff.
Logistics
- Check the pinned documents section in Piazza for a note that gives the specific times and locations at which office hours are being held.
- If you are in-person, join the queue by adding yourself to the queue on the whiteboard. Virtual students will sign up on a google form, and the TA will add them to the end of the queue, joining the Zoom when it is their turn.
- If you solve your problem before a TA helps you, or if you have to leave, erase your name from the queue. This will allow TAs to have a good sense of what the status of the queue is.
- Office hour shifts are 75 minutes, following the block schedule. This means that no one is technically on-duty during the last 15 minutes of each hour and a half block. Sometimes TAs will stay the extra time, but you should not expect them to do so.
- Office hours are usually very busy right before assignment deadlines with potentially long wait times. Earlier in the week there are often shifts where only a few students are there meaning they can get more individualized help. Be aware of this as you plan your work.
Virtual OH Resources
We recognize that students may be unable to access in-person office hours during the semester.
If a TA is unable to join your Zoom meeting using the link you provided in the Google Form, you will be marked as “Missing” on the spreadsheet and have 15 minutes to “Edit your response” with a valid URL (you are only able to do this from the link on the Google Form's confirmation page; make sure that page isn't closed accidentally). In the meantime, the TA will skip over you and help the next person in the queue. If you edit your Form response with a valid URL before the 15 minutes are up, the next available TA will assist you. Otherwise, you will lose your spot in line and have to add yourself to the queue.
Policies
This section lists the TA Office Hours policies and provides explanations for each one.
- If you hit a bug, you should have put significant effort
into fixing it on your own before seeing a TA. You should be able to
show relevant evidence if a TA asks for it. Examples of evidence
include an implementation plan, pseudocode, debugging print statements
(sent to
cerr
and/orcout
), and widespread commenting. After the first few weeks of the course, TAs will turn away students who cannot provide evidence of attempting to solve their problem on their own. The student will be reminded of the debugging tools they've been taught, after which they should use those tools to try to handle the bug on their own before asking for help again.- Rationale: Debugging is one of the most important skills to
develop in CS 11, and like most skills it cannot be improved
without practice. Many CS 11 students avoid this practice
because it is uncomfortable, and instead rely on the TAs to walk
them through the entire solution to an assignment. This is a major
barrier to learning, and will only make a student's life harder
and more stressful as the semester continues. Although it may be
frustrating at times, devoting the time to debug your own code is
essential to success in CS 11. TAs are available as a resource
only when it is evident that you have truly attempted to solve the
issue.
It is not the TA's job to debug your program; their job is to debug you so that you can debug your own program!
- Rationale: Debugging is one of the most important skills to
develop in CS 11, and like most skills it cannot be improved
without practice. Many CS 11 students avoid this practice
because it is uncomfortable, and instead rely on the TAs to walk
them through the entire solution to an assignment. This is a major
barrier to learning, and will only make a student's life harder
and more stressful as the semester continues. Although it may be
frustrating at times, devoting the time to debug your own code is
essential to success in CS 11. TAs are available as a resource
only when it is evident that you have truly attempted to solve the
issue.
- Students may not sign up more than 10 minutes before the
first set of office hours on a given day. If you sign up earlier than 10
minutes before the first set of hours, you may be removed from the queue.
For instance, if hours start at 4:00, sign-ups will open at 3:50, and TAs
may remove signups that occured before that time. Students also may not
“reserve” a specific time when signing up
- Rationale: Many students are in class, at work, or at extracurricular activities before office hours start or during the open block. We believe no student should have a disadvantage in being helped at TA hours due to outside commitments. Office hours use a first come first serve basis. Attempting to sign up for a specific time is disrespectful to fellow students and adds another thing for TAs to manage during busy shifts.
- The queue may have a field for “Question,” which must be
specific and may either be a statement or question. Rather than
“Broken program” or "Atom question", say “I can check for
palindromes, but don't know how to check for close-enough
palindromes” or “How do I fix a remote-sync error?”
- Rationale: Providing a thought-out question helps the TA understand how to best help you and also demonstrates that you’ve thoroughly contemplated how to solve your bug before coming to office hours. It also helps TAs understand if there are similar issues or questions that many students have, and decide how best to instruct on the specific problem.
- TAs can only help with one question/concept/bug per visit. This policy may
be relaxed at a TA's discretion if the queue is short during their office hours.
- Rationale: We feel a responsibility to give equal support to all students, which means that if we give extra support to one student, we must provide the same for all students, significantly slowing down TA hours. A student cannot expect to be the special case who receives extra help. If you feel like you need extra help consistently, consider contacting the StAAR Center to be connected with a CS 11 tutor.
- Each visit with a TA is capped at 15 minutes.
The first 5 minutes should be spent explaining your question to the TA
and, in the case of debugging, showing evidence that you've worked on
the problem on your own.
- Rationale: We enforce this time limit in an attempt to meet with all students who are waiting on the queue. If a bug is unusually difficult to solve and has not been solved in the 15 minute window, there is a greater chance you will reach a solution if you redirect your issue to Piazza instead of putting yourself right back onto the office hour queue (particularly if the queue is long).
- By default, TA hours will end at the posted time regardless of
the length of the queue left (TAs are students too, with their
own lives). The queue grows exponentially longer as each
homework deadline gets closer, so don't assume that you'll receive
help if you join the queue during the last 30 minutes of office hours
the night before an assignment is due. If a TA decides to extend
their hours, they will post about it on piazza.
- Rationale: TAs are students (people, even!), who also have busy schedules and coursework. We all put in a lot of time to make sure this course runs smoothly, and while we love doing it, we need to care for our own mental and physical health, as well as work on our own homework too.
- Do not expect to receive more than your fair share of TA hours,
especially for debugging questions. Do not contact TAs for
help via social media or personal emails, texts, etc.
We want you to get the help you need, which is why we hold so many
office hours, but keep in mind that struggling through hard bugs on your
own is the fastest route to becoming an expert debugger and one of the best
ways to reinforce the concepts you will learn in CS 11.
- See all above rationales.
- Starting with the third HW, coding incrementally will be
enforced during office Hours, meaning that if you come to a TA with a
bug, but have coded beyond it so that there are several more bugs, you
will be asked to comment-out the additional progress (and additional
bugs) to focus on the step at hand.
- Rationale: It is harder for TAs and you to find a given bug if there is additional code that has built upon it. By having a focus on a specific piece of code and bug, TAs can do a better job helping you find the bug during the 15 minutes given.