David Beazley – Programming Courses

gregsadetsky1 pts0 comments

Dabeaz Courses

Programming Courses

From 2007-2026, I taught a variety of project-based programming<br>courses. These were usually taught in an intense week-long immersion format. None of these<br>courses are currently scheduled, but this page includes links<br>to course descriptions for historical reference:

Advanced Programming with Python

Advanced Python Mastery

Computer Science: The Good Parts

Crusty Interpreter

Practical Python Programming

Rafting Trip

Ruckus

Structure and Interpretation of Computer Programs (SICP)

The One

Write a Compiler

Short Courses (2 days)

Rusty Elevator .

A broken elevator may have inspired the creation of Rust, but could you<br>actually code an elevator in it?

June 17-18, 2025.<br>June 28-29, 2025 (weekend).

ONLINE

Ruckus .

No, not a Racket--something even louder. Write a small interpreter in Rust.

July 12-13, 2025 (weekend).<br>July 22-23, 2025.

ONLINE

Ray Tracer .

Write a ray tracer in Rust. Ooh, pretty!

June 21-22, 2025 (weekend).<br>June 25-26, 2025.

ONLINE

-->

Elevated .

How hard could it be to write the software for controlling an elevator?<br>Pretty hard as it turns out.

May 19-20, 2025

ONLINE

The Objects .

Learn about programming with classes and objects.

June 9, 2025

ONLINE

The Functions .

Dive into the foundations of functional programming.

June 10, 2025

ONLINE

The Test .

Security, writing testable code, logical specification, and novel testing<br>techniques.

August 17, 2023

ONLINE

-->

"David's training classes are a unique and not-to-be-missed experience. They are an immersive exploration and the format ensures you leave the class with new knowledge, new understanding, new skills, and new friends. David has a gift for explaining hard concepts and making things interesting. He is one of the best teachers I have ever met."

-->

Hands-on circuit building in "Computer Science: The Good Parts"

Courses are usually taught in an intense week-long immersion format to a small group<br>(limited to about 15 participants online or 6 participants in-person).<br>The immersion format works to provide structure and to focus your<br>engagement with the material.

Courses run from 9:30am-5:30pm in US Central Time/Chicago with an<br>hour lunch break. Course time is divided between group discussion and<br>working on hands-on projects with a strong emphasis on the latter.<br>Courses are taught in a conversational live-coded style that does NOT<br>involve PowerPoint-style presentation or passive content. Moreover, I<br>am a big proponent of "guided discovery" wherein we work together to<br>find a solution. This often involves active experimentation, being<br>open to making "mistakes", and changing direction as needed. In<br>general, no two courses are ever exactly the same. Come ready to code, to<br>question, and to discuss.

-->

Classes are attended by professionals with a wide variety of<br>backgrounds and interests. You should have prior programming<br>experience, but you definitely do NOT need to be an "expert"<br>programmer, have a formal background in computer science, or<br>deep knowledge of advanced programming language "features."<br>That said, courses are still rigorous. Learning is the ultimate goal and<br>some of the subject material (depending on topic), might be similar<br>to what one would see in a graduate computer science course. You can<br>read more about preparation here.

Courses are open to everyone. There is no screening process and I'm<br>not in the business of gatekeeping--if you want to take a course,<br>sign up. I trust you to be the best judge of your abilities. However,<br>feel free to contact me if you're<br>not sure.

-->

I have been offering public-enrollment CS courses for more than 17<br>years. What you see here is exactly what it is--courses. I<br>personally teach all of these classes and focus my attention on topics<br>that I think are interesting, intellectually deep, and worthy of<br>study. I have a "no questions asked" cancellation and refund policy.<br>I hope that you learn as much taking a course as I do by teaching it.

-->

An End to Courses

It's sad, but true. The courses that I used to offer here have to come<br>to end. I'd just like to thank everyone who attended over the<br>years--I really enjoyed teaching these classes and hope that those of<br>you who took them learned a lot. I know I did!

Honestly, I thought I might be teaching these courses into my<br>retirement, but the enrollment numbers don't lie. Since 2023, there<br>has been a complete collapse in the market for continuing education.<br>As this was my primary source of income, I've been forced to move<br>on.

In reflecting upon all of this, this upheaval comes at a time when<br>my kids are heading off to college. Even if business conditions were<br>better, I'm still not sure I'd want to spend my empty-nest days sitting<br>in the basement, staring at Zoom, and walking the dog.<br>So, for the moment I've decided to go back to graduate school to get<br>my Professional Educator's License in Secondary Education, final destination<br>unknown. Stay tuned.

Copyright (C) 2005-2026, David...

courses programming online june course computer

Related Articles