The SE Book

From coder to engineer.

Git, testing, design patterns, architecture, and teamwork: everything software engineering adds to the code, with hands-on tutorials that run right in your browser.

The SE Book brings together material for students in CS 35L, CS 130, and CS 131.

Audio description and transcript

Audio-described version: a narrator reads the on-screen text over the music.

Transcript and visual description

  1. 0:00 On screen: “AI can write the code.”, “build me an app”, “+1,284 lines” A chat box types a request, and generated code streams into an editor while a line counter climbs. Music: Soft synth music; harp notes rise as the request is typed
  2. 0:02 On screen: “14 undetected bugs”, “Merge conflict in app.py”, “Prod is down 💀” Error notifications slam onto the editor one after another. The editor jolts with each one, its frame glows red, and red squiggles underline the broken code. Music: Driving beat with a harsh chord stab on each alert, then the music winds down like a stopped tape
  3. 0:05 On screen: “The code was the easy part.”, “Software engineering is everything else.” The editor and notifications fall away. Two lines of text remain, and “everything else” gets a gold underline. Music: Deep bass hit; airy synths build to a drum roll
  4. 0:08 On screen: “Git”, “branch · merge · push” The view whips sideways to a new panel for each skill. First, a Git history draws itself: a green fix branch dips below the blue main line and a gold feature branch arcs above it; both merge back, and the last commit is tagged v1.0. Music: Upbeat electronic music drops in, with a whoosh at each cut
  5. 0:09 On screen: “Testing”, “red → green → refactor” Four failing tests, marked with red crosses, flip one by one to passing tests with green check marks.
  6. 0:11 On screen: “Design patterns”, “code that bends, not breaks” UML class boxes snap together into the Observer pattern: a Subject notifies an Observer interface that two alert classes implement.
  7. 0:12 On screen: “Architecture”, “systems that scale” Requests flow from a client through an API to a service, which scales out to three copies, and on to a database.
  8. 0:14 On screen: “Teamwork”, “user stories · Scrum · code review” Story cards slide across a Scrum board from To Do to Done, and a pull request gets approved.
  9. 0:15 On screen: “Interactive tutorials.”, “Zero setup.”, “Linux terminal”, “time-travel debugger”, “live UML diagrams” A browser window runs a Linux terminal that finds the TODO the AI left in the code, runs the tests, and pushes the fix, while three feature tags pop in. Music: The beat continues and builds
  10. 0:18 On screen: “SE Book”, “From coder to engineer.”, “tobiasduerschmid.github.io/SEBook” The SE Book logo appears in a soft blue glow, a gold glint runs across its letters, and its tagline and web address follow. Music: Final bass hit; a bright chord rings out

Table of Contents

Interactive Tutorials

The SE Book includes a broad set of interactive tutorials that run directly in your browser, with no installation required. Depending on the topic, you can practice Linux shell scripting in a real Linux VM, explore live UML visualizations of your code, step through programs with a time-travel debugger, inspect Git history through an interactive graph, and work through advanced testing concepts. Browse the full list of tutorials.

Work in Progress

Many topics are still a work in progress. Please consider only the pages linked in your specific course page and already covered in the lecture as “canon”.

Practice

To reinforce the concepts from this book, practice regularly in the SE Gym.