Skip to main content

Structured Thinking: Discrete Math for Programmers

Structured Thinking: Discrete Math for Programmers

Quarters
Winter Open
Location
Olympia
Class Standing
Sophomore
Junior
Senior
Margo Bergman

This course offers a supportive and practical introduction to the kinds of structured thinking essential for beginning programmers. You’ll explore key topics from discrete mathematics—such as logic, functions, sequences, recursion, and induction —through hands-on, real-world examples. We'll also introduce basic ideas from graph theory and combinatorics that underpin everything from network design to game development. Then, in structured offline assignments including discussions and code explorations, you will utilize these skills to support your learning. 

This is not a traditional math class. Instead of memorizing formulas, you’ll develop habits of reasoning and problem-solving that will help you write better code, design better systems, and think like a computer scientist. No advanced math background is required—just curiosity, persistence, and a desire to grow your skills for the tech world.

In addition to our weekly meetings, students will be expected to spend an hour each week doing substantive work on discussion boards based on work done in our class sessions. This is in addition to regular homework assignments.

Anticipated Credit Equivalencies: 

4 - Discrete Mathematics

Registration

Academic Details

Computer Programming and Data Analtyics

4
25
Sophomore
Junior
Senior

Schedule

Winter
2027
Open
Remote (W)

See definition of Hybrid, Remote, and In-Person instruction

Evening
Schedule Details
Remote/Online
Olympia