Computer Science Principles

Univ of Washington CSE

MWF 12:30-1:20pm, Sieg 134

Computer Science Principles

Univ of Washington CSE

MWF 12:30-1:20pm, Sieg 134


Course Schedule

Week Date Lecture Topic Labs Reading (Thu) Assignments
1 3/27 M Introduction, Abstraction
3/29 W Lightbot and Functions
3/31 F Binary
2 4/3 M Processing Introduction
4/5 W Variables and Datatypes
4/7 F Functions in Processing
3 4/10 M Expressions and Control Flow
4/12 W Basic Input and Output
4/14 F Algorithms
4 4/17 M Nested Loops & Arrays
4/19 W Algorithmic Complexity
4/21 F The Internet
5 4/24 M Computers
4/26 W Midterm
4/28 F Privacy
6 5/1 M Recursion I
5/3 W Recursion II
5/5 F Proofs and Computation [Adam Blank]
7 5/8 M Mid-Quarter Review
5/10 W Puzzle App I
5/12 F Security [Franziska Roesner]
8 5/15 M Animation [Barbara Mones]
5/17 W Puzzle App II
5/19 F Artificial Intelligence
9 5/22 M Digital Distribution
  • Project Work (n/a)
5/24 W Computing in the Developing World [Ruth Anderson]
5/26 F Big Data [Magdalena Balazinska]
10 5/29 M Memorial Day Holiday
  • Project Work (n/a)
5/31 W Social Implications of Computing
  • Project Work (n/a)
6/2 F Course Wrap-Up

Course Staff

Click staff photos for mini-biographies!


Justin Hsia (jhsia@cs)
OH: Tue 1-2pm
Wed 3:30-4:30pm
Fri 1:30-2:30pm
or by appointment

Teaching Assistants

Anupam Gupta (anupamg@uw)
OH: Mon 1:30-2:30pm
Fri 10:30-11:30am

Eugene Oh (eo28@uw)
OH: Thu 5:30-6:30pm
Wed 11am-12pm

Braydon Hall (braydonh@uw)
OH: Tue 9:50-10:50am
Fri 2:30-3:30pm

Savanna Yee (savannay@uw)
OH: Mon 2:30-3:30pm
Wed 4:30-5:30pm


Outside of lectures and sections, there are a few ways to ask questions or discuss course issues:

  1. Visit office hours! If you need extra time or need to discuss something in private, feel free to email and make an appointment.
  2. Make a public post about course content on the discussion forum, where they benefit the whole class. This also allows other students to answer your question so you can receive a faster response.
  3. Make a private post to just the course staff on Piazza with any questions or issues that you would prefer to discuss privately. While you can email staff members individually when that makes sense, contacting the whole staff is preferred to get a faster response and to let us see what issues students are having.
  4. Send anonymous feedback to the course staff. The instructor will address the issue and share it with others only as appropriate, but will not have a way to reply to you without addressing the whole class.


Program Installs:  (Processing)  (Brackets)  (Cyberduck)
Processing:  (reference)  (tutorials)  (examples)  (videos)  (community examples)
Processing:  (drawing cheatsheet)
Online Textbooks:  (Blown to Bits)  (Getting Started with Processing 2nd Ed)
Your Website:  (initial setup)  (HTML Source)
Your Website:  (adding Processing projects)  (p5.js converter)  (p5.js reference)
Project Video:  (recording software)

CC license - BY, NC, SA This course content is offered under a CC Attribution Non-Commercial Share Alike license. Content in this course can be considered under this license unless otherwise noted.