Link Search Menu Expand Document

Syllabus šŸ“–

Table of contents

  1. About šŸ§
  2. Communication šŸ’¬
  3. Technology šŸ–„
  4. Course Structure šŸŽ
    1. Lecture (2%)
    2. Discussion (3%)
    3. Readings (5%)
    4. Labs (10%)
    5. Final Project (10%)
    6. Homeworks (20%)
    7. Exams (50%)
      1. Redemption Policy
    8. Bootcamp
  5. Office Hours
  6. Policies āœļø
    1. Grading
    2. Regrade Requests
    3. A Note on Letter Grades
  7. COLLABORATION POLICY AND ACADEMIC INTEGRITY āš ļøā—
  8. Support šŸ«‚
    1. Accommodations
    2. Diversity and Inclusion

About šŸ§

Welcome to DSC 20! This class will be different compared to DSC 10, so letā€™s work together in order to make sure that the transition is as smooth as possible.Ā 

Do not worry if something does not work right away or you feel lost! We are here to help and guide you through the process. Here is a video about syllabus!


Communication šŸ’¬

This quarter, weā€™ll be using Piazza as our course message board. You will be added to Piazza automatically; email Marina ASAP if youā€™re not able to access it, as weā€™ll be making all course announcements through it.

If you have a question about anything to do with the course ā€” if youā€™re stuck on a assignment problem, want clarification on the logistics, or just have a general question about data science ā€” you can make a post on Piazza. We only ask that if your question includes some or all of your code, please make your post private so that others cannot see it. You can also post anonymously if you would prefer.

Course staff will regularly check Piazza and try to answer any questions that you have. Youā€™re also encouraged to answer a question asked by another student if you feel that you know the answer!


Technology šŸ–„

We will be using several websites this quarter. Hereā€™s what theyā€™re all used for:

  • Course Website: where all content will be posted.
  • Piazza: discussion forum where all announcements will be sent, and where all student-staff and student-student communication will occur. You should be automatically added to Piazza; let us know if thatā€™s not the case.
  • Gradescope: where all assignments are submitted and all grades live. You should be automatically added to Gradescope; let us know if thatā€™s not the case.
  • Canvas: where all of the reading quizzes and discussion quizzes will be posted.
  • Slido: where all lecture participations will be recorded and counted.
  • Autograder: where all OH tickets will be created and solved.

If you will not have reliable access to a computer this quarter, please reach out to us ASAP, as the university may be able to accommodate you.


Course Structure šŸŽ

Lecture (2%)

The course plans to offer in-person lectures this quarter. You are expected to attend the lectures in-person to earn the course participation credit.

You will demonstrate the lecture participation by engaging with frequent in-class polls. The course will be using the poll software sli.do, and as long as you respond to 75% of the questions during a lecture you will earn the point for the day. Participation points may not be made up, but 6 lowest can be dropped.

The first class does not count toward your participation.

You have two weeks worth of classes that you can miss without penalty throughout the quarter (i.e. 6 lectures). Does not have to be consecutive.

How does it work:

  • During class we will have many questions that require your participation by answering questions using either your phone or computer. Before each class you need to join the session with your UCSD email in order to register your vote. The code will be shown to you at the beginning of each lecture.

  • Participation scores will be posted periodically to Canvas. You must resolve all issues by the end of Week 1. Failure to ensure that you are getting your participation credit before then will result in a 0 for the days that you have not received credit.

  • You must bring your phone or computer to every class. Forgetting it counts as missing a class.

Discussion (3%)

We expect that students in this class will have a wide range of backgrounds and relevant experience. If you find that the class is moving fast, and especially if you are new to programming, you will benefit from taking advantage of the opportunity to attend discussion section and catch up on the material that goes by too fast. Even if you are following along well in class, discussion section allows you the opportunity to practice the skills learned in lecture and develop your expertise.

You will be given a discussion quiz on Canvas after each discussion. Deadline is Sunday midnight for the week.

1 lowest quiz will be dropped.

Readings (5%)

To prepare you for class sections, there will be readings and/or video watching assignments to be completed before each class section. This reading is required and the reading quiz will be assign for each class (except midterms and holidays).

Reading quizzes will be done online via Canvas. You will have 3 attempts and the best one will be chosen. Deadline is 8:30am before each class.

3 lowest grades will be dropped.

Labs (10%)

Weekly labs are a required part of the course and will help you develop fluency in Python 3. The labs are designed to help you build the skills you need to complete homework assignments and projects. Labs will usually be released on Sunday afternoon and due by Thursdays 11:59 pm. Each person must submit each lab independently.

This category is capped at 100%. It means if your score is above maximum possible it will be capped.

