CS 169 (Software Engineering), UC Berkeley
Course Sites — (bCourses) (Piazza) (Codio) (Textbook PDF)
Module 1 — Introduction to SaaS, Agile, and Cloud Computing
Module 2 — How to Learn a New Language: Ruby —
(slides)
(worksheet)
(solutions)
(code)
Module 3 — SaaS Architecture
—
(slides)
(worksheet)
(solutions)
(code)
Module 4 — Introduction to MVC and Rails
Sinatra: (slides)
(worksheet) (solutions) (code)
Rails: (slides)
(worksheet) (solutions) (code)
Module 5 — Advanced SaaS Mechanisms
—
(slides)
(worksheet)
(solutions)
(code)
Module 6 — SaaS Clients + JavaScript — (slides)
Module 7 — Behavior-Driven Design
BDD: (slides)
(worksheet) (solutions)
Cucumber, Capybara: (slides)
(worksheet) (solutions) (code)
Module 8 — Test-Driven Development — (slides)
Module 9 — Legacy Code and Refactoring
Module 10 — Agile Teams
Module 11 — Design Patterns for SaaS Classes
—
(slides)
(worksheet)
(code)
Module 12 — Dev/Ops
Exam Review:
Midterm Review Slides —
(MT1, Fa19) (MT1, Sp19)
Practice Exams —
(MT2, Fa19: blank, sol)
Extra:
My Previous CS 169 Materials (Summer '20, Fall '19) —
(link)
John Yang's (Summer '20 Co-Instructor) Extras —
(lecture notes) (cheatsheet)
Liang Gong's (Fall '16 TA) Materials —
(slides)
Hack Club Workshops
Some workshops I wrote for Hack Club to teach React JS.
1 — React Intro (JSX, components, props, and state) —
(instructions)
(code)
2 — Advanced React (forms, component lifecycles, lists) —
(instructions)