Archive for November 21, 2010

In Toronto, Talking About CS Ed and CS4All

I’m writing this from a hotel room in Toronto, Ontario.  (This year, it seems like I can’t stay in the US for too long.)  I’m visiting the University of Toronto for the next couple of days.

Tomorrow, I’m giving an informal talk on my view of the State of CS Education Research.  I’m excited about this talk.  It’s not a well-practiced, well-groomed talk, e.g., it has the most slides with just bulleted text of any talk I’ve given in years.  They scheduled a couple hour block for me to tell stories of my recent students’ work, and about the work that I want to do next, which is not something I do in my standard DLS/keynote talk.  For you who read this blog, you already know what I’m going to say — it’s about my students’ work, about worked examples and phonics, and about why textbooks are bad for CS Ed, and why distance education is important for CS10K.

On Tuesday, I’ll give my talk on “Meeting Everyone’s Need for Computing” where I’ll argue that teaching everyone on campus about computer science is an old but good idea.  I’ll update a version of the talk that I gave in Jinan — various versions of the talk are at if you’re interested.

When I get back (somewhere in the boundary of very late Tuesday and very early Wednesday), I’ll be recovering, and then it’ll be the American Thanksgiving holiday.  (I understand Toronto had its “Santa Claus Parade” this morning, so it’s officially already the Christmas season here.)  I expect to spend less time blogging this week than usual.  Happy Thanksgiving!


November 21, 2010 at 10:01 pm Leave a comment

Computer Science as a Path to Computer Application Efficacy

One of our challenges in getting education decision makers to take computer science seriously is that all they really care about is having students be good at using computers. They want students to be “workforce ready” and able to use Office. They don’t care about having students understand the computer. But what if learning computer science was actually a really good way of achieving the goal that they care about? Three stories that point that way.

Story #1: Beth Simon sent me a note last week about her AP CS trial. She and one of her TA’s, Leo Porter, were talking about what good it was for these non-majors to learn to program. So on one of their regular quizzes, she put it to the students:

Learning computing concepts may have opened many doors for you in your future work. Although you may not ever use Alice again, some of the concepts you have learned may become useful to you.

…examples here

Aside from the examples given, or enhancing the examples given, please describe a situation in which you think the computing concepts you have learned will help you in the future. (2pts)

She got some great responses:

  • Figuring out how Alice works has made it easier to figure out other websites. I sometimes call myself “technologically challenged” because technology seems to always shut down or malfunction when I use it. However, as I continue to use and decipher code in Alice it has become easier to do the same with other on-line programs.
  • I feel like taking this class has greatly improved my logic and my grasp of how programs work. Learning Alice in such great detail has explained to me the behind the scene mechanisms that make programs work. In the future I believe I will have a huge advantage over others when learning new programs because I now have a firm grasp of computing mechanisms.
  • Understanding what the software is capable will allow which way to do something is actually less effort and thus use less energy. Also by knowing what can be done with the software completely, you can find out if a mistake is on your fault or the system’s fault.

Story #2: Now, let’s compare these answers to the ones we got, when we surveyed the Media Computation students a year after the first cohort. We asked them, “How has this class changed how you interact with computers?”

  • “Definitely makes me think of what is going on behind the scenes of such programs like Photoshop and Illustrator.”
  • ‘I understand technological concepts more easily now; I am more willing and able to experience new things with computers now’
  • ‘I have learned more about the big picture behind computer science and programming. This has helped me to figure out how to use programs that I’ve never used before.’

Story #3: In total synchronicity, Barb had a workshop last week with Atlanta-area AP CS teachers, and they started telling her stories from their students who took AP CS, but are now in College but not in CS. Barb is now collecting these stories, e.g., the management major who is the most comfortable in Excel and databases, because she took AP CS.

What’s going on in all of these stories? One possibility is that students are transferring their understanding of computer science and using it to understand how the application software works. That’s possible, but I find it unlikely. I find “unprompted, untaught transfer-of-knowledge” to be rare enough to rank it right alongside Bigfoot and unicorns. Yeah, maybe it happens, but it’s unlikely unless the teachers explicitly helped to make the connection, e.g., “Here’s how arrays are like spreadsheets.”

Here’s another hypothetical mechanism to explain the students’ experience. Learning to program in Java is hard, even harder than learning Microsoft Office. However, a lot of the basic computer use activities are the same: cut/copy/paste, navigating through directories, recognizing that there is internal computer state. Most importantly, programming requires you to be comfortable with the computer yelling, “Error!” Instead, students learning to program treat errors as a symptom (rather than a reason to give up) which initiates a problem-solving process. Maybe learning computer science is a “trial-by-fire” for learning to use a computer. Literally, then, learning to program a computer is about learning how to learn other applications, because of the change in habits in response to the computer acting in ways unexpected or undesired.

In any case, we are collecting some interesting data (not anecdotes — Beth’s data and mine are data collected through an IRB-approved survey process, and we already published our data in a peer-reviewed conference) showing that CS students feel that they have a sense of computer application efficacy that they didn’t previously. That is something that even school administrators who don’t appreciate CS DO value. Maybe we can argue for computer science in a different way, that it’s a terrific way of achieving the (to our my minds, not very important) goal that administrators do value.

November 21, 2010 at 9:44 pm 2 comments

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,184 other subscribers


Recent Posts

Blog Stats

  • 2,054,360 hits
November 2010

CS Teaching Tips