Deadlines and Late Submissions:

  • Labs must be submitted by the midnight (11:59pm) deadline to be considered on time.

  • You may turn them in as many times as you like before the deadline, and only the most recent submission will be graded, so itā€™s a good habit to submit early and often.

  • Late lab submissions will NOT be accepted.

  • We will drop your 1 lowest lab score to accomodate potential technical issues. Please do not ask for any exception unless you have medical emergency (document required).

Final Project (10%)

This category is capped at 100%.

Deadlines and late submissions are the same as homework assignments.

Homeworks (20%)

This class will have weekly homework assignments, which will usually be due to Gradescope on Mondays at 11:59pm. We will aim to release homework assignments one week before when it is due.

All homework must be submitted.

  • Total for all homework is capped at 100%, It means if your total score is above maximum possible of the homework category (at the end of the quarter), it will be capped to 100%.

  • One of the lowest homework assignments will be dropped.

Deadlines and Late Submissions:

  • Homework assignments must be submitted by the 11:59 pm deadline listed on the write-up to be considered on time. You may turn them in as many times as you like before the deadline, but only the most recent submission will be graded, so itā€™s a good habit to submit early and often.

  • You are allowed to turn in an assignment (homework and/or the project) up to 24 hours after the deadline with 20% penalty.

  • Assignments submitted between 24 and 48 hours after the deadline will receive 50% credit.

  • Assignments submitted more than 48 hours after the deadline will receive 0% credit.

Exams (50%)

There will be three exams this quarter:

  • Midterm 1 (10%): April 22 (Friday), during the lecture, in person
  • Midterm 2 (10%): May 13 (Friday), during the lecture, in person
  • Final (30%): June 08 (Wednesday), 8am-11am, in person

This category is also capped at 100%.

Redemption Policy

Final will be split into 3 parts: midterm1, midterm2, and new material. We offer midterm redemption opportunities only for those who have taken both midterm exams. You could replace your midterm score (not the final exam part) with the score you earn for the counterpart on the final exam (i.e. maximum between midterm1 score (%) and final-part1 (%), maximum between midterm2 score (%) and final-part2 (%) ). If you simply miss a midterm, you are NOT eligible for this redemption policy.

  • You canā€™t skip any part of the final regardless of your midterms score. The entire exam needs to be taken.

  • You must score at least 55% on the final exam to pass the course. If you score lower than 55% on the final, you will receive an F in the course, regardless of your overall average.

See Resources for practice exams. All times and content are subject to change.

Bootcamp

Bootcamp is a required part of the course and is meant to be an onboarding process for the course to help familiarize students with Python concepts and common coding practices. Bootcamp will not be graded but you need to pass autograder in order to receive grades for homework. Bootcamp will due by Sunday 11:59 pm. Each person must submit each bootcamp individually.


Office Hours

To get help on assignments and concepts, course staff will be hosting several office hours per week. Some of these will be held remotely and some will be held in person. See the Calendar tab of the course website for the most up-to-date schedule and instructions.


Policies āœļø

Grading

Hereā€™s how we will compute your grade.

ComponentWeightNotes
Reading Quizzes5%drop 3 lowest
Discussion Quizzes3%drop 1 lowest
Lecture Partcipation2%drop 6 lowest
Homework20%drop 1 lowest
Lab10%drop 1 lowest
Final Project10%only assignments to work in pairs
Midterm 110%see the Redemption Policy above
Midterm 210%see the Redemption Policy above
Final Exam30%must score > 55% to pass

See below for information on drops.

Regrade Requests

You can ask for a regrade on homework, final project, and the exams if you believe that the grader made a mistake. Remember that clarity is a part of your score ā€” if you had the right idea but were unable to clearly communicate it, you may still not deserve full credit. We ask that you please submit your regrade requests directly on Gradescope within 4 days of the assignment grade being released. After that, all grades are set in stone!

Regrade Policies

Autograded Part:

  • Homework 1:

    • Compile Error: 5 points off

    • Print vs. Return Issues: 25% points off of the question

    • File Name Error: 5 points off

  • Future Homework:

    • 5 points off per line change

    • Print vs. Return Issues: No points taking back if the write-up explicitly says return or print.

    • File Name Error: 10 points off

  • Projects

    • Regrade is possible in this case if the logic of your code is mostly correct, but a few corner cases are missing. The correction of missing corner cases should not involve in changing the logic of your original code. Then we will take 20% off from the points you got from regrade. For example, if your score was 40 and after fixing trivial mistake you got 90, we will take (90 - 40) * 20% = 10 pts off from your new score 90. The penalty here is for not testing the output of your comprehensively.

    • One method is wrong causing all other methods to fail autograder tests: If all your other methods are correct, but they are dependent on an incorrect method, which cause all of them fail autograder tests. After you tell us how to fix that particular method and rerun autograder, you will lose all the points for that particular method and 20% of the other methods that you get points back from.

Sample regrade request:

