Let me start this post by saying that I firmly believe one of the best changes I made in my career was to re-focus my scholarship on computing education. It’s led me to difficult and interesting problems and introduced me to a fabulous community of colleagues. I would make the same switch again in a heartbeat. But it’s also presented me with a recurrent situation that up until now has annoyed me to no end. I think, however, that I’ve had an insight that will let me move past the irritation.
I should point out that part of the annoyance I’m going to describe comes out of my graduate training. My Ph.D. work was in the theoretical computer science. A lot of people, including many computer scientists, are intimidated by theory. So it was almost never the case that people would feel that they knew enough about it to suggest that what I was doing was wrong or somehow fell short of what I should be doing. Sure, they might ask other irritating questions (“What is that used for?”), but they wouldn’t suggest that it was silly that I hadn’t just immediately solved the 30-year open problem that I was working on. In their hearts they believed that what I was doing was difficult, so it made sense to them that I hadn’t produced all the answers.
Computing education is very different from theoretical computer science. Part of this is because most computing academics engage in it nearly every day. A significant part of our jobs is teaching (unless you have enough research funding to buy out of it or you’re an administrator). When you do something on a near daily basis you come to believe, and not without justification, that you are an expert in that endeavor. For example, if you teach data structures you’ve probably spent a great deal of time thinking about how to explain linked lists because you’ve had to do it dozens of times each year.
The problem is that there is a gap (and sometimes a significant one) between being a computing educator and being someone who produces scholarship in computing education. To come back to the data structures example, it takes a lot of background knowledge, careful experimentation, and detailed analysis to show that a lecture on linked lists is less effective for student learning than a peer instruction session. It also takes a great deal of time to produce the situation where you can gather the data, analyze the results, and write the paper. Most computing educators just won’t be doing that, and that’s fine.
The problem is that many computing educators fail to see the gap between the practice of computing education and computing education as an area of scholarship. They teach computing everyday, so how hard can it be? Why haven’t we discovered the best way to teach programming (by which they usually mean lecture-based instruction) so that every student retains the information we give them perfectly from class to class? Since they’re not familiar with the literature they don’t know that the answer is that there are several very good ways, but that none of them involve lecture-based classrooms. They probably also don’t realize that knowledge retention and transfer is tricky and that keeping the cognitive load low enough so that novice programmers can build a foundation in their long-term memory is a challenge. They just believe that the students coming out of the introductory programming classes don’t know what they should, and they get upset about it. Those of us who teach the introductory programming classes must be doing something wrong. (And, yes, I’m sure we are. But that doesn’t mean that we’re not also doing lots of things that are right too).
For me the realization that my colleagues don’t see the gap between being a computing educator and producing scholarship in the area of computing education was a big one. My hope is that it will give me the ability to step back and find a way to share with them some of what I know (however little that may be) about computing education research without myself getting upset. If someone doesn’t understand that a problem is hard enough to defy easy solutions, the first thing you have to do is help them to see it more clearly.