Course Information

Teaching Staff

Instructor: Andrew S. Fitz Gibbon (asfg@cs.washington.edu) - aka Fitz

Registration Questions: CSE Advisors (ugrad-advisor@cs.washington.edu)

Course Staff and Support Hours: Course Staff and Office Hours

Class Session Meeting

See Class Sessions for information on how each day of class will be run.

Prerequisites

There are no prerequisites to this course other than high school math. We assume that you are familiar with basic computer usage (running applications, editing documents, etc).

This course does not assume any previous programming experience. If you have taken CSE 143 or CSE 123, you will not receive credit for taking CSE 160. For those who have taken 142 or have had some experience with programming, CSE 163 may be a better class choice.

Course Goals

The world has become data-driven. Domain scientists and industry increasingly rely on data analysis to drive innovation and discovery; this reliance on data is not only restricted to science or business, but also is crucial to those in government, public policy, and those wanting to be informed citizens. As the size of data continues to grow, everyone will need to use powerful tools to work with that data.

CSE 160 is an introductory programming class that meets this need. You will learn to write small programs in Python to solve real-world problems in science, engineering, business, and other fields. This will be useful in your classes, research, and jobs.

In this course:

  1. You will learn computational problem-solving. If given a data source and problem description, you will be able to write a complete, useful program to solve the problem.
  2. You will learn Python, a popular and general-purpose programming languages that includes libraries for data manipulation, scientific computing, and visualization.
  3. Assignments will use real datasets from fields such as biology, government, social networks, and more.

Course Components

Grading Scale

Your percentage grade in this course will be weighted using these categories:

Category Weight
Programming Homework 60%
Midterm 15%
Final 20%
Participation 5%
Total 100%

Programming Assignments

You will complete approximately six programming homework assignments. There are often some written questions on each assignment as well as a survey that must be filled out as well.

We urge you in the strongest possible terms to get started on your assignments early. This approach will take you much less time overall than if you try to do all the work at once at the last minute. An efficient approach is to start work, then take a break when needed. This lets your subconscious continue to work on the problem, or enables you to return to it with a fresh perspective and renewed energy. Furthermore, you will be able to ask for and receive help.

Exams

The exam grade will be determined by a midterm and a final exam. The final will count a bit more than the midterm exam. Both exams will be held in person.

  • The midterm exam will be Wed, April 26 at 2:30 - 3:20 PM in CSE2 G20
  • The final exam will be Tue, June 6 at 2:30 – 4:20 PM in CSE2 G20

Participation

Your participation grade includes check-ins (online questions and programming exercises), homework surveys, as well as other course activities. In-person attendance at lectures or section will not be required for the participation grade.

Regrade Requests

We are human too and sometimes miss things while grading. To mitigate this, we allow regrade requests, starting 24 hours after the grade has been released and for the following week. Regrade requests will happen through Gradescope, on the assignment in question. A regrade request is not the place for questions such as “I don’t understand why I lost this point” (for that, see the Ed Discussion board and Getting Help). To be eligible for points back from a regrade request, the request must:

  • Be applied to the question or rubric item that you want reexamined.
  • Concisely explain why your work is correct or meets the criteria, referencing specific lines of code where appropriate.
  • Demonstrate understanding of why the point(s) may have been deducted in the first place.

Note that in addressing a regrade request, we will reexamine the entire assignment, which may result in additional point changes unrelated to the request. And, a well-formed regrade request is not a guarantee of returned points.

Course Grades

A very common question students ask is: “Is this class curved?” Curving is the process of assigning course grades so that there is fixed, pre-determined mean or median. We do not curve in this course!

Instead, we will assign course grades using a bucket system: if you earn at least the percentage specified in the left column, your course grade will be at least the grade listed on the right. These are minimum guarantees: your course grade could be (and in the past, tends to be) higher than what this table suggests. However, we cannot make any guarantees of the course grades within these buckets.

Percent Earned Course Grade
95 3.5
85 3.0
75 2.5
65 2.0
50 0.7

If you have a specific goal in your course grade, please feel free to reach out to the course staff or directly to the instructor. We can work together to talk about what you can expect in terms of meeting that goal.

Course Tools

This quarter, we will use a number of different tools in CSE 160. Reach out to the course staff if you have questions about using any of them. Please see the Course Tools page for more information about the particular tools we will use this quarter and our policies surrounding them.

Class Sessions and Quiz Sections

Class Sessions

Sickness

If you are sick, stay home! Reducing the spread of COVID and other illnesses is paramount to maintaining a healthy community. See all the resources outlined below for you get caught-up on missed live sessions. Attendance will not be taken and lectures will be recorded, so you will not be penalized for staying home to keep our community safe.

Please see more on our COVID Safety page.

Attendance Options

Class sessions will be hosted in person. Most class days will be composed mostly of lecture on a Python concept intermixed with time for group work and discussing the problems as a whole class. The class sessions will be recorded so students who cannot attend can view them later.

Quiz Sections

