Years ago, I lost my temper while arguing with my brother, and said, "Jeff, I could teach you everything I know and you'd still be an idiot." Please keep that in mind as you read this site.

Recent posts

Is This a Notional Machine for Python?

Mark Guzdial was kind enough to take a few tweets last week to try to explain the idea of a “notional machine” to me. If I understand correctly, it’s a compe...
April 12, 2018


I’d like to teach scientists how to program, but that would be a lot easier to do if we had better software tools to offer them.
April 01, 2018

The Undergraduate Software Project Guide

Back in 2007, I tried to condense everything I had learned from supervising undergraduate thesis projects at the University of Toronto and elsewhere into a s...
April 01, 2018

The Senior Professor’s Handbook

Short version: I’d really like someone who understands sociology and political science to analyze academic publishing and promotion in terms of selectorate t...
March 26, 2018

Grand Unified Editor Theory

It’s a sad fact that you can’t get a PhD in Computer Science simply by building an innovative piece of software. That’s partly due to a double standard among...
March 24, 2018