teaching machines

New Geometry

What do you call a portion of the shaded area between two arcs? A sharc. The figure above was created in Twoville, a little language for drawing vector art. Here’s the complete program:

Little Notebooks

The best days are the days in which I write in a little notebook. The things I write are myriad: 20 drafts of a haiku, big goals for a project, a TODO list for the day, an outline for a lecture, a draft of a talk, a humorous thought, a record of a dream, an […]

Un-safelinks

Several months ago Microsoft started wrapping all URLs in my university email. Now, when I click on a URL, I first go to a web service that checks to see if the page has malicious intent or unsafe content. The problem with this safety feature is that I can no longer read the destination URL. […]

Interpolants in Twoville

Shapes in Twoville are animated across time by interpolating their properties between keyframes. Time is a first-class concept in the language, with assignment statements storing values across a timeline rather than in a static memory cell. Here’s a rectangle that oscillates left and right using this keyframe-sensitive assignment syntax: The animation above uses linear interpolation. […]

VOICES 2019: Learning Music Theory through Code with Deltaphone

Follow is a draft of my talk for VOICES 2019, a virtual conference on the use of music in STEM learning. This is the first virtual conference I have attended. No flight, no badge, no bag of unwanted promotional materials. Just people talking about music and learning from the comfort of their homes and offices. […]

Starring Matariki

During our last week in New Zealand, we attended the Matariki Festival at my sons’ school. Matariki is the Māori name for one of the stars that becomes visible in June, marking the start of a new growing season. The school celebrated with song and dance and an art show. For the art show, one […]

Triadic Chords in Deltaphone

When non-pianists approach a piano, they will strike random keys—but often just one key at a time. If they play more than one, the sound is likely to be unpleasant. But that’s only because they don’t know which keys to strike at the same time. Let’s work out in Deltaphone a system of notes that […]

SCSI 2019: Computational Music

Welcome to Computational Music, one of the courses at the 2019 Summer Computer Science Institute at Carleton College. This page contains all the course notes and exercises that you will need throughout the week. Day 1 On this day we introduce the notion of a sound wave, and we see how the frequency of these […]

Networking with Pure Data

This post is part of a series of notes and exercises for a summer camp on making musical instruments with Arduino and Pure Data. Our input so far has come from an Arduino plugged into our computer. It’s time to free things up. Bring on the internet! In this exercise, we will see how to […]

Timbre and Harmonics

This post is part of a series of notes and exercises for a summer camp on making musical instruments with Arduino and Pure Data. Earlier we said that sounds are generated by oscillating sine or cosine waves. That was a lie. None of our musical instruments produce pure waves of a single frequency. Rather, they […]

1 7 8 9 10 11 46