teaching machines

Flat Braid

When all you know of trees is that they have bark and leaves, you view the woods as a background to the more interesting foreground activity of a jog, or a campout, or a proposal. But when one knows the trees, it’s hard to not stop every few feet and shake hands with some old […]

CS 491 – Game Development and Physical Computing

Course Information Syllabus Enrollment: 20 Posts Project

CS 318 – Fundamentals of Web Page Design

Course Information Syllabus Enrollment: ~28 Lectures Project Milestones

CS 330 – Programmming Languages

Course Information Syllabus Enrollment: ~70 Lectures Homework Exams

Integer Triangle Wave

I encounter many of the same problems over and over again. But sometimes enough time elapses between one encounter with a problem and the next that I’ve forgotten how to solve it. I start to doubt my qualifications as a teacher. “That guy can’t even learn. How could we trust him to teach?” I think […]

Fourlords Field

In a couple of weeks, I start teaching a brand new elective on game development. Students will team up and build a single game throughout the semester. I’ve taught several such courses in the past, but this one has a couple of twists: The games must be locally cooperative. These games are intended to be […]

Two MPU-6050s

Ugh. After learning how to talk to one accelerometer, I needed to talk to two of them. The MPU-6050 is, for reasons I do not understand, bound to I2C addresses 0x68 or 0x69. In order to put two of them on the same I2C bus, one will have to take on 0x68 and the other […]

Flying with the MPU-6050

A student and I are working on a hardware project. This is world I don’t know well, and I think the best thing I can do is painstakingly document our every step. Unfortunately, the project started four months ago. I’m a bit late. Our first task was to figure out how to talk to an […]

Grades vs. Experience in CS1

Every year I like to examine how a student’s prior programming experience correlates with their final letter grade. At the very beginning of the fall semester, I asked my students in our introductory programming course to complete a short survey. In one of the questions, I asked about their first programming experience. Here’s what they […]

Icosahedron, Part 2

Several hours later, I have now found the difference between an octahedron and an icosahedron. I had been stuck on generating the coordinates of the octahedron. A little reading and experimentation directed my attention to the cube circumscribing the icosahedron. The way I’ve set things up, its vertices are all [±u, ±u, ±u], where u […]

1 2 3 141