Hi, in my hw01, I have accidentally used print() instead of return in my Question 1. I believe it should count as a ā€œPrint vs. Return Issuesā€ on the syllabus so that I would like to request a regrade and receive 25% off.
TODO: please change my line 20ā€™s print(result) to return result.
Thanks!

A Note on Letter Grades

We will use a standard scale for assigning letter grades:

Final Grade PercentageFinal Letter Grade
[90% , 100%]Some kind of A
[80% , 90%)Some kind of B
[70% , 80%)Some kind of C
[60% , 70%)D
[0% , 60%)F

Plus and minus cutoffs will be determined at the instructorā€™s discretion.


COLLABORATION POLICY AND ACADEMIC INTEGRITY āš ļøā—

The basic rule for DSC 20 is: Work hard. Make use of the expertise of the staff to learn what you need to know to really do well in the course. Act with integrity, and donā€™t cheat.

If you do cheat, we will enforce the UCSD Policy on Integrity of Scholarship. This means: You will fail the course, no matter how small the affected assignment, and the Dean of your college will put you on probation or suspend or dismiss you from UCSD.

Why is academic integrity important? Academic integrity is an issue that should be important to all students on campus. When students act unethically by copying someoneā€™s work, taking an exam for someone else, plagiarizing, etc., these students are misrepresenting their academic abilities. This makes it impossible for instructors to give grades and for the University to give degrees that reflect student knowledge. This devalues the worth of a UCSD degree for all students, making it important for the entire campus to band together and enforce that all members of this community are honest and ethical. We want your degree to be meaningful and we want you to be proud to call yourself a graduate of UCSD!

The Jacobs School of Engineering Code of Academic Integrity, the UCSD Policy on Integrity of Scholarship and this syllabus list some of the standards by which you are expected to complete your academic work, but your good ethical judgment (or asking us for advice) is also expected as we cannot list every behavior that is unethical or not in the spirit of academic integrity. Ignorance of the rules will not excuse you from any violations.

What counts as cheating?

In DSC 20, you can read books, surf the web, talk to your friends and the DSC 20 staff to get help understanding the concepts you need to know to complete your assignments. However, all code must be written by you, together with your partner if you choose to have one (when allowed). Note that a partner is allowed only when we explicitly say that groupwork is allowed for a particular assignment. Most assignments in this course must be completed individually.

The following activities are considered cheating and ARE NOT ALLOWED in DSC 20 (This is not an exhaustive list):

  • Using or submitting code acquired from other students (except your partner, where allowed), the web, or any other resource not officially sanctioned by this course

  • Having any other student complete any part of your assignment on your behalf

  • Acquiring exam questions or answers prior to taking an exam

  • Completing an assignment on behalf of someone else

  • Using someone elseā€™s clicker for them to earn them credit or giving your clicker to someone else so that they can participate for you to earn credit

  • Providing code, exam questions, or solutions to any other student in the course

  • Using any external resource on closed-book exams

  • The following activities are examples of appropriate collaboration and ARE ALLOWED in DSC 20:

  • Discussing the general approach to solving homework problems or a final project (when given)

  • Talking about debugging strategies or debugging issues you ran into and how you solved them

  • Discussing the answers to exams with other students who have already taken the exam after the exam is complete

  • Using code provided in class, by the textbook or any other assigned reading or video, with attribution

  • Google searching for documentation on Python

How can I be sure that my actions are NOT considered cheating?

To ensure that you donā€™t encounter any problems, here are some suggestions for completing your work.

  • Donā€™t look at or discuss the details of another studentā€™s code for an assignment you are working on, and donā€™t let another student look at your code.

  • Donā€™t start with someone elseā€™s code and make changes to it, or in any way share code with other students.

  • If you are talking to another student about an assignment, donā€™t take notes, and wait an hour afterward before you write any code.

Note: in the discussion above, we are talking about other students that are not your pair programming partner. See the pair programming guidelines for information on working with a partner.

Remember, Academic Integrity is about doing your part to act with Honesty, Trust, Fairness, Respect, Responsibility and Courage.


Support šŸ«‚

Accommodations

Students requesting accommodations for this course due to a disability or current functional limitation must provide a current Authorization for Accommodation (AFA) letter issued by the Office for Students with Disabilities (OSD). This AFA letter should be shared with the instructor and the Data Science OSD Liaison, who can be reached at dscstudent@ucsd.edu. Please contact us by the end of Week 3 to make sure we can arrange accommodations as needed.

Diversity and Inclusion

We are committed to creating an inclusive learning environment in which individual differences are respected and all students feel comfortable. If you have any suggestions as to how we could create a more inclusive setting, please let us know. We also expect that you, as a student in this course, will honor and respect your classmates, abiding by the UCSD Principles of Community. Please understand that othersā€™ backgrounds, perspectives and experiences may be different than your own, and help us to build an environment where everyone is respected and able to thrive.