General Course Info
Term: Fall 2022
Department: COMP
Course Number: 110
Course Website: https://22f.comp110.com
Sections:
- 001 - Async (Most) Tuesdays, Sync Thursdays - 12:30PM - 1:45 PM
- 002 - Async (Most) Tuesdays, Sync Thursdays - 2:00PM - 3:15 PM
Instructor: Kris Jordan
- E-mail: comp110-heads@googlegroups.com
- LinkedIn: https://www.linkedin.com/in/krisjordan/
- Twitter: https://twitter.com/krisjordan
Graduate Co-instructor: Alyssa Byrnes
- E-mail: comp110-heads@googlegroups.com
Instructional Format
New concepts will be introduced asynchronously and remote via prerecorded lessons that enable you to pause, rewind, slow down (or speed up!) and complete with more flexibility than a fixed lecture format permits. Tuesdays will be led this way. The other half of the course, Thursdays, will serve as days to practice, reinforce, and extend the concepts introduced on Tuesdays. Thursdays will be held in-person such that you can be surrounded by peers and Undergraduate Learning Assistants to collaboratively work through challenges together.
Quizzes and Required Synchronous Days
Quizzes and examinations are offered in-person only this semester. The format is pencil and paper. We will provide the quizzes/exams/paper, you only need to bring pencils, a good eraser, and your ONECard to quizzes and exams.
Quiz Dates
- Thursday, August 25th - Quiz (QZ) 00
- Thursday, September 22nd - Quiz (QZ) 01
- Tuesday, October 18th - Quiz (QZ) 02
- Thursday, November 17th - Quiz (QZ) 03
- Friday, December 2nd - Final (FN) Exam
In-person Class Days
- Tuesday, August 16th
- Thursday, August 25th
- Thursday, September 1st
- Thursday, September 8th
- Thursday, September 15th
- Thursday, September 22nd
- Thursday, September 29th
- Thursday, October 6th
- Thursday, October 13th
- Tuesday, October 18th
- Thursday, October 27th
- Thursday, November 3rd
- Thursday, November 10th
- Thursday, November 17th
- Tuesday, November 29th
Office Hours and Tutoring In-person
The most valuable resources in COMP110 are office hours and tutoring. These resources expect in-person, face-to-face attendance and will not be available remotely.
Diversity Statement
The instructors and the COMP110 team value the perspectives of individuals from all backgrounds reflecting the diversity of our students. We broadly define diversity to include race, gender identity, national origin, ethnicity, religion, social class, age, sexual orientation, political background, and physical and learning ability. We strive to make this classroom an inclusive space for all students. Please let us know if there is anything we can do to improve; we appreciate suggestions.
Textbooks and Resources
The web page is the primary resource for this course. There is no textbook for COMP110. We will distribute occasional readings, reference material, and tutorials via the course website and Sakai.
Course Description, Target Audience, and Prerequisites
COMP110 introduces students to programming and data science from a computational perspective. With an emphasis on modern applications in society, students gain experience with problem decomposition, algorithms for data analysis, abstraction design, and ethics in computing. No prior programming experience is expected or needed. Foundational concepts include data types, sequences, boolean logic, control flow, functions/methods, classes/objects, input/output, data organization, transformations, and visualizations.
Pre-requisite: A C or better in one of the following courses: MATH 130, 152, 210, 231, 129P, or PHIL 155, or STOR 112, 113, 120, 151, 155.
Goals and Key Learning Objectives
This course is intended to teach basic computer programming skills to students ranging from those with no prior programming experience to those with some prior experience. This course aims to teach general programming language concepts and semantics, problem definition, problem solving, logical and recursive thinking, through algorithm development and writing programs. Additionally, the course offers broad exposure to some of today’s key issues of computing in society.
Course Load Expectation
COMP110 is a rigorous introductory STEM course. Learning how to program is an acquired, practiced skill much like playing a musical instrument or learning a new craft. The amount of time you individually spend practicing programing and working on assignments, outside of any other help, will significantly impact your success in the course. You should expect to spend 2.5 hours per week on lecture and async lessons ON TOP OF about 9 hours per week outside of lecture working on assignments and studying. We DO NOT recommended taking COMP110 in a semester when you are enrolled in 17 or more credit hours.
Course Requirements and Policies
You should complete all asynchronous lessons and related questions on time. You should attend all synchronous lessons (all days except those shown above) and check the course page for announcements and updates. You should complete all programming and reading assignments on time.
For in-person lectures, please show up at least five minutes early so that the class can begin promptly at its scheduled start time.
Grading Criteria
To do well in this course you must come to your own individual mastery of introductory programming concepts and engage with broader intellectual questions of computing in society. Final grades are calculated with the following weights for each course component:
- 50% - Preparation, Practice, Participation
- 30% - (EX) Programming Exercises
- 10% - (RD) 3x Reading Responses
- 5% - (LS) Async Lesson Responses on Gradescope (Graded for Correctness)
- 5% - (CQ) Challenge Question Responses on Gradescope (Graded for Correctness)
- 50% - Mastery
- 40% - 4x Quizzes
- 10% - Final Exam
The fairest way to assess mastery of material while distance learning is through a combination of timed assessments, excercises with “on your own” sections, and open-ended project work.
Taking at least three of the four quizzes and the final exam is required to be eligible to pass COMP110.
The cumulative final exam is worth 50% of your final grade at the start of the term. Each quiz you take accounts for 10% of your final grade and reduces the weight of your final examination by 10%. There are no drops.
For example: By taking all 4 quizzes, your final exam’s weight is 10% of your final grade. If you must be absent from a quiz (see policy below), then the three quizzes you take will account for 30% of your final grade and your final exam will account for 20%.
If, and only if, you take all four quizzes and your final examination score exceeds your lowest quiz score, then we will retroactively grant you an absence for the lowest quiz score and your final exam score will be worth 20%.
Quiz Absence Policy
The quizzes will be held during the section you are registered for and are synchronous, in-person for both sections 001 and 002. These dates, and the final exam date, are required synchronous dates for section 001.
You may be absent for up to one quiz. To request absence from a quiz, you should submit this form before your absence: https://bit.ly/comp110-22f-quiz-absences
To ensure these assessments are fair for all students enrolled in COMP110 this term, we do can only offer quiz makeups for university approved absences. Merely being absent from a quiz that does not qualify for a makeup, the quiz’s 10% credit will simply not be drawn down from your final exam score’s weight. As such, this is not a penalty; your mastery of this quiz’ material will be assessed on the cumulative final exam.
We can offer everyone absent from a quiz the same learning experience of sitting for the quiz at some later date and receiving feedback on it, but a quiz taken in this fashion is not for credit and will not count toward nor against your mastery grade to ensure fairness to all students.
Course Passage Policy
In order to pass COMP110, you must:
- Have a passing grade given the rubric of weights above and grading scale below,
- Take at least 3 quizzes,
- Score greater than 40% on the final exam.
Honor Code and Collaboration Policy
In order to do well in this course, you must come to your own individual understanding of the material. As such, collaboration is prohibited outside of the following policies.
Make sure that you are familiar with The UNC Honor Code. You will be required to sign an Honor Code pledge to hand in with every quiz and the final as well as “sign” the code you submit for grading by filling in your PID in the required __author__
variable. Failing to do so may result in no credit assigned for the assignment.
Collaboration Policy on Ungraded, General Course Concepts
You absolutely may, and are encouraged to, discuss general course concepts (i.e. not assignment-specific) material with anyone, including other current students and tutors. This includes going over lecture slides, documentation, code examples covered in lecture, study guides, etc. The examples you use to discuss general course materials must be from lecture or your own creativity, you cannot use examples directly drawn from any assignments handed in.
Collaboration on Graded Work
No collaboration with peers inside the course, or anyone outside the course, with the exception of our course TAs while they are working as a TA, is allowed on exercises, lecture assignments, quizzes, and exams. Your ability to complete each individually is critical for your ability to do well in this course. Illegal collaboration is easily detected in COMP110 because Gradescope has built-in support for Stanford’s MOSS program (Measures of Software Similarity), as well as other machine learning techniques. Every year, a number of violations are caught and prosecuted in the Honor Court, so far always resulting in guilty convictions and sanctions. Avoiding any fears here is simple: work on assignments and assessments on your own and come to office hours when you have questions. Please note that if you know someone who is a UTA, you are only permitted to receive help from them while they are working in their official capacity. Receiving help from a UTA outside of their working hours is considered an unfair advantage for academic gain and is an honor code violation.
Permitted Resources on Graded Work
- Materials on the course website and any linked resources
- Instruction received from UTAs
- Official programming language documentation
- Online documentation for specific errors you encounter
The following are not permitted resources on coursework handed in for credit and are considered honor code violations:
- Asking for help on an assignment or assessment on GroupMe, or any other mobile or web application, groupchat, or forum.
- Talking about specific assignments with peers in the course or anyone outside the course with the exception of UTAs.
- Looking at someone else’s screen, whether in person or shared remotely, while working on a an assignment. Letting someone else look at or share your screen.
- Copying code found on any website or community such as StackOverflow, Github, Chegg, or CourseHero.
- Sharing or reusing code with any peer currently in the course or anyone who has previously taken the course.
When in doubt, ask me.
Tutors and Informal Help from COMP Friends
Tutors, tutoring organizations, and COMP friends are not allowed to help you with any assignments handed in for credit. They may help you with general course concept questions, however we encourage you to rely on TA assistance foremost.
Code Review Test
I reserve the right to, at any time, ask you to submit to a “code review” test with me or a head TA. We may ask you to meet to explain any line of code or decision made in your program that we deem suspicious or confusing. Thus, you should be able to comfortably explain why you (and you alone) wrote any single line of code in an assignment handed in for credit. Should you be unable to do so, your grade will be a zero for the assignment in question and you may be taken to honor court depending on the severity of the infraction.
Autograding and Resubmissions
Grades on programming assignments have two components: autograded points and manually graded points. You should take note of how many autograded vs. manually graded points there are ahead of submission. You are permitted, and encouraged, to resubmit your programming assignments as many times as you need in order to earn full credit on the autograded points of an assignment. There is no penalty for resubmission. The autograder will run and assign a score within a few minutes of submission. We will not go back and manually assign any credit for autograder points you failed to earn, so you can know and be aware of your autograded points upon submission. If you do not understand the error output of some autograded point deduction, please come see us in office hours!
Early submission of programming assignments
Programming assignments (exercises and projects) whose final submission is made 48 hours, or more, before their deadline will receive a 5% early hand-in bonus on the assignment’s autograded score. Submissions that fall within the early window of 24-48 hours before the deadline will receive a 3% early hand-in bonus. Submissions made within 24 hours of the deadline are not subject to any bonus. The early hand-in bonus does not apply to manually graded points on projects.
Regrade Requests
Regrade requests for quizzes and other manually graded assignments are open for 72 hours following the release of the grade. If you missed any of the points on a given assignment, you should review work as soon as grades are posted to be sure you understand why you missed something. This will help bring your understanding of concepts closer to comprehension faster. In the event we graded something improperly, select the specific question on gradescope and click the “Regrade Request” button at the bottom. If there are multiple questions, submit multiple requests one per question, rather than batching them together. Do not use regrade requests to ask why something is wrong, come work with us in tutoring or office hours to understand the problem at hand.
Late policies
All assignments, outside of assessments such as quizzes and the final exam, will have an 11:59pm deadline on their due date.
Lesson responses and programming exercises will all have deadlines and late periods. After the late period begins, there is a 1-hour grace period in which no penalty is applied. Beyond that grace period, the following policies apply:
Lesson and Challenge Question responses on Gradescope are assigned on lecture days (Tu/Th) and must be completed before 11:59pm the same day unless noted otherwise. If handed in after the 1-hour grace period described above, a 15% late penalty will be applied at the end of the semester. No lesson responses will be accepted beyond 11:59pm two days following the original deadline. To ensure fairness to everyone, as emergencies may arise, we will drop the three lowest lesson or challenge question response scores, including zeros.
Programming and reading assignments - submissions made after the deadline, outside of the 1-hour grace period described above, will have a 15% late penalty applied at the end of the semester. Exercises and projects cannot be handed in beyond their 6-day late period, which follows the original deadline. Update 11/21: The lowest exercise score, including a zero, will be dropped.
Late Point Forgiveness Insurance
As “insurance” against illness, computer crashes, sporting events, conflicts with other coursework, and waves arms around in the air life, every student in the course is automatically forgiven the following points worth of late penalties on assignments at the end of the term:
- Lessons and Challenge Questions: 60% (e.g. forgiven up to 4x late lesson penalties)
- Exercises: 30% (e.g. forgiven up to 2x late exercise penalties)
- Readings: 15% (e.g. foregiven up to 1x late reading assignment)
Like real insurance, there is no reward for not needing to use these points and you should try to avoid using them outside of unpredictable, emergency situations like a computer needing repair.
Grading Scale Breakdown
- A: 93-100
- A-: 90-92
- B+: 87-89
- B: 83-86
- B-: 80-82
- C+: 77-79
- C: 73-76
- C-: 70-72
- D: 60-69
- F: 59 or below
In cases of fractional points, grades will be rounded up if greater than 0.4999999999…
Course Schedule
See the course itinerary on the home page of the web site.
Feedback
If you have suggestions on how to improve the course or just want to leave some positive, encouraging feedback for the TAs or I, please give us feedback. If you make a suggestion we’re able to act on, while we still have time to, we’re more than happy to!
Title IX Resources
Any student who is impacted by discrimination, harassment, interpersonal (relationship) violence, sexual violence, sexual exploitation, or stalking is encouraged to seek resources on campus or in the community. Please contact the Director of Title IX Compliance (Adrienne Allison – Adrienne.allison@unc.edu), Report and Response Coordinators in the Equal Opportunity and Compliance Office (reportandresponse@unc.edu), Counseling and Psychological Services (confidential), or the Gender Violence Services Coordinators (gvsc@unc.edu; confidential) to discuss your specific needs. Additional resources are available at safe.unc.edu.
Counseling and Psychological Services
CAPS is strongly committed to addressing the mental health needs of a diverse student body through timely access to consultation and connection to clinically appropriate services, whether for short or long-term needs. Go to their website: https://caps.unc.edu/ or visit their facilities on the third floor of the Campus Health Services building for a walk-in evaluation to learn more. (source: Student Safety and Wellness Proposal for EPC, Sep 2018)
Disclaimer
The instructor reserves to right to make changes to the syllabus, including assignment due dates and quiz dates. These changes will be announced as early as possible.
Check the course site regularly for updates and announcements!