Archive for November, 2008

Mental Models - How to measure them?

A mental model is conventionally understood as an internal representation of an external event. Mental models have been used in the past to understand complex interactions between humans and the world around them.

They are important to my research because I want to know how people think about and interact with their computer programs as a way to inform introductory computer science education.

Many of the papers I have been reading recently (Ramalingam especially) have used some measure to assess the “mental models” of students, but to me it seems more like a measurement of their ability to chunk and remember.

My current dilemma is how do I (without doing an in depth interview) come up with a general way to look at mental models of programming. Any thoughts?

Tuesday, November 25th, 2008

Numb3rs and Trains and CS

This past Friday the Numb3rs episode was about the devastation caused by a train wreck and the efforts to find survivors as well as to determine the cause of the problem. For those of you who don’t know about the show, an FBI agent uses his brother (a brilliant Mathematician professor) and often his friends in order to help solve crime. Aside from the fact that most of what they are calling is Mathematics is really computer science (and a good portion is machine learning at that) I really enjoy the show :)

Now that you can watch TV episodes quite easily over the internet - this would be a great snippet to use in a recruiting website (or presentation) for what computer science is about these days. I am going to try and make this a series on this blog - Feel free to develop your own site though and share with your guidance counselors and science/math teachers as you make updates. Link me to your pages as well! I would love to see what people come up with.

First of all - the mathematician used robots in order to help map the space and find survivors. He specifically used something called “swarm bots”, explaining them to be collaborative robots. Using robots to help find survivors in places where humans cannot go is a recurring theme in autonomous robotics. Here at CMU in the Robotics Institute you can find lots of great examples of the different kinds of projects that people are doing with robots. Here are a few that match the numb3rs theme:

Cognitive Colonies - http://www.frc.ri.cmu.edu/projects/colony/ - This is exactly in line with the “swarm bots” theme from the show. Highly recommend students look at this one :)

EMBER - http://www.frc.ri.cmu.edu/projects/colony/ - Providing tracking information and resource management (of both humans and robots) in emergency response situations. Also highly recommended.

DepthX - http://www.frc.ri.cmu.edu/project/depthx/ This is about using thermal information to explore underwater areas.

Ferret - http://www.ri.cmu.edu/projects/project_493.html - Mine mapping robot.

Pioneer Project - http://www.frc.ri.cmu.edu/projects/pioneer/ The creation of an autonomous robot to map out the Chornobyl Unit 4 reactor building.

There are lots more! If you follow the links from the main Robotics Institute page theres lots of interesting stuff including links to watching the robots work on youtube.

In addition to robots, the episode reminded me of some other work going on here in the computer science department. CMU recently brought in a new faculty member, Andre Platzner. Andre is from Germany and he has been working on a number of things including verification of automated systems. Andre’s thesis work included a tool that is now being used in Germany to prevent accidents like the one depicted in the show.

Andre’s website and work is quite complex and I myself dont completely understand it, however there is a link to some case studies (http://www.functologic.com/info/KeYmaera.html#case-studies) that his tool was used for, and you can point students there if you think they will not be turned off by the complexity.

The lesson here? Computer science is evolving to meet the changing needs of our world. There are serious researchers working on serious problems that are as important to humanity as helping to find a treatment for a disease. Students who like science and are interested in making a difference can find interesting problems to work on that have nothing to do with fixing someone’s computer at home.

Let me know if you would like me to continue with this vein of highlighting research that is current in the field :) and let me know if you create your own pages to help inform your community.

Sunday, November 23rd, 2008

21st Century Skills and the Pony (look at the pretty pony)

Many of us have probably heard the term “dog and pony show” when teachers are referring to the best lessons that they trot our for observations or special occasions. With the outpouring of recommendations for the incoming administration we are hearing a lot in the education media about 21st century skills.

Just to give you some recent links:
Education Sector - “Measuring Skills for the 21st Century” (*** highly recommend reading this one - its not long)

States keep joining the Partnership for 21st Century Skills I highly recommend you check out their Framework for 21st Century Learning.

Alfred Thompson’s Recommendation for Scratch

and even me in a post to the CSTA Blog about Maryland.

So what is this post about? Nifty links? yes and no. Tuesday I was in a meeting for the new science and technology high school in Pittsburgh (to open next fall). One of the new initiatives across the district is culturally relevant pedagogy. We were given a one sheet of the districts policy about the direction this initiative was to take, and also an article from the magazine “Teaching Children Mathematics” entitled “Creating Cultural Relevance in Teaching and Learning Mathematics“.

Now I applaud the organizers of this who went out to the literature to find examples that others have shown of practices that work. Unfortunately this article was just a dog and pony show to me. Students were asked to take a picture of something in their neighborhood and write a word problem about that picture. This example is only on the very surface of what culturally relevant pedagogy is about.

But this post is not about teaching math with culture - its about 21st century skills. I keep seeing the same kind of dog and pony show type snippets in the media and literature about this process. Teaching these kind of skills is not a one time lesson, or something that you can do once a week. It needs to be an integral part of your classroom, your assessments, and even the school culture to really take root.

Just like anything else we need to work to make this kind of learning explicit to students, develop strategies and give them distributed practice in order to have these experiences take root.

The robotics club I used to run had this kind of culture. We often entered up to 9 robots in competition, each with very different goals and framework. When one team ran into a problem or a challenge I encouraged them to use the whiteboard and other teams to help them brainstorm solutions. Students had to take a variety of factors including cost, feasibility, materials at hand, limitations of construction, and difficulty to implement in code for every project they took on. This collaboration and communication combined with the reasoning the students engaged in is a good example of how 21st century skills were encouraged in that setting.

Do you have any great examples? Or even good examples? I would love to collect a sample and put together a paper of my own :)

Thursday, November 20th, 2008

Another voice for enriching early CS education

Joanna Goode recently published a Viewpoints article in the November 2008 issue of the communications of the ACM. The article entitled “Reprogramming College Preparatory Computer Science” can be found here.

Joanna does an excellent job of defining the problems facing K12 computer science, and by extension computer science within the United States. She has done extensive research (along with others) into why we see such low participation rates by women and minorities. She finds that

“low participation rates can be attributed to
a misunderstanding of the computer science discipline by students, parents and educators alike;

a minimal number of computer science role models who are females or minorities;

a representation of the course as difficult and boring;

a set of teacher and counselor belief systems that make assumptions about who would do well in this course;

a deficiency of student support outside of the classroom;

a shortage of qualified teachers;

a lack of availability of the course in high-minority and high-poverty schools;

and weak and even disengaging pedagogical approaches in the classroom setting.

My favorite quote from the paper, is on the 3rd page and ACM even put it in one of those large font boxes - “We must provide students an engaging curriculum that goes beyond programming and represents the imaginative, creative, collaborative, and complex character of computing.”

She talks about “Maintaining the rigor of AP Computer Science is important, but the course should also be made relevant, meaningful, and engaging for a diverse body of students.”

I think that everyone who reads this blog is at this point nodding their head ‘yes’. Now comes the harder questions - how? and by whom?

My first instinct upon reading this was “so I need to share some of the things I do that I think are great”, and the more I thought about this and the more I started typing I realized that I was the problem, and it stems from that statement. I am often making up assignments and examples for my own classroom based on what I think that students think is important.

So my question to you, my readers as well as to myself over the next few days is - how can I measure what my students think is important and relevant? I am considering some kind of electronic survey (so I can get a diverse sample) and I am wondering if I can somehow “narrow in” on particular topics (the way your eye doctor asks you lens1 or lens2?). Keeping in mind that I want to highlight particular aspects of computer science (see last post) I need to really think about what kinds of questions I would ask in order to get really interesting results.

A little help here? What would you ask?

Thursday, November 6th, 2008