— Quote
“The beginning is always today.” - Mary Wollstonecraft
CS 1112 | Prof. N. Basit | Spring 2025
— Instructor
| Instructor (Email) | Office Hours | Office Hour Location |
|---|---|---|
| Nada Basit (basit@virginia.edu) | ➢ Mondays: 10:30am - 12:00pm ➢ Wednesdays: 10:00am - 11:00am ➢ Other times: by appointment only (email me!) | In-person, in my office – Rice 405 |
Instructor Office Hours begin on Monday, January 29, 2025.
(Email if you wish to meet sooner!)
Important notes:
- When sending email, always include “CS 1112” somewhere in your email subject header. I receive a lot of email and teach other classes. This will allow me to get to your email faster!
- All times in this Syllabus are given in Eastern Time (ET)
— Course Information
Meeting dates: Jan 13, 2025 to April 29, 2025
Lecture:
| Section | Days & Time | Location | Professor |
|---|---|---|---|
| 001 | M/W/F, 12:30-1:45pm | Olsson Hall 018 | Nada Basit |
| 002 | M/W/F, 2:00-3:15pm | Olsson Hall 018 | Nada Basit |
In-Class Activities a.k.a. “Lab” activities:
There are no separate labs for CS 1112. Instead, they are incorporated into the lectures on M/W/F. Labs may show up in the middle and/or at the end of the lecture.
We will be using PyCharm as the IDE for the course. You will have the opportunity to download and install this software prior to labs officially starting (instructions will be provided for you). It is your responsibility to ensure you have PyCharm properly installed. Feel free to ask your TAs for help!
Do your best to attend class regularly. If you miss a lab, you are missing out on the interaction with a partner and with the TAs, both a part of the intended learning experience in this course.
Course TAs, Contact Information, and TA Office Hours:
We are fortunate to have many great teaching assistants for this course. TA’s will provide office hours (tutoring), assist with in-class “lab” activities, help with grading, and do other course tasks. TA names, emails, and their office hours will be posted on the course Google Calendar (linked to via Canvas); all in-person Office Hours begin on Monday, January 29, 2024.
Head TAs:
Head TAs are each assigned a role and serve as the point-of-contact for this role for all students (across all sections). If you have a question about any of these areas, first contact the appropriate Head TA(s) by email (there can be co-Head TAs per area). Contact and role information is given below:
| Head TA Name | Head TA Role / Point-of-Contact | |
|---|---|---|
| Herin Seo | aww5kx@virginia.edu | Course Admin |
| Bonny Koo | uck8up@virginia.edu | Course Admin |
| Niveen Abdul-Mohsen | bvn9ad@virginia.edu | Quiz and Quiz Grading |
| Clara Grimmelbein | esf3xw@virginia.edu | Homework and Homework Grading |
| Julie Fitzhugh | yzc5ht@virginia.edu | Homework and Homework Grading |
| Natalie Nguyen | gzg8pf@virginia.edu | In-Class “Lab” Activities |
| Riley Potter | cvb8ca@virginia.edu | Office Hours Admin |
| Kayla Kim | rkf9wd@virginia.edu | Office Hours Admin. |
| Rob Bundy | ajh4ep@virginia.edu | Piazza Admin. |
| Jackson Le | wnj9tx@virginia.edu | Website Admin. |
| Matan Morse | mtk7rx@virginia.edu | Website Admin. |
| Jackson Le | wnj9tx@virginia.edu | Homework & Quiz preparation |
| Matan Morse | mtk7rx@virginia.edu | Homework & Quiz preparation |
- Important note: When sending email to Head TAs, always include “CS 1112” somewhere in your email subject header. This will allow the TAs to filter your emails and respond quicker.
— Instructor Availability & Who To Contact For Different Types of Issues:
It is important to me to be available to my students, and to address their concerns. I am available during my office hours and typically available to talk after each class. I am also available to meet (in-person or on Zoom) outside of these times by appointment. Send me an email and we can set something up at a time that is mutually agreeable. Nonetheless, it is a large class and there is only one of me. Therefore the wonderful teaching assistants (TAs) for the course can help address your questions, too. If you have general questions that relate to course activities, please first ask in class then, consult Piazza and/or contact the appropriate Head TA point-of-contact related to that topic (see “Head TAs’’ section above.) Otherwise, please attend our office hours. Here is some additional information about who to contact for different types of issues, and a suggested order (this will allow you to get a response quicker):
| To Discuss: | You should contact us via (in this order): |
|---|---|
| Questions about course content / topics | In-class questions (during lecture), Piazza, Appropriate Head TA(s), TA Office Hours |
| Questions about homework (general, not code) | Piazza, Homework Head TA(s), TA Office Hours |
| Questions about code conundrums | TA Office Hours, Professor Office Hours |
| Questions about grading (general) | Regrade requests through Gradescope (for PAs), Quiz Head TA(s), Homework Head TA(s), Piazza |
| Questions about in-class “lab” activities (general) | In-Class Activities Head TA(s), Professor or TA Office Hours |
| Questions about TA Office Hours and attending Office Hours | Head TA |
| Questions about using Piazza or Piazza issues | Piazza Admin Head TA(s) |
| Conversations about mentoring, research, grad school, internships, résumés, student life, etc. | Professor Office Hours, schedule a one-on-one visit with your professor, TA Office Hours |
| Personal issues impacting coursework and/or progress (homework, exams, attendance, etc…) | Your Dean, and/or private email to your professor ( see Student Support Team section) |
In particular, for homework help, first consult Piazza (by reading existing posts then writing one if your question wasn’t addressed), then attend TA office hours, finally Professor office hours. Always email your instructor (do not use Piazza) for personal issues or emergencies.
Contacting me in general: I tend to receive a lot of email as the semester progresses, so seeing me in person (right after lecture, during my office hours, etc.) is often a good way to get a more immediate response.
— Types of Learning Assessments
The assessment and their descriptions are as follows:
-
In-Class “Lab” Activities and Class Participation: On most days there will be in-class activities during lectures that are designed to be hands-on, collaborative experiences that give you the opportunity to review and reinforce your understanding of the material that we have been learning.
-
These activities are meant to be collaborative, and healthy discussion is not only encouraged but expected! You will also get the assistance of TAs and your professor as needed. They provide additional practice with recent and current topics covered in class that can help you with the homework assignments.
-
Full correctness and completion is not always expected, but full participation and engagement is expected during activities.
-
These activities will be graded on a completion basis, not necessarily based on correctness. As long as you try your best and we can see you have made a sincere effort towards the goal/solution of the activity you will receive full credit.
-
Do your best to complete these activities by the end of class on the day the activities are introduced. Be sure to check-in with a TA to show them your work before leaving class!
-
Overall, in-class “lab” activities and participation account for 15% of your grade. If you participate in at least 80% of the activities throughout the semester you will earn all (15% out of 15%) of this portion of your grade. If you miss more than 20% of the activities then you will start earning less than 15% out of 15%.
-
-
Homework: Programming Assignments (PAs): There will be approximately nine (9) programming assignments (PAs) throughout the semester. These assignments are intended to help you apply the material that we’ve been learning. By completing these assignments, you will be developing your problem-solving abilities.
-
Use your programming assignments as a means to sharpen your skills and problem solving abilities in order to do well on quizzes and the exams. These assignments are often where students say they learn the most. All assignments can be found under “Assignments” on the left menu of Canvas.
-
No collaboration is permitted. All work and submissions must be the result of individual academic effort.
-
Homework assignments are submitted online on Gradescope and you will receive immediate feedback from the auto-grader on how many test cases you have passed.
-
You must submit each homework by the specified deadline. If you encounter last-minute issues close to the homework deadline, you may submit a homework assignment up to 24 hours late. We cannot accept assignments submitted after this time. Homework can be submitted multiple times if necessary (without penalty), but no later than 24 hours after the original due date. Your last submission is the one that is graded.
-
Homework assignments are due by 11:00pm on Wednesdays (or by 11:00pm on Thursday if submitting up to 24 hours late). No homework assignment is dropped.
-
-
Quizzes: Quizzes will be one of the primary ways that we will assess your mastery of the material in this course. It is also a good way to self-assess in preparation for the exams. After every major topic, there will be a Quiz. These quizzes will be administered regularly throughout the semester and cover a few topics.
-
All quizzes have a time limit of 30 minutes and will be timed using an online timer. The timer will begin as soon as you open the quiz, so DO NOT open the quiz until you are ready to begin! Quizzes will automatically close after the allotted time (so please be mindful of your time!) You will not be able to see or update answers on your quiz once the quiz closes.
- Students with documented SDAC accommodations will have their time appropriately adjusted automatically. For example, if you have 1.5x time accommodations, the online timer that you see while taking the quiz will automatically give you 45 minutes (and then automatically close). It is up to you to inform me of your SDAC accommodations prior to the first Quiz! If you gain SDAC accommodations in the middle of the semester, then let me know as soon as possible.
-
All Quizzes are open-book; that is, you are allowed to use your notes and any resources provided to you by the instructor on Canvas. You may also use PyCharm, but just be mindful of your time! However, you are NOT permitted to gain any assistance in any form by another person. Absolutely no collaboration is permitted. All work and submissions must be the result of individual academic effort.
-
All Quizzes are take-home and therefore must be taken on your personal laptop or desktop computer. We unfortunately cannot be responsible for connection problems or glitches on your computer. We will, however, provide you with some quiz-taking guidelines before the first quiz to help mitigate errors/issues as much as possible.
-
Quizzes will be taken and submitted on our external testing site “Sherlock.” (There will be a link to the quizzes on our Canvas page.)
-
Quizzes are released on Friday and due by 11:00pm the following Monday. (You will need to only find a 30-minute window to take the Quiz.)
-
Given your responsibility is to find any 30-minute time period between Friday and Monday, there will be no late or make-up options. However, we will drop your lowest two (2) Quiz scores at the end of the semester.
-
-
Exams (Exam 1 and Exam 2): Exams will be one of the primary ways to demonstrate what you have learned throughout the course. The format of the exams will be similar to a quiz, but will be longer, more comprehensive, and will consist of a variety of question types (multiple choice, short answer, True/False, etc…)
-
There will be two (2) exams throughout the semester. These exams will take place in-person, during class time. We will ask you to show your UVa student ID so please remember to bring your student ID with you!
-
All exams are closed-book, and closed IDE (no PyCharm). Absolutely no collaboration is permitted. All work and submissions must be the result of individual academic effort.
-
We will dedicate one class prior to each exam for review. All relevant exam instructions will be provided to you prior to the exams. No new course material will be taught on these review days.
-
No exam is dropped. However, you’ll be able to gain some points back by performing exam corrections on your exams. Instructions on how to do this will be provided.
-
-
Final Project: The final project is slightly larger than a homework assignment and serves as a final cumulative programming assignment. The project will provide you with hands-on practice with Python dictionaries, regular expressions, and file input/output.
-
This project accounts for 5% of your overall course grade.
-
You are permitted to work collaboratively in small groups of 2-4 people. You cannot work as an individual! This project is meant to be collaborative.
-
Even though emphasis will be on Python dictionaries, regular expressions, and file I/O, you will utilize skills you have learned throughout the semester to complete this project (the cumulative nature of later topics relying on the knowledge and understanding of earlier, more fundamental topics.)
-
You will be asked to give a small presentation (in a small-scale setting) directly to your professor or to one of the TAs describing your approach to solving the project and walking us through your code. Details of the project and presentations will be provided in the formal project description document which will be put on Canvas.
-
— Final Grades
Final grades will be calculated using the following percentage breakdown:
- Homework Assignments*: 34%
- Quizzes**: 22%
- In-class “lab” Activities / Participation: 15%
- Exam 1: 12%
- Exam 2: 12%
-
Final Project: 5%
- Also referred to as “Programming Assignments” (PAs) ** The Syllabus Quiz is required, however as such it doesn’t count towards your overall course grade
For students taking this course as a Pass/Fail grade, a course grade of at least 65.0% is required to earn a grade of P. There will be no rounding of your grade; however, there may be other opportunities to gain a small amount of additional points.
Letter grades will be assigned according to the following letter grade mapping:
| Grade | A+ | A | A- | B+ | B | B- | C+ | C | C- | D+ | D | D- | F |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Lower Bound | 98.0 | 93.0 | 90.0 | 87.0 | 83.0 | 80.0 | 77.0 | 73.0 | 70.0 | 67.0 | 63.0 | 60.0 | 0 |