COMP210 Data Structures and Analysis

https://www.cs.unc.edu/~kakiryan/teaching/summer-210.html

Summer 2024 – May 15 through June 22

General Course Info

Term: Summer Session 1 (May 15 through June 22)

Department: COMP

Course Number: 210

Section Number: 001

Credit Hours: 3

Instructor Info

Name: Kaki Ryan

Pronouns: She/Her

Office: FB 342

Email: kakiryan@cs.unc.edu

Office Hours: 10a-12p (UTAs), 2p-4p (Kaki)

Textbook and Resources

The course web page is the primary resource for this course. There is no textbook for COMP210. We will distribute occasional readings, reference material, and tutorials via the course website and e-mail announcements.

Course Description, Target Audience, and Prerequisites

This course will teach you how to organize the data used in computer programs so that manipulation of that data can be done efficiently on large problems and large data instances. Rather than learning to use the data structures found in the libraries of programming languages, you will e learning how those libraries are constructed, and why the items that are included in them are there (and why some are excluded).

This course is intended for people who already have some experience with programming althrough not necessarily in Java. We assume you have arleady learned the following basic programming concepts either in a formal course or via prior experience:

The target audience for this course includes students intending to major in computer science and students with some programming expeirence interested in developing a more formal approach to computer programming.

COMP 110 or an equivalent course in basic programming in high school or another institution is a prerequisite. Students with sufficient experience with programming as a hobbyist or in a work environment may also take the course.

Course Requirements

Student should attend all lectures and check the course web page for announcements and updates. Students will be required to complete about 15 programming assignments. There will also be one written assignment and one presentation incorporated as part of the course grade. Additionally, there will be 6 quizzes and a final exam.

Students should expect to spend 3-4 hours of work per day on reviewing course material and programming assignments; start early and ask questions.

Final Exam – June 22nd 8:00 - 11:00am

The course final is given in compliance with the UNC final exam regulations and according to the UNC Final Exam calendar. If you have a non-standard final exam that conflicts with COMP 210, per UNC policy the non-standard final exam must offer you an alternate time.

Key Dates

As stated above, the final exam will be held June 22nd from 8-11am per the official university schedule.

The dates for the 8 quizzes are:

The date(s) for in class presentations will be 6/17-18. Each student will be giving a 2 minute presentation on a computer scientist from a historically underrepresented group in tech in the US. See footnote 1 here: https://cs.unc.edu/about/dei/. We will discuss more!

There will be roughly three programming assignments due per week, due on Mondays, Wednesdays and Fridays at 11:59pm. Exact details will be posted on the course website!

There will be office hours available daily, in-person, from 9:30-11:30am, and from 2-4pm, M-F. The UTAs will be holding the morning office hours and Kaki will hold the afternoon office hours.

Grading Criteria

To do well in this course you must come to your own individual mastery of introductory programming concepts. Final grades are calculated with the following weights for each course component:

If, and only if, you take all six quizzes and your final examination score exceeds a quiz score, then we will replace up to two of the lowest quiz scores with your final exam score.

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.

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, projects, environment diagrams, 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 COMP 210 because Gradescope has built-in support for Stanford’s MOSS program (Measures of Software Similarity), as well as other machine learning techniques.

Permitted Resources on Graded Work

The following are not permitted resources on coursework handed in for credit and are considered honor code violations:

When in doubt, ask me!

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, 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!

Late policies

All assignments, outside of assessments such as quizzes and the final exam, will have an 11:59pm deadline as their due date.

I am happy to work with you and understand life happens. Please never be afraid to email me if you have any concerns or questions.

Grading Scale Breakdown

In cases of fractional points, grades will be rounded up if greater than 0.4599999999…

Course Schedule

See the home page of the website where I will try to keep the most up to date schedule!

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 https://forms.gle/NLfjNv14Qodj2hmAA. If you make a suggestion we’re able to act on, while we still have time to, we’re more than happy to!

Diversity Statement

I value the perspectives of individuals from all backgrounds reflecting the diversity of our students. I broadly define diversity to include race, gender identity, national origin, ethnicity, religion, social class, age, sexual orientation, political background, and physical and learning ability. I strive to make this classroom an inclusive space for all students. Please let me know if there is anything I can do to improve, I appreciate suggestions.

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.

Accessibility Resources and Services

The University of North Carolina at Chapel Hill facilitates the implementation of reasonable accommodations, including resources and services, for students with disabilities, chronic medical conditions, a temporary disability or pregnancy complications resulting in barriers to fully accessing University courses, programs and activities.

Accommodations are determined through the Office of Accessibility Resources and Service (ARS) for individuals with documented qualifying disabilities in accordance with applicable state and federal laws. See the ARS Website for contact information: https://ars.unc.edu or email ars@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)

Policy on Non-Discrimination

The University is committed to providing an inclusive and welcoming environment for all members of our community and to ensuring that educational and employment decisions are based on individuals’ abilities and qualifications. Consistent with this principle and applicable laws, the University’s Policy Statement on Non-Discrimination offers access to its educational programs and activities as well as employment terms and conditions without respect to race, color, gender, national origin, age, religion, creed, genetic information, disability, veteran’s status, sexual orientation, gender identity or gender expression. Such a policy ensures that only relevant factors are considered and that equitable and consistent standards of conduct and performance are applied. If you are experiencing harassment or discrimination, you can seek assistance and file a report through the Report and Response Coordinators (see contact info at safe.unc.edu) or the Equal Opportunity and Compliance Office, or online to the EOC at https://eoc.unc.edu/report-an-incident/.

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.