Wednesday, January 21, 2009


I don't use a textbook.

This seems to be heresy for most teachers. It is true that my school supports some really weird practices - project-based learning, no grades (narrative reports - which is what I should be working on right now!), and groupwork to name a few. So not using textbooks fits right in here. But I think (like the other practices, really) that it's fully justifiable.

I have a double-whammy: there are no texts that both cover what I want to cover and are appropriate for middle school. Most middle school "computer science" textbooks are heavy on applications and light on the things I'd like to cover. The books that cover the actual topics I'd like to cover are far, far above the reading level of my students. This year I tried an experiment (covered under educational fair use): I photocopied an exercise out of a Flash book I have. It was 20 steps, clearly explained. Half of the students were able to complete it at all, fewer than half of them were able to successfully follow the directions to get a working product. The language was above them, the writing was small, it didn't explain itself in a way they could understand... it was awful.

So I am left creating handouts, making podcasts (another thing I shoulLinkd be doing rather than posting!), and demoing while the students follow along and take notes. I am hoping to write the textbook I would want to use, one of these days.

I will say that I have a few favorite books I use. For Python, I rely heavily on Zelle's Python Programming: An Introduction to Computer Science and Python Programming for the Absolute Beginner. I use Zelle's graphics library rather than the built-in turtle graphics because they're easy to use and high-impact. In fact, the hangman game the students will make as their first big project is built with Zelle's graphics. I love that PPftAB has a game in each chapter - so much fun! I am hoping to move fast enough to have the students make the Mad Libs project as their second big project. It's OO and uses GUI windows. In Flash, I like the Lynda books a lot and this year I got the Missing Manual book which I like. But mostly I've got the Flash stuff down and really don't use a book. Someday I have to pull all my stuff into a website so other people can steal it if they need it.


  1. As a math teacher I loved and hated my text books. They sure were handy to find problems for homework but they try to force a teaching direction I often did not want to go. As a CS teacher I do not use them. To many are tutorials as opposed to teaching guides. Many of the assignments are simply boring. There are lots of projects that would attract a kid's interest, computing loan interest is not one of them. I keep lots of programming books available for reference, none for teaching out of.

  2. I also have a love/hate sort of relationship with textbooks. I love history textbooks for example. Or I did as a student. Computer books are a mixed bag. I've written several and one of them I deeply loved. It was exactly what I wanted to teach from. I never got to use it in class though because I handed that course off right after the book came out. The others I worked on were somewhat constrained and while I think they are good work and know that they are being well used by others ... well your first is always your favorite. :-)

    The text books I used were generally pretty good as far as they went but didn't always run in the order I wanted. So like you I used to make up a lot of my own resources. Many teachers are unwilling or unable to do so though. So what about them?