Quiz sections are smaller, TA-run sessions where students work in groups on practice problems and review concepts from the week. Quiz sections meet on Thursdays according to the time you registered for. Like with class sessions, there is no attendance requirement, but you are expected to attend to keep up with the course material (assuming you are not sick!).

It is possible to attend a different section than the one you are registered for. You will need to ask permission from the TA of the quiz section you want to attend, since they might be planning for a fixed number of students or might not have capacity to safely sit all students in the class. You can find the TA assignments on the Course Staff page.

Attendance Options

In-person quiz sections will not be recorded. Instead, the course staff will post all materials used in section on the course website and may post helpful videos covering some of the topics covered in section that day.

Resubmissions and Late Work

Revision and Resubmission

Learning from mistakes is an important part of mastering any skill, especially for novices. To enable this, you are allowed to revise and resubmit your work on projects to demonstrate improved mastery after your initial submission. Resubmissions are subject to the following rules:

  • A maximum of one homework can be resubmitted each week and there will be 8 weeks in total where you will be eligible to make a resubmission after receiving feedback from your TA.
  • If you have already made a submission to a homework, you may not make a resubmission until you have received feedback on your previous submission of that homework. (Generally one week after the due date.)
  • Resubmissions must be accompanied by a short write-up describing the changes made. This will both support you in being deliberate about the changes you make and ease grading of resubmissions by making the changes clear.
  • An assignment that has been found to involve academic misconduct may not be resubmitted (see below).

Resubmissions will be graded and the new grades will fully replace the previous grades. The new grade will be based entirely on the resubmitted work, meaning that your grades may go down when resubmitting. In addition, while every effort is made to identify all areas that could be improved when grading, feedback is not guaranteed to be exhaustive. Be sure to consult all available resources and materials to ensure your work meets all guidelines.

Only homeworks may be resubmitted. Gradescope exercises are autograded and are graded on completing them correctly and the midterm and final exams are designed to evaluate your progress in the course.

Additional details on how to resubmit will be posted at the bottom of the Homeworks page.

Late Work

For coding projects, late work is generally not accepted. However, if you are unable to turn in an assignment by its initial submission, you will be able to use one of your weekly resubmissions in future weeks to turn in the assignment. Remember, you may only make one resubmission a week, so using a resubmission to turn in an assignment you missed earlier means you will be able to make fewer resubmissions. This means it benefits you the most to try your best to turn in as much of your work as possible before the initial submission date, so you can get feedback on that and iterate on it in a future resubmission, rather than using that resubmission to get your first piece of feedback on that assignment.

Participation exercises and the midterm/final cannot be submitted late.

Please see the policy on Extenuating Circumstances for more information.

Getting Help from Staff & Peers

Having questions or getting stuck on something is entirely expected in the learning process. If you find something challenging with your studies, that is a sign you are learning! Learning is not something that you need to do alone though! In fact, connecting with your peers or asking a member of the course staff for help can add extreme depth to your knowledge.

If you have a general question that other students could potentially benefit from, considering posting on Ed! On Ed, you can also set your questions to private or anonymous as you see appropriate.

We are often available at other times by appointment, and we encourage you to schedule 1:1 appointments whenever you want to talk about concepts, grades, or anything else.

Ed Tips

  • If you are asking a general question about the course logistics or content, you can make a public post. This way other students can benefit from seeing your question, and you can even answer each other’s questions to share your perspectives!
    • If you want, you can choose to post anonymously so that other students in the course can’t see your name. Note that anonymous posting does not hide your identity from the course staff.
  • You’re encouraged to answer each other’s questions as well! Explaining a topic to someone else (even on a discussion board) is a great way to help you better understand the material The course staff will still look over student answers and can nicely point out some misconception if there is one so that everyone benefits.
  • If you have a question that’s pretty specific to your homework solution, or, is about some personal details that you would not want to share with the class (e.g., DRS accommodations), you can make a private post on Ed that is only visible to the course staff. This way, any member of the staff can respond to get you the help you need!
  • For sensitive matters that you only want to discuss with Fitz, you can instead email Fitz if that makes you feel more comfortable. Note that the response time for Fitz’s email is longer than posting on the Ed board.

Course Climate

Extenuating Circumstances: “Don’t Suffer in Silence”

We recognize that our students come from varied backgrounds and can have widely-varying circumstances. We also acknowledge that the incredibly unusual circumstances of this particular quarter may bring unique challenges. If you have any unforeseen circumstances that arise during the course, please do not hesitate to contact the course staff or the instructor to discuss your situation. The sooner we are made aware, the more easily we can provide accommodations.

Typically, extenuating circumstances include work-school balance, familial responsibilities, health concerns, or anything else beyond your control that may negatively impact your performance in the class. Additionally, while some amount of “productive struggle” is healthy for learning, you should ask the course staff for help if you have been stuck on an issue for a very long time.

Life happens! While our focus is providing an excellent educational environment, our course does not exist in a vacuum. Our ultimate goal as a course staff is to provide you with the ability to be successful, and we encourage you to work with us to make that happen.

Disabilities

Your experience in this class should not be affected by any disabilities that you may have. The Disability Resources for Students (DRS) office can help you establish accommodations with the course staff.

