ENGR 101 | University of Michigan
Guide to Office Hours
We will be using two types of office hours for ENGR 101:
- In-person in B521 Pierpont
- Asynchronous via Piazza
There are hundreds of students in this course… and only two faculty instructors/professors. As much as we’d love to work one-on-one with each and every student on all their assignments, there is literally not enough time in the semester for us to do this. Thank goodness for our amazing GSIs and IAs – there are a lot more of them, so you want to go to them for your debugging help!
The Professor Office Hours are therefore for discussing high level things: general stuff about engineering, how and why we chose the projects that we have, general strategies for writing algorithms and programs, our career paths, life at U-M, courses you’re thinking about taking in the future, how to become an IA or GSI, etc. To be fair to all students, we will not answer specific debugging questions and we will not look at your code.
Making the Most of Your Office Hours
In-person office hours can sometimes have a lot of other students who also want help. Piazza posts are text-only (or images if you attach screenshots) and asynchronous. All of your office hours options do have some limitations, so to make the most of your office hours time you should have specific questions or trouble spots in your code ready to describe to the course staff member.
Examples of good questions:
- My second plot isn’t showing up in MATLAB. I see the first plot here, and I see these variables exist in the workspace, but I think something is wrong with how I’m trying to do the second plot. Can you please help me?
- I have a breakpoint set in my MATLAB function, but I don’t understand why I should be doing that. One of my lab group members told me I can use breakpoints for debugging, but I don’t know what that means. Can you please help me understand a couple of debugging strategies in MATLAB?
- I’m getting an out-of-range error. I used cout statements to see how far I could get before getting the error, and I figured out that the error is happening somewhere between lines 78 and 85, but I just can’t seem to see what I’m doing wrong.
- I’m not quite sure I fully understand the difference between if-else statements and else if statements. Can you please show me a couple more examples?
- Here’s a copy of my flowchart for Project 4. Can you please look it over and see if I’ve done it correctly?
- I tried installing VS Code, but the process keeps getting stuck when I try to open a new terminal. This screenshot shows the error I’m getting. I looked for this error in the set up guides, but couldn’t find anything. Any ideas?
- I’ve been reviewing this practice assessment on PrairieLearn and can’t figure out Problem 3. I know I am going to need a for loop, but I am not sure what my stopping condition should be. Am I going down the right track?
Examples of less-useful questions:
- Can you fix my code?
- What am I supposed to do for project 4?
- I can’t install VS Code.
- What is going to be on the assessment?
- My code doesn’t work.
In-Person Office Hours in B521 Pierpont
In-person office hours are what we might call our “usual” office hours. We have a dedicated room, B521 Pierpont, that is specifically set up for ENGR 101 office hours. We staff B521 for large portions of the day during the week, and you can drop in anytime – no appointment needed!
You can come see us for in-person office hours if you have specific questions (like those examples above) or you can just come and hang out and work on your ENGR 101 work. That way, when you have a question, a GSI or IA is right there to help you out! B521 is just around the corner from the lab rooms (B505 and B507), so a lot of people choose to come to office hours right after lab, since they’re already over in Pierpont anyways.
In general, questions will be taken in a first come/first served order, and everyone in the room will be able to hear the answer. It’s very likely that someone else in the class has the same question as you, so you might not even have to wait until your turn comes to get your answer!
The benefit of group office hours is that we can help a lot of people very quickly. The drawback is that we might not be able to provide a lot of one-to-one help if there are a lot of people in office hours, for example if you want to show us your code for a project and it’s right before the deadline for the project. If you don’t want to deal with long wait-times before a project is due, get your project done early!
How To Do Office Hours in B521 Pierpont
This is the general flow for how office hours work.
Step 1: Have a Seat!
Have a seat at one of the general seating areas in B521 (or anywhere nearby, such as in the hallway). Please do NOT sit at one of the four instructor stations (labeled #1-4 below).
Step 2: Join the Queue
Go to the office hours queue at eecsoh.org. You can also go to the course website at engr101.org and click on the “Office Hours” link at the top of the page.
Log in with your umich account (the login button is in the upper right corner):
Scroll down and click on “ENGR 101” (click the ★ to favorite and move this course to the top of the list):
Add yourself to the queue by describing what you want help on. In the “Location” box, you can describe something you are wearing to help us make sure we have the correct person. Click “Sign Up” to join the queue.
Step 3: Watch for Messages
When you are in the next batch of students to be helped, a staff member will “pin” you, moving you to the top of the queue. You will get a message when you are pinned:
This “Pinned!” notification is to let you know that you will be helped soon, probably in the next 10 minutes or so.
Click “okay” and you can see that your card on the queue now shows a pin icon in the upper right hand corner:
When a staff member is ready to help you, they will set your status to “help”:
Please note that this generic “You’re up!” message is meant to serve a lot of different classes, each with slightly different ways of working with the queue. For our class, this “You’re up!” message just means it’s your turn to be helped.
Click “okay” and you will see that your card on the queue now shows an icon of a little person at a whiteboard to show that you’re being helped:
Now, look for an additional message from the staff member telling you which room to go to:
The room listed will likely be B521 Pierpont, our normal office hours room (which you may already be in!). But remember that during our “extra project office hours”, you may be asked to go to B505 or B507 Pierpont to find the GSI/IA who is going to help you.
Step 4: Be In the Room
Make sure you are in the room that is indicated in the message that you get from the staff person. This room will often be B521 Pierpont, but it might be B505 or B507 if we have extra staff members on duty during the days leading up to a project deadline.
Step 5: Listen for Your Name to Be Called
One of the staff members (a GSI or IA) will call your name. When you hear your name, go over to the person who called your name and sit down at their station. You’re ready to get help!
You MUST be in the room when your name is called or you will be skipped in the queue.
This policy is to help our staff spend as much time helping students as possible, rather than walking all over the basement of Pierpont trying to find where people are.
How the Queue Works
The queue has a few settings that we use to help the process go more smoothly and more equitably.
Cooldown Period
We have set a “cooldown” period of about 10 minutes. This means that after you are helped, you cannot re-join the queue for 10 minutes. About 5 minutes of this cooldown period is actually time when you’re being helped by a GSI or IA. We then want you to take time to follow the advice you get and work to revise your code before re-joining the queue.
+1 Priority
The first time you join the queue on a given day, you will receive +1 priority. This means that you will be placed above anyone who has already been helped that day. We use the priority setting to make sure that we can help everyone at least once per day during busy times, such as the days leading up to a project deadline.
If it is busy at office hours and you do not have +1 priority (because you were already helped that day), please make sure to still watch for messages! The staff will assign one or two GSIs/IAs to pin students off the “non-priority” people on the queue to help balance wait times.
Project Partnerships
After the project partnership deadline, we will import the project partnerships to the office hours queue. Only one partner can join the queue at a time. We use this policy so that students in partnerships cannot “game” the system by having two people on the queue for the same question, and also to reinforce that partners are supposed to be working together on one program.
Asynchronous Office Hours via Piazza
Piazza is an asynchronous Q&A platform. Public posts with general questions can be very helpful for both yourself and other students who often have similar questions.
If you feel more comfortable interacting with other students and staff through a written medium, then Piazza might be a good way for you to ask questions and receive answers. But don’t forget that you can come talk to us, too! If you find yourself going back and forth with screenshots on Piazza, then it’s probably time to come to the in-person office hours in Pierpont. Sometimes it’s just faster and easier to talk in real-time to get help – and that’s why we’re here!
If you want to ask specific questions about your code for projects or labs, post your code in a question on Piazza, just do so as a private post. As staff, we will make sure to answer all questions on Piazza promptly, however we will not answer any questions after 10pm Ann Arbor time, so please plan accordingly.