Instructor and office Hours
- Email: jarrett@cs.pitt.edu
- Office: 6509 SENSQ. On the 6th floor from the elevators, face the bathrooms, and go left. Go right and immediately left. On the right you will see a short hallway numbered 6515, with a paper sign on the door saying what rooms are inside it. My office is the one at the end on the left.
- Office hours: Tue/Thu 2:00-3:50
- Discord hours: not as often as I used to be
Lectures
- (SEC 1400, CRN 30877) Mon/Wed 1:00-2:15 in 5401 WWPH
- (SEC 1215, CRN 23545) Mon/Wed 3:00-4:15 in 11 THAW
- (SEC 1070, CRN 23551) Tue/Thu 4:00-5:15 in 5502 SENSQ
Teaching Assistants
- Graders:
- Mon/Wed 1:00 section: your grader is Kasvitha Kalapati.
- Mon/Wed 3:00 section: your grader is Harshitha Venkatesh.
- Tue/Thu section:
- If your last name begins with A-S inclusive, your grader is Ganesh Venkattaraman.
- Otherwise (your last name begins with T-Z inclusive), your grader is Kasvitha Kalapati.
- You can also see who graded your work on Gradescope.
- Recitation TAs:
- Shayan Peyghambari Oskoui (shp184)
- Thu 11:00-1:00 in 6803 SENSQ
- Ben Osband (bro46)
- Tue 1:30-3:30, Wed 9:30-11:30, Thu 12:30-2:30 in 5804 SENSQ
- Alex Malfregeot (amm635)
- Tue 2:30-4:00, Wed 4:30-6:00 in 5804 SENSQ
- Steve Johns (srj42)
- Mon/Wed 10:45-12:15, Tue 1:30-3:30, Thu 1:00-2:00 in 5804 SENSQ
- Molly Hamilton (moh56)
- Tue 4:00-6:30 in 5804 SENSQ
- Wed 4:45-7:15 on Discord
- Thu 12:00-2:00 in 5806 SESNSQ
- Shayan Peyghambari Oskoui (shp184)
Recitations
You should go to recitation. They’re there for you to get guidance on the labs and projects, review for exams, and ask questions. Most students get a lot out of recitation.
- (SEC 1401, CRN 30878) Thu 10:00 in 5505 SENSQ with Shayan
- (SEC 1402, CRN 30879) Thu 11:00 in 5505 SENSQ with Molly
- (SEC 1220, CRN 23546) Thu 2:00 in 5313 SENSQ with Steve
- (SEC 1080, CRN 23552) Fri 10:00 in 406 IS with Ben
- (SEC 1230, CRN 25385) Fri 11:00 in 305 IS with Steve
- (SEC 1075, CRN 25384) Fri 1:00 in 411 IS with Shayan
- (SEC 1225, CRN 23547) Fri 2:00 in 406 IS with Ben
- (SEC 1090, CRN 23553) Fri 4:00 in 411 IS with Alex
OPTIONAL Textbook
Computer Organization and Design (Patterson and Hennessy), 4th or 5th edition, it doesn’t really matter cause I don’t use it
Grading
Your performance is your own. I do not “give” grades, you earn them. I also don’t announce averages/medians/etc. for the same reason. This is a class, not a competition.
Your grades are available on Canvas.
Labs (x8): | 10% |
Projects (x2): | 40% |
Exams (x2): | 50% |
- Each lab is only worth 1.25% of your final grade, but…
- You really have to do the labs if you want to be able to do the projects.
- You will be completely lost on the projects if you skip the labs.
- Labs cannot be turned in late, but projects can be turned in 1 day late for a 10% penalty. (That’s 10% of the project grade, not 10% of the final grade.)
- The second exam is not cumulative.
The grading scale (look closely):
90-93% | A- | 94-96% | A | 97%+ | A+ | ||
80-83% | B- | 84-86% | B | 87-89% | B+ | ||
70-73% | C- | 74-76% | C | 77-79% | C+ | ||
60-63% | D- | 64-66% | D | 67-69% | D+ | ||
<60% | F |
I do round percentages after all other calculations have been done. So if your grade calculates as a 93.5%, it will be rounded up to 94% and be an A. This is done automatically by Canvas - when it comes time to look at your final grade, pay attention to the letter grade, not the percentage.
I am not a professor where “a 40% is a B” is the norm, so I haven’t needed to curve anything in years, as the grade distributions are usually well-balanced. So the answer to “is this going to be curved?” is virtually always “no.”
Communication
Announcements are sent through Canvas, which also sends them through email. Please be sure to check your email regularly or set your phone up to notify you.
There is an online chatroom through Discord. Check the pinned announcement on Canvas for the link. Here is a page with some basic info if you are new to using Discord.
If you need help, post a one-sentence description of your problem first in the channel for your class (e.g. #cs0447
). From there, I or one of the TAs will be able to help you! But do not post more than 2-3 lines of code in public. Because that would be sharing code, which is against the rules below.
Late Policy
Projects and labs are due for full credit at 9:00 PM on the due date. I’m not super strict about it, so don’t worry if you turn it in a little past that.
Projects (but NOT labs) can be turned in late by 9:00 PM on the next day. There is a 10 percent penalty for late submission, taken off after all other grade calculations (e.g. extra credit).
Labs cannot be turned in late, and there is no “late penalty” for labs. Either you turn them in on time or you don’t.
If you have a major problem that means you can’t turn in a lab or project on time, contact me and explain what’s up; I’m pretty accommodating. But that doesn’t mean I’ll always give one, so don’t take it for granted.
Correct Submission Policy
It is your responsibility to submit the correct file(s) for all assignments. If you submit the wrong file (e.g. an earlier unfinished version, or the wrong assignment, or a starting file), you will be asked to resubmit what you have, but you will get a 20 percent penalty for it.
For projects, this stacks with the late penalty - if you turn the wrong file in, and you do it late, that will be 30 percent off.
Do not attach the corrected file to a Canvas comment on your assignment. Graders will never grade these. Instead you will be asked to resubmit as normal.
Academic Integrity
In the real world, people work together to solve problems. This is not the real world. This is an artificially created environment designed to evaluate your understanding of the material being taught.
To that end, you must do all graded work yourself. That means that every piece of every lab, project, and exam must be your own work, not taken from anyone (or anything) else.
There are two exceptions:
- you are allowed to get help from me (the instructor), the TAs, and departmental peer tutors.
- this includes any materials I provide (examples, starting code etc.)
- for labs only, you may discuss the lab with one other student.
- but you must still both do your own work and make your own submissions.
- you cannot share/split up the work in any way.
- you cannot look at each others’ work for any reason.
- you cannot describe your solution to someone else for any reason.
- (for projects, you are not allowed to discuss the project with any other student.)
- but you must still both do your own work and make your own submissions.
When you violate academic integrity, you are either lying about your skills, or helping someone else lie. Dishonesty can pay off in the short term, but in the long term it will catch up with you. Here, you might fail a course and have to retake it. In the real world, you might get fired or sued.
The following things are all violations of academic integrity:
- Showing your work to - or receiving work from - another student in this or any other class, for any reason
- Working on an assignment together (there are no group assignments in this class)
- Using someone else’s work “as reference” (protip: there is no such thing, that is just cheating)
- Using online resources, for example (but not limited to) StackOverflow, Reddit, Chegg, etc.
- Using solutions that previous students have made publicly available on GitHub, GitLab etc.
- Using a large language model (e.g. ChatGPT, Github Copilot) to write any part of any assignment
- Getting solutions directly from someone who previously took the course
- Paying someone to do your work for you (I am aware of sites like powcoder.com)
- Getting exams from previous students
- Writing things on your hands, pencil case, water bottle etc. to look at during exams
- I am sure there could be dozens more examples here but I think you get the point.
None of the following are valid excuses for violating academic integrity:
- “I was confused”
- Then you should have asked for help.
- “I didn’t want to bother you by asking a bunch of questions”
- That’s literally my job. I am here to answer your questions.
- I am sorry if I come across as intimidating. I wish I were less like that. I really do want to help you.
- “My friend was struggling and I didn’t want to see them fail”
- I know that’s a difficult situation, but you should tell me that they need help.
- You are most likely setting them up for failure in the future.
By the way, if you start to violate academic integrity, you can stop. As long as you don’t turn in what you started “getting help” on, if you come to me and admit it, you won’t get any penalties. I may give you more time to finish the assignment on your own, but don’t count on it. Where it crosses the line from “making a mistake” to “facing the consequences” is when you turn in something that you did not do yourself 100%.
If I believe you have violated academic integrity, the following process will occur:
- I will contact all involved students to ask to meet in person.
- I will present my evidence, and you will have a chance to explain yourselves.
- If it is determined that a violation did occur:
- I will decide the sanction to be imposed (see below).
- I will write up a digital report about the violation.
- You will digitally sign that report, where you can either accept the sanction or appeal.
- If you appeal, we will set up a meeting with the department chair and go from there.
- In all cases (whether or not you appeal), you are still welcome to attend class, do work, etc. (Yes, even if the sanction was “you get a 0 for the course”)
- Furthermore, that report will be:
- Kept internally in SCI for our recordkeeping
- Will not appear on your transcript except in very severe cases
Sanctions for academic integrity violations are as follows:
- For labs: either a 0 for the lab or a 0 for the lab portion of the course grade, depending on severity.
- For projects: either a 0 for the project or an F for the course, depending on severity.
- For exams: either a 0 for the exam or an F for the course, depending on severity.
- If there are multiple infractions, it is an automatic F for the course.
Last, I know you may be proud of your work and want to show it off to the world, but this makes our job much, much harder in the future. Please do not post your work publicly online. I know you want to post your work to show to potential employers. It is possible to make private repos and invite them to them in that case (as a student, you get free features on GitHub).
Behavior
You are expected to behave respectfully to your fellow students, the instructor, and the teaching assistants.
Jokes or comments about sex, gender, race, ethnicity, religion, etc. will not be tolerated. This is not Reddit or 4Chan. Behave as if you were a professional: keep the discussion about the subject at hand and try not to bring personal issues into it.
These rules apply not only to lecture, but also recitations, office hours, online chats, emails, etc.
Religious Observances
If a religious observance will prevent you from attending recitation/exams/being around to submit projects, please contact me as early as possible in the term about them so we can make accommodations.
Disabilities
If you have a disability for which you are or may be requesting an accommodation, you are encouraged to contact both your instructor and the Office of Disability Resources and Services (216 William Pitt Union; 412-648-7890; TTY: 412-383-7355) as early as possible in the term. DRS will verify your disability and determine reasonable accommodations for this course.