I visited a high school last week. This is not atypical for me of course. I visit high schools on a pretty regular basis. In this case I was taking advantage of being in Texas for some training to visit Allen High School (Go Eagles!) in Allen Texas. Bryan Baker teaches computer science there and he and I have communicated by email for a couple of years. We'd never met in person but I'd heard so many good things about what his students were doing that I just had to see it for myself.
So Cy Khormaee (a great new addition to the Academic Relations Team) and I snuck away from the course we were taking to make a field trip to Allen High School. It was a trip well worth making.
We interviewed Baker's (everyone seems to just call him "Baker") third year students about their projects. Two teams were creating video games. One team was working with DirectX 9 and C++ and the other team was working with C# and XNA Game Studio Express. Both of them were hard at work learning various concepts and technologies like graphics, physics simulations, collision detection and artificial intelligence. A third team was doing leading edge work with zigbee networking hardware using hardware donated by Texas Instruments. Another student was learning about mainframe technology (COBOL, JCL and Assembly Language) in the context of a competition being run my IBM. So far he's already won several events and learned quite a bit. Every project we saw would be challenging for university students. (And Cy and I see a lot of university projects too!)
I was impressed not just by the projects and the progress being made but by how articulate the students were in explaining their projects. Baker makes presentations an important and ongoing part of the curriculum and it shows. The students were also able to explain how important teamwork and communication were to making their projects a success. They knew they were taking on more than one person could do alone and that the were dependent on each member of the team to pull their own weight.
We talked a little about how reproducible this program is and agreed that the key piece was the teacher. I think we underestimate the number of really bright students who can handle this type of project based course. Students will work hard if they have the proper motivation and leadership. The hard part seems to be the instructor.
Now don't get me wrong there are a lot of great people teaching and doing a wonderful job. But this kind of course is different. Sure it takes a teacher who has a high level of technical background and honestly that is not easy to come by in computer science. There are too many other ways that someone like that can make a living - a living that pays a lot more than teaching. But even when you have a very technical person that is not enough. No one can know it all and students are going to want to go in wide directions. So you need a teacher who can admit, to themselves as well as to their students, that they don't know it all and that the student will have to figure some things out on their own. And of course you have to have a mutual trust between student and teacher. The teacher has to trust the students to work and learn. The students have to trust that the teacher will support them and that grading will be fair.
But you know the real "gotcha?" The real hard to come by piece is a school administration that will let the teacher run the course their way. It's a little scary to let a course in a field like computer science go off in a less traditional way. Oh sure they'll let the shop teacher do it. They understand shop and besides that's "vocational" but computer science is "academic."
I'd maintain though that learning is learning. Project based learning is no less valid in science than it is in carpentry. We just haven't got enough teachers comfortable and knowledgeable and passionate about teaching that way. And we don't have enough administrators who will cut teachers lose to design their own courses.
There is a wall full of acceptance letters to college computer science programs on the wall of Brian Baker's classroom that attests that his methods works. The colleges that are writing these letters have experienced the students he sends them and they want more. Is there a better indication that a teacher is preparing his students for success in college than that? I can't imagine what it would be.
I sure do hope some of his students apply for jobs at Microsoft some day soon. We'd be lucky to get them.