CS 257: Software Design

Spring 2017

Help

Samples

Class Notes

Thoughts on improving the course next time

Week 1

Two tools, a perspective, and a habit

Week 1.5

Start learning vim or emacs in a terminal. Every programmer should know how to use one or both of these venerable editors. They're both old, extremely widely available, and very powerful.

Week 2

Code quality, regex, and a visitor

Week 3

Using HTTP-based APIs. Getting started on the web application.

Week 4

Intro to usability. Implementing HTTP-based APIs. Getting started on databases.

Week 5

PostgreSQL from Python using psycopg2. Flask. HTML and CSS.

Week 6

Midterm break, HTML, CSS.

Weeks 7, 8

Usability. JavaFX. Design patterns.

Weeks 9, 10

MVC, final project, miscellaneous