I'm an instructor at the University of Amsterdam. Most of my students are just starting to learn to program, and I teach them through various open courses that were selected to fit their needs. All courses are edited or remixed, and all are available for you to use on GitHub.

Want to learn how to program? Minor Programmeren.



+31 (20) 525 5235



Science Park 904

office C3.204
class A1.22


programming 1 + 2

This one is mostly based on a course that has become dear to my heart (and that of many students): CS50 from Harvard's David Malan. It starts off with Scratch and boldly goes on using C, which some would say is quite a leap. However, C has proven to be a small language that is fundamentally linked to many computer science concepts. We did recently replace the web languages by an introduction to Python, which fits the follow-up courses better.


App Studio

This course is a mix of a lot of existing material and some new. Harvard's CS76 by Dan Armendariz and David Malan is a project-based technical course, focusing on getting students up to speed with software engineering concepts and tools, while learning about a specific mobile development platform. We added reading assignments, based on open source books on design. Small startup exercises for getting into the platform are still to be redesigned.

Projects and talks

Open courseware NEW

This page lists a lot of resources on finding, reusing and republishing open courseware. As presented in a previous talk at NIOC 2015.

Code quality UPDATED

This separate page lists resources related to my research into framing code quality for introductory programming courses. Obviously something I would use myself, so please contribute!

Course site

This is a Ruby on Rails application used to manage course content and student submissions. Course content can itself be hosted on GitHub and automatically pulled. Student submissions go directely to a Dropbox folder. You're welcome to use and contribute.

Programming resources

This wiki on GitHub lists many resources we've uncovered when looking for good teaching materials on the web. Some are perfect to link to for students, other could be integrated in a course in some way or other.