Archive for the ‘programming’ Category

I remember once, long ago in high school, there was some project where I had to look up and draw my family tree. Being the not-so-organized guy that I am, I lost that specific project many years ago. But since then, I also had a whole bunch of changes to the tree: I visited Iran […]

About a month ago, the Facebook Hacker Cup included a nice programming problem involving a certain kind of matching. The min-cost bipartite matching problem can be stated like this: You have a number P of people, and a number Q ≤ P of jobs. Each person is willing to do any of the jobs, but each person will charge a different price for each job. You are only allowed […]



Next week I am headed to the ITiCSE conference (Innovation and Technology in Computer Science Education), in Vilnius, Lithuania, to present Websheets, an exercise system for programming problems in C++ and Java. Websheets combines a couple of ideas. It is an online system where students get immediate feedback on their programming solutions. This has become very common […]

Today I pushed some code that I used last semester for C++ visualization to github. The bad news is that it’s smoke and mirrors, but the good news is that it did the trick: it helped to convey important ideas about flow control and programming semantics to my students. This is based off of the Python visualizer at by Philip Guo. His […]

Over the last couple of weeks, I’ve been building a graphics/animation library to use in the class that I’m teaching at USC. It’s now in a stable state and has the features that I think I’ll need this semester. A lot of the motivation comes from Princeton where I taught previously: the class there, taught in Java, uses the […]

I am continuing to teach C++, which I am now convinced is a specialized language whose main feature is unchecked array access. However, my students discovered a cool application of said feature. I asked students to write some code to turn this elephant into this grid of 4 elephants: They have a primitive bitmap library, which reads […]

On C++


I’m teaching C++ this semester, for CSCI 103 at the University of Southern California. The students are great! However, the transition to this language is challenging. I am trying to build some tools to work around the language, with mixed success. As always, StackOverflow is very helpful, as is the DeathHandler tool on GitHub. With […]