Syllabus

Course Overview

This course is an exciting and unusual approach to intertwining two different sets of topics in ways that the instructors believe will be synergistic.

On the one hand, we will use a set of assignments from the nand2tetris program to understand “how computers work” from the bottom-up. While aspects of the material overlap slightly with CSE 311, CSE 351, CSE 369, and even several 400-level CSE courses, most of it is complementary and a useful broad overview. By “lifting the cover up” on a computer, we hope this course demystifies computers in an empowering way. We will call this aspect of the course “bottom-up computing”, and while we explore this topic, we will also explore how computing interacts with and shapes our society.

On the other hand, we will focus on techniques and strategies for academic success in all computer science courses as well as UW courses broadly. We will work on various topics such as time management, test taking, annotation, testing and debugging software, and more. These topics are crucial. We take the view that they should be explicitly taught and explicitly learned, but this cannot happen without practice. We will call this aspect of the course “academic skill-building.” It is also related to metacognition, which means awareness and understanding of one's own thought processes.

As such, the two threads of the course are complementary. This is a graded course where you will need to complete the nand2tetris projects, take a midterm, etc., but you will also have regular assignments where you will apply and reflect on how you used the academic skill-building in accomplishing the bottom-up computing. At the highest level, the goal is to learn how computers work and have increased skills and confidence for tackling future UW and CSE courses. In addition to meeting weekly 1:1 with a TA, the small class size is aimed to give all students an extraordinarily supportive environment as we all work together to challenge ourselves and overcome hurdles.

For more specific course topics and deadlines, see the course calendar.

Prerequisites

Students must have completed CSE 143 and at least one CSE 300-level majors course, though we will not rely on material from any specific course directly.

Learning Objectives

By the end of the course, students will be able to:

Grading

Course grades will be calculated as follows:

Each project will include minimum requirements in order to receive a passing grade for that project. If the minimum requirements are met for each project, then you will be guaranteed to receive a passing grade in the course, even if the projects were submitted too late to receive credit (see also the Late Policy below).

1:1 Weekly Student-TA Meetings

As part of the course, every student in CSE 390B will be paired with a CSE 390B Teaching Assistant to meet once per week for a 45 minute 1:1 session. The purpose of these meetings are for students to check in and communicate with TAs about course projects, learning/study strategies, and any questions/comments/concerns in a tight-knit, supportive environment. The course staff hopes that these meetings will enable you to overcome technical hurdles and develop effective learning habits in a unique and effective manner.

These 1:1 sessions are a required and core component of the course. Students are expected to attend their weekly 1:1 Student-TA sessions each week on-time and ready to work. 1:1s will begin during Week 2 of the quarter with the meeting time determined by the student and TA’s availability for the quarter (more information about this will be announced in lecture). The following is a list of guidelines relating to 1:1 Student-TA session attendance and grading practices:

Contacting Course Staff

If you have questions related to the course material, projects, exams, etc., we encourage you to post those on the discussion board. This helps us organize and respond to questions better and potentially allows your classmates to have their similar questions answered (make sure to read the post about discussion board guidelines before using the board).

The course staff wants to help you navigate difficulties and achieve your goals this quarter. If you have more personal questions, concerns, or issues, please feel free to reach out to us (see the Home page for various ways to contact us). We also recognize that in certain situations you may feel more comfortable remaining anonymous. You can contact us anonymously using CSE’s anonymous feedback tool.

Inclusiveness

You should expect and demand to be treated by your classmates and the course staff with respect. You belong here, and we are here to help you learn and enjoy a challenging course. If any incident occurs that challenges this commitment to a supportive and inclusive environment, please let the instructor know so the issue can be addressed.

Our Virtual World

This is a new course that was piloted for the first time in Spring 2020. The instructors are excited and ask you to approach the course with flexibility and curiosity. Like almost all Spring 2021 classes, we will interact with you virtually, without coming to campus. We think most people would agree that this is not ideal, and hopefully we will be able to return to in-person classrooms in a not-too-distant future quarter.

We are going to make it work, and we want your help to make our course an interactive, meaningful experience where you get to know the course staff and your fellow students.

We also know you may face additional challenges during Spring 2021, which could include managing the technology to participate remotely, financial challenges from lost income, emotional challenges from social isolation, or the health of you or people close to you. Members of the course staff may have similar challenges. We are all in this together and this is a time for maximal flexibility and speaking up if challenges arise. CSE390B teaches techniques that should help with resilience in the face of challenges; we hope this course helps provide solutions in these difficult times, not more problems. See more resources for navigating these difficult times in the Student Wellness section below, and let the course staff know how we can help.

Student Wellness

Our priority is to support you as a human being, meaning your physical and mental health and well-being are more important than the course materials, assignments, deadlines, etc. We recognize that students are navigating more than just their academics and want to point out some of the different resources for support that are available to you:

Late Policy

If you are falling behind, please communicate with us early so we can help you! We may be able to do more in helping you get back on track if we know that you are having difficulties with keeping up early on vs. after the fact.

Academic Integrity

The following policy is intended to encourage you to get the most out of this class that you can. It is not intended to be a strict policing of your learning, and by no means should discourage you from collaborating with your peers (in the allowed ways) or asking for help.

The projects and midterm in this class are to be done individually. You may ask the course staff for help when you are stuck. You may, and are encouraged to, discuss your high-level approach with fellow students, but you should complete your work on your own and not show your completed work to other students.

You should not receive help beyond high-level review of course concepts from others not in the class (tutors, friends, etc.) nor from web searches. You should not search for or use any solutions to work in the class that you find online.

If you have any questions about what is allowed, we encourage you to reach out to us, but please do so in advance. Turning in work that is too similar to another student's or to information found online is unacceptable and will lead to a substantially lower grade and a formal report via the university mechanisms.

Accommodations

Please refer to university policies regarding disability accommodations or religious accommodations.

Texts

There is no textbook to buy. We will provide readings on the course calendar and list them all together on the course Resources page.