I was talking to a teacher, well chatting online via Facebook actually, and I described what he does as “thinking outside the textbook.” Speaking as someone who has written several textbooks I will easily admit that textbooks can be wonderful tools. They can make a teacher’s job a lot easier. They supply information, explanations, review questions and more. These days they often come with PowerPoint decks, test banks, and more. At the same time they can be limiting as well. It is easy to fall into the trap of teaching as if what is in the textbook are the only things that students need to know.
Few good teachers limit themselves to the textbooks that students are assigned though. Most teachers I know have a collection of textbooks that they use to help them widen their curriculum. They borrow information, projects, quiz questions and more. This lets them make their courses richer and more interesting.
Computer science changes rapidly though. Textbooks change very slowly. Most districts can only buy new textbooks every five to seven years. This is hardly often enough to keep up with the latest developments in computer science. Programming languages and integrated development environments (IDEs) seem to change annually if not more frequently. Sure you can stick with old versions and texts if you want. I know of teachers still using products that haven’t been supported let along sold in years and years. This works. Sort of.
And then there are the latest developments in application types: Games, Kinect and other new user interfaces, phone app development (I talked about this at To App or Not To App) and soon Windows 8 apps. By the time a textbook comes out that covers it there are new versions that may have breaking changes. And yet students want to learn about these things. Students often have little patience with the line “it may not be the bleeding edge but the concepts are for ever.” It’s a true statement but students always want to be current.
So what do you do? Well the easy way out is to stick with the textbooks. It’s the safe way to go. Going beyond the textbooks is scary. It’s hard work. It’s not required. So why bother and how to you do it?
First off it is exciting for students to be on the leading edge. When students are excited and motivated to learn they work harder, longer and learn more. This is just the sort of thing that attracts more students to computer science programs. Those are some good whys. But it is still hard.
There are resources available on the Internet to try the new things. Lots of online documentation, sample code and even help forums. Few teachers have the time to learn this stuff before teaching it though. So what is a teacher to do? Ask their students to help them learn it!
One of the things I heard recently at an education forum was that teachers should model lifelong learning. By setting an example of being someone who is always learning new things teachers help students adopt the same attitude. For a lot of people it’s a bit scary to “give up control” by admitting that they don’t know something. It takes some courage to admit ignorance in front of teachers. Generally though students respond well to the idea of learning along side their teacher. Making the learning of a new technology a cooperative experience benefits students and teachers alike. In the long run everyone learns more.
There is more to learn than what is in the textbooks. Thinking beyond them and learning to learn with students opens new doors to learning. And best of all it helps students see lifelong learning modeled for them.