In Intermediate Python, students are taking the initiative to work outside of class.

One of the wonderful things about teaching at Proof School is that, to a much greater extent than at a "normal" school, students pursue their intellectual interests outside of the classroom. In my computer science classes in particular, there is never any homework of any kind, but I often see evidence that my students are, in fact, continuing to work on their coding projects at home. The majority of my students do their coding work in a Dropbox folder which they share with me, and it is not unusual at all for me to get notification messages such as the one below--which I received at 7:40 PM on a Friday evening!

But my Intermediate Python students have taken this sort of outside-of-the-classroom work to a whole new level this block. One of our recent classroom assignments was to write code to draw a "recursive tree" using Python turtle graphics, and to try to make it look as realistic as possible. Here are two of the best trees that the students created:  


Perhaps inspired by this assignment, my students took the initiative to design an extracurricular class project, to which they will all add code whenever they feel the urge over the course of the rest of the school year. It is a "scenery generator", and a sample run of the program currently produces output looking something like this:

One student put this project on his GitHub account so that the rest of his classmates could have access to it. You can too! The URL is I'm impressed and even a little stunned that my students put all of this together with no help or advice whatsoever from me, and I'm looking forward to seeing what the final product will look like by the end of the year.  

---Steve Gregg