DRS Instructions for Students

If you have already established accommodations with DRS, please communicate your approved accommodations to the lecturers at your earliest convenience so we can discuss your needs in this course.

If you have not yet established services through DRS, but have a temporary health condition or permanent disability that requires accommodations (conditions include but not limited to; mental health, attention-related, learning, vision, hearing, physical or health impacts), you are welcome to contact DRS. DRS offers resources and coordinates reasonable accommodations for students with disabilities and/or temporary health conditions.

Reasonable accommodations are established through an interactive process between you, your lecturer(s) and DRS. It is the policy and practice of the University of Washington to create inclusive and accessible learning environments consistent with federal and state law.

Religious Accommodations

Washington state law requires that UW develop a policy for accommodation of student absences or significant hardship due to reasons of faith or conscience, or for organized religious activities. The UW‘s policy, including more information about how to request an accommodation, is available at Religious Accommodations Policy. Accommodations must be requested within the first two weeks of this course using the Religious Accommodations Request form.

Inclusion

All students are welcome in CSE 160 and are entitled to be treated respectfully by both classmates and the course staff. We strive to create a challenging but inclusive environment that is conducive to learning for all students. If at any time you feel that you are not experiencing an inclusive environment, or you are made to feel uncomfortable, disrespected, or excluded, please report the incident so that we may address the issue and maintain a supportive and inclusive learning environment. You may contact the course staff or the CSE academic advisors to express your concerns. Should you feel uncomfortable bringing up an issue with a staff member directly, you may also consider sending anonymous feedback or contacting the UW Office of the Ombud.

Academic Honesty and Collaboration

Philosophy

Learning is a collaborative process, and everyone benefits from working with others when learning new concepts and skills. In general, we encourage you to collaborate with your classmates in your learning and take advantage of each others’ experience, understanding, and perspectives.

However, there is a difference between learning collaboratively and submitting work that is not your own. This can be a subtle but important distinction. Ultimately, the goal of the course is to ensure that every student masters the material and develops the skills to succeed in future courses, projects, and other related work. Submitting work that is not your own, or allowing another student to submit your work as their own, does not contribute toward developing mastery. In addition, this deprives you of the ability to receive feedback and support from the course staff in addressing the areas in which you are struggling.

For more information, consult the Allen School policy on academic misconduct.

Permitted and Prohibited Actions

Sometimes the line between productive collaboration and academic dishonesty can be a little ambiguous. The following is a partial list of collaborative actions that are encouraged and prohibited. This list is not intended to be exhaustive; there are many actions not included that may fall under either heading. This list is here to help you understand examples of things that are/aren’t allowed. If you are ever unsure, please ask the course staff before potentially acting in a way that violates this policy.

Encouraged

The following types of collaboration are encouraged:

• Discussing the content of lectures, lessons, sections, or any provided examples.

• Working collaboratively on solutions to practice problems or checkpoints.

• Posting and responding to questions on the course message board, including responding to questions from other students (without providing assessment code; see below).

• Describing, either verbally or in text, your approach to a project at a high-level and in such a way that the person receiving the description cannot reliably reproduce your exact work. Such description should be in English or another natural human language (i.e., not code).

• Asking a member of the course staff about concepts with which you are struggling or bugs in your work.

Prohibited

The following types of collaboration are prohibited and may constitute academic misconduct:

• Looking at another person’s submission on a project, or substantially similar code, at any point, in any form, for any reason, and for any amount of time. This restriction includes work written by classmates, family members or friends, former students, online resources (such as GitHub, Chegg, StackOverflow), among other sources.

• Showing or providing your submission on a project to another student at any time, in any format, for any reason. This includes posting your work publicly on the internet.

• Submitting work that contains code copied from another resource, even with edits or changes, except for resources explicitly provided by the course staff.

• Having another person “walk you through” work you submit, or walking another person through work they submit, such that the work produced can be entirely and reliably reconstructed from the instructions provided. (That is, submitting work that you produced simply by following instructions on what to write.) This restriction includes classmates, former students, family members or friends, paid tutors or consultants, “homework support” services (such as Chegg), etc.

• Using AI-assisted tools to write your code. This includes GitHub Copilot, ChatGPT, OpenAI Codex, and other similar tools and services.

If you discuss an assignment with one or more classmates, you must specify with whom you collaborated in the header comment in your submission. You may discuss with as many classmates as you like, but you must cite all of them in your work. Note that you may not collaborate in a way that is prohibited, even if you cite the collaboration.

Instead of utilizing forbidden resources, we hope you will submit whatever work you have, even if it is not yet complete, so you can get feedback and revise your work later. If you are ever in doubt if a collaboration or resources is permitted or not, please contact a member of the course staff.

Penalty

Any submission found to be in violation of this policy will receive a grade of 0.0, as we are unable to assess your mastery from work that is not your own. In addition, students will forfeit the ability to resubmit work that is found to be in violation. Repeated or egregious violations of the policy will be forwarded to a relevant university committee for further action. There will be no exceptions or modifications to these penalities.