- Graduated Undergrad in 2009
- Spent ~15 years in "Big Tech" software jobs
- Concurrently, started teaching with UW CSE in 2019. First year with the iSchool!
- Two cats and a dog!
You're in one of three lectures for the course!
You may notice that some things are different or change throughout the quarter. For example, most of the readings and watchings are from past iterations of the course!
Project Proposal
Draft 1 (Static Mockup)
Draft 2 (React)
Final Version
We will also provide accommodations for illnesses/etc.
I hereby authorize you to seek help learning from others...
... and to help others learn in return.
You are expected to develop projects by yourself, from scratch. Using pre-written examples or code from the internet or an AI will not be sufficient to earn credit.
You will not earn credit for code you do not write yourself.
While the task maybe to implement a program, the work you need to do for this class is to learn the material. AI can help you with the task, it cannot help you with the work.
recognition != recall
❌ Don't use AI tools for problem sets
✅ Use AI tools to support (but not do) your project work
Required: cite your usage of these tools:
For full details, see the syllabus on Canvas.
npm install -g PACKAGE_NAME
install command line programs for use anywhere on the computer (globally)
Or can use npx
PACKAGE_NAME
to download and run without
installing
npm install PACKAGE_NAME
package.json
file as a project dependency.npm install
package.json
listed dependencies for a project.We'll see this in action with the first problem set.
Exercises contain test suites that you can use to check your work. Run these tests using the Jest test framework:
Install the problem set's dependencies:
# from within the problem set directory
npm install
(Optional) Install jest globally
npm install -g jest
Run the tests
# Run only "problem-a"'s tests
jest problem-a
# Run ALL tests
jest
PASS problem-a/problem.spec.js
Source code is valid
✓ HTML validates without errors (5 ms)
✓ CSS validates without errors (80 ms)
Has required HTML
✓ Specifies charset (2 ms)
✓ Includes page title
✓ Includes author metadata
...
Test Suites: 1 passed, 1 total
Tests: 17 passed, 17 total
Snapshots: 0 total
Time: 0.632 s
Ran all test suites.
Problem solve in the browser
Use jest
for checking work
Problem Set repositories are set up to automatically run the Jest grader when pushed to GitHub.
Failed tests:
In Progress:
Successful Test:
GitHub checks per commit, on the entire repo--not on individual problem folders. You will only see the green check when the