Course Introduction & code.org

CS 1150 PEEE — Spring 2017

Day 1: Course Intro; Getting started on code.org

Logistics

Course Introduction

Course Success

Our goal is to be successful? What does that mean? What can we do to make the course successful? (Discuss student responses to the following.)

Programming

The major focus of this course is programming, in a context conducive to the use and/or teaching of programming to K-8 students. So, ...

Partnerships and Pair Programming

Most of the learning activity in this course is to be done in partnerships, in one case a group of three (or if an appropriate person is already familiar with programming, that person might be on their own). I want the pairing to occur primarily on the basis of preferred teaching grade level. The first step will be to have you indicate your preference about grade level on the white board. Which level, K-4 or 5-8 are you most interested in? Please print your name legibly on one of the two areas.

(When done, determine the group with the odd number of members and ask,) Anyone in this group already know programming?

Now, please standup and split yourself into groups on the side of the classroom where you name appears. Please look around in your group. I will record the levels and associated students and send out a message asking your preferences for or against pairings or triads within the group. From the information I receive back I will form the partnerships (probably Friday or over the weekend).

Wonderings/comments?

The code.org Course

The code.org learning activity introduces you to programming in a limited context. It doesn't have the freedom you'll eventually have. That should limit the complexity you encounter.

You are to complete the code.org course individually, i.e., each person logs in and does the work. You are, however, allowed/welcome to sit side by side with another person to work on it if you wish. It is important, however, that each person does all the coding on each lesson and follows along on the unplugged activities.

Bring up the code.org assignment. Have students signup, join my course at code.org, explore, and start work on the course.

Next Time:

And final questions? comments? wonderings?   . . .   See you Thursday.

Day 2: Work on code.org Course

Logistics

Laptop Use in ITTC 328

If you have your own computer you can ignore this. If you need to use our laptops, please note the following.

code.org Course Work

If you have questions, please ask. Work on the the course. Remember that you are expected to include this experience in your first programming activity and reflection report (PARR) assignment.

If you wish you may work side by side with a classmate (or partner) but both should be working on their own computer. Cooperate rather than copy!

Next Time

Questions? Comments? Wonderings?   —   See you Tuesday.

Day 3: code.org Experience, Partnering & Snap! Exploration

Logistics

code.org Experience

First, I'd like you to share any comments or questions you have. If you had trouble with a particular lesson or idea or set of lessons please let us know. Any and all questions will be appreciated. Reactions to the course are also welcome. So, Comments? Questions? Difficulties? Wonderings? Reactions? ...?

Next, I'd like to provide some prompts for you to discuss.

In my mind, the code.org course introduces programming and illustrates many aspects of it but the activity is more puzzle solving than programming. It doesn't quite give you the real feel of programming. Hopefully, that will change a bit with Snap!.

Partnering

Most of you have found partners, but some have not. What I (think I) have is:

Have students identify themselves. Ask, "Any new partnerships?" Note that students have until the end of class to identify partners. Those unpaired at 5:00 pm today will be randomly assigned a partner (in same level group if possible).

Problem Solving and Programming

Programming is a problem solving activity. I tell students that when you are producing a program to solve a problem you have to solve two problems—the problem itself and producing a program that allows the computer to solve the problem. It is similar to some other activities. For example, when you want to write a research paper you have to: find all the information, decide how you want to organize it, etc. and then you have to actually write the paper, proofread and correct it, etc. (Ask: Can you think of other kinds of problem solving that are similar to these?)

My view of learning is that there are many contexts that involve or require problem solving. The way we make students into better general problem solvers is to present them with problems in a variety of different contexts (programming, report writing, devising science experiments, solving math "word" problems & puzzles, working on local social problems, etc.). As they work multiple problems in one context they get better in that context and their brain formulates some patterns of problem solving activity. When you present students with a new context, they don't naturally see the connection between the two contexts. But as they solve a bunch of problems in the new context, a set of patterns is developed for that context. Eventually, student brains will see the similarities in the patterns in each of the contexts and start formulating more general patterns. This can be helped by teachers/instruction by explicitly addressing the ideas of problem solving in the different contexts.

Teaching and Learning Programming

Remember that my goal for you is that you be able to support students as they program (develop programs). What might that involve? Perhaps:

Time Left?

If so, have students explore Snap!.

Next Time:

And final questions? comments? wonderings?   . . .   See you Thursday.