teaching machines

Sensing Shapes

In the late 1600s, William Molyneaux posed a question to a friend: Suppose a man born blind, and now adult, and taught by his touch to distinguish between a cube and a sphere of the same metal, and nighly of the same bigness, so as to tell, when he felt one and the other, which […]

Stolen Rings

Recently, I stole something precious from a friend. I was sitting in Andy’s office, and there it was. An interesting shape. Three rings nestled inside each other. They could rotate independently, but if any translated, the others would follow. I had to have these rings. So, I stole them. Well, I stole the idea of […]

Introducing Deltaphone

A collaborator and I have been talking about turtle geometry lately. Meanwhile, I’ve been taking the piano lessons I was never forced to take as a child. One thing led to another, and now these two separate activities of my life have had a child. That child is named Deltaphone. Deltaphone is a blocks programming […]

Bad Star

If you are an illustrator, there are two things that are harder to draw than anything else. The first is lettering. Bless you, illustrators, if you have to draw a busy street scene with lots of storefronts full of signs and words. The second is stars. Most illustrators just give up on stars. They are […]

Multiple Assignment in Twoville

As I dream up animations in Twoville, I find myself generating a lot of shapes that share properties with other shapes. For instance, these two circles have the same radius and color: a = circle() b = circle() a.radius = 10 b.radius = 10 a.rgb = [1, 1, 0] b.rgb = [1, 1, 0] I […]

With Blocks in Twoville

In my software engineering class in college, Dr. Drake dropped on us a half-written piece of software that managed a database of movies. Our challenge was to improve it. It was the first and only time I’ve touched Visual Basic, and I remember only one thing about the project and the language: with-statements. Suppose you’re […]

Twoville Inching Along

Thanks to a snow day yesterday, I can now export animated GIFs from Twoville, my 2D drawing language. Gif.js made this possible. However, Jeremy, I think naming your project with .js suffix was a big mistake. When one clones the project, one ends up with a directory with a .js extension, which messes everything up. […]

Introducing Twoville

Some students and I are building a programming language for generating animated SVG images. Rather, each of us is building our own language, because each of us wanted 100% of the learning experience. By the end of the semester, we’ll have four different takes on how to build such a language. My take is called […]

Fourlords Paddle

I said I was going to build a co-op game alongside the students in my gamedev class, but I haven’t touched Fourlords (a clone of Warlords) since before the semester started. Not until today, that is. I am in Baltimore for a conference, with a reprieve from lecture preparation. When not developing humans, I get […]

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 […]

1 2 3 15