designing a class

I've been thinking a lot lately about the teaching of programming. 

Next year, I'm hoping to teach an online programing course. (Hello future students, if you happen to explore these archives.)  I have a good book, which will work well as a textbook.  We can follow the chapters and do exercises together.

How can I add to that? What can I do to make the experience more valuable?  Social media and some course management software will let me do more than simply say - read, do the exercises, study for the quiz, any questions on the chapter?

I've only taken one formal programming class - in Java, almost ten years ago, and it was very badly taught. Everything else I know I've taught myself or have learned in a rapid-fire workshop or conference presentation. So I don't have lots of traditional experience as a teacher of computer science. But I have taught lots of writing and literature classes, and I've taught digital media. And I love teaching.

Here's my current plan... Let me figure out the arc of the entire semester, first.  Where do I want them to be at the end?  What do I want them to understand?  What do I hope they will discover? What will they be able to make and do?

Once I have those notes down for myself, let me think about the rhythm and structure of the units, the parts that will make up the whole.  I want to create some traditions, some questions and processes of thinking that we will return to.  I want to layer some ideas, some play, some discussion to extend each topic.  I want to have some goofy fun.  I want to find some inspiring examples.  I want them talking to each other, and creating some projects that they'd never expect to find in a computer class.

So that's what I'm trying for.  And the outline and a sample lesson are due online next week. 

here:

near:

my work elsewhere:

my work for sale:

beside myself:

a mini blog made of my recent bookmarks (via del.icio.us)

tag cloud:

Creative Commons License
This blog is licensed under a Creative Commons License.