« Computer Science Certification-Why We Need to Care | Main | Building CS in South Carolina »

Summer Learning for Teachers

Many people believe that teachers have it easy in the summer since they have summers off. But, many teachers have very busy summers. Some teachers need to work another job in the summer and many teachers take workshops and go to conferences in the summer. I saw many teachers at CS&IT and NECC. In fact CS&IT had the largest number of attendees ever.

I have been teaching workshops for high school computing teachers the last few weeks at Georgia Tech. I have enjoyed showing the Computing in the Modern World teachers PicoCrickets, Scratch, and Alice. Teachers enjoyed creating animations and games in Scratch and Alice as well as learning kinesthetic activities to teach computing concepts (like those from CS Unplugged and Berkeley's KLA group). See:

http://csunplugged.org/

and

http://www.eecs.berkeley.edu/Research/Projects/Data/102187.html.

This week I am teaching Beginning Programming teachers using Institute for Personal Robotics robots and Media Computation in Python. Today they were working on mirroring images and some of the teachers got very excited when they figured out how to mirror top to bottom or how to create an image collage. See:

http://www.roboteducation.org/

and

http://coweb.cc.gatech.edu/mediaComp-teach.

Some people have claimed that we shouldn't teach programming, but just computing concepts in order to attract more people to computing. I very much disagree. Getting a program to work gets people excited about computing. Learning about computing without doing any programming seems like learning about science by just reading about it and not actually doing any science. One of my daughters loves to do experiments, but came home from elementary school saying that she hated science. The problem was that they didn't actually do any science, but only read about it.

Barb Ericson
CSTA Director

Comments

Hello,

I can see from your post that you are very application oriented. I however may be a bit biased. Below I try to separate the theoretical computer science bias from my post.

I have to disagree with your last paragraph. I am not a person who believes we shouldn't teach programming. However, I am a person who believes that CS is not about learning how to program. CS is the study of problem solving. We don't need a programming language to solve the most complex computational problems.

Teaching a course in computation with out programming is nothing like the science example. All we do when we program is implement algorithms. To implement algorithms all we would need is a human willing to write them done. Algorithms in computer science is like the equation in mathematics. Do people who study math not feel like they are doing mathematics when they are writing down equations and reading about it in a book? I think your example fits better with the notion of an application developer, which may or may not be a computer scientist.

Just a side question, but your example also makes CS out to be an actual science. Do you believe it is?

The problem is that society has clouded the notion of computer science with the
high spread of technology. Sure one cannot have one with out the other, but without
the study of problem solving in CS programming wouldn't exist and nether would the technologies we use today. Again all technology is the application of CS.

A CS course should teach just that problem solving using computational techniques and paradigms. Programming is not CS and CS is not programming. We really need to make sure we keep them very separate. Programming is a tool used in the applications of CS.

Now I believe that a well structured course would -- keep in mind that I am talking about a intro to CS course or some other survey of CS course not course over a specific topic -- would spend the bulk of the time covering actual CS and then incorporate an applications of CS in each section covered. This is where the programming would be discussed. Then if students of CS are more interested in applications of CS they would take a course covering such topics. A clean separation needs to be established.

I think this is enough for now and sorry for being a broken recored, but I really want to stress the separation discussed above.

Thanks for your time, believe it or not, but I did find your post interesting and helpful.

Harley D. Eades III

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)