Recent Popular Posts

May 18, 2014

Programming (6): Closing survey: What children felt they learnt

The last day of the short camp was spent watching Black Stallion. I decided to use this time and get to see their work (for the programs I put up) and also spoke to each child to do a closing survey of their learning in the week. We also saw each others work at the end of the movie which was a nice way to complete the program.

Here were three questions I posed to the children:

Q1) Do you feel you learnt something new? If so, what is it?

  • How to make something work on a computer.
  • How to make something work.
  • I didn’t know Scratch. I know so many things in it now. I can move characters in different ways, change looks, add sound, etc.
  • I can make my own things, sounds, movements I want, etc
  • I can do my own story and make the characters talk on screen
  • To open an computer and work on it to do something useful.
  • To have a conversation between two people.
  • I learnt how to play games, then how to make my own and save it so I can see it later.
  • I didn't know how to open a computer. Now I know a lot!
  • I can make the cat small, big, color change, change it into other things. Do many things.
  • I learnt many things to do in scratch.
  • I learn many things I did not know before.
  • How to paint on a computer.
Q2) What is programming to you (if all what you did last week was programming)?

  • To make a object walk, talk, changing location.
  • Game - how do we create it yourself.
  • To get something done.
  • To make something happen on its own without having to do it step by step
  • To be able to do something.
  • To make two people talk, turn, joke, etc
  • On the computer to do something new.
  • To be able to do something new on a computer is programming.
  • To act, drama, dance, singing, movement, etc
  • To be able to make a story, actions, movement from one place to another
  • Make a computer change things and do things, making games.
  • To make a drama, do be able to do something.
  • Using Scratch!

Q3) Did you debug i.e. find something that was not as you wanted and fix it yourself?
  • Pendulum movement and sound was not in sync and I figured out the issue and put it in sync.
  • Actual pendulum was going only in one direction (right). I was able to identify what went wrong and correct it.
  • Pendulum - repeats I had initially got wrong. I saw the results and then corrected the program.
  • I was spelling words incorrectly. I now put it in an editor run spell check and then use the text in my stories.
  • I did, but I don't remember. I saw the results and found out what was wrong and fixed it.
  • If two people talk and something is out of sync e.g. both talk together I am able to find out why and correct it with putting the correct number of delays.
  • I saw what others did and did the same.
  • No
  • No
  • I did do it, but now I don't remember exactly what it was.
  • I modified the default cat into what I wanted
  • There was a problem and you helped me fix it. I think I can do something like this myself.
  • No
  • I painted something wrong and corrected it.

Q4) Do you feel any different when you use a computer now than you did a week back?
  • It feels different. Instead of just playing a game I will make things on my own. I also appreciate how much effort it has taken people to make all the programs that we use.
  • I feel different. I can do things myself now.
  • I will only spend some time to play at the computer. Now I find the computer interesting, because I can do things myself.
  • Its different. I had done drawing. I feel like I can do a project on it.
  • A little different. I know a lot about how the computer itself does things.
  • I used to play games and sums, this is a different program. The computer feels the same.
  • It feels different. I used to do maths, here I can do many different things. It feels more creative and interesting.
  • It feels different, but I can't explain why.
  • It feels different. I used to play games, I now know scratch and I find it interesting.
  • I feel different. I used to play earlier, now I do things.
  • Its feels different. Instead of playing games I feel I am doing something constructive.
  • I feel the same.
  • Its different. I now like a computer.

Programming (5): Sounds, etc

Between attendance and the very varied age group the difference between what the children were doing quickly escalated. Also once the children found that there was a library of characters to choose from the children spent a lot of time on that. Once some of the children found sound and recording all bets were off!

Though scratch is a wonderful program to introduce children to the idea of programming there is a fair bit that can be done without scripting and it is hard to keep children focused. I just accepted that different children were going to do different things e.g. the 2nd grader was quite happy with using scratch as a paint program. Some of the vector graphics stuff is pretty neat. What I did do was try to figure out what each child was doing and pick up the level and keep asking them to show me what happens when I click the green flag (play button). This I found was one thing that got their attention back to what happens on its own. Here is one that came up from this line of questioning:


I also asked the 7th graders to build a calculator which they tried and introduced them to searching for existing programs and modifying them. In all honesty, most people modify programs rather than write it from scratch (pun intended) and I wanted them to be aware of this as well. Here is the last one that uses conversation and sounds along with a simple visual.

Programming (4): Go find (sharing), using repeat

Go Find (and sharing): After a focused class of doing something concrete it was time to explore again. I asked the children to try to figure out 10 things they had not tried out so far among Motion, Looks, Events and Control.

We then had a sharing session. I started with the youngest children to gather their inputs and then moved to the older children. Some of the children also interpreted this as find any 10 things so the session also moved a little bit to other aspects like sound. I gave an example of each of the things the children had found. One of the things was saying things where I created a conversation between two people. This really caught the fancy of the 5th graders where they could make scripts and stories with people talking. Here is one that a child made in time that involves conversation (though its impossible, as its under water :))


Using repeat: At some point someone brought up (what I was waiting for) repeat. I showed the same and talked about how they could now simplify what they had done before.

The 7th graders were quick to pick it up and modify their script, though they had to debug some and I pushed up their challenge. Can you make a pendulum that like a real pendulum decays in time. This was an interesting discussion including impossibility and a really long script. We talked about what algebra means and what it means to have a variable. Here is the decaying pendulum that one of them made that decays (80%) amplitude each oscillation.



Programming (3): Acclimatization, First Movement

The classes more or less followed an opening and closing pattern i.e. alternating open activity and focused activity 

Acclimatization: It was important to get children not be intimidated with scratch and as a first step we installed the starter projects along with Scratch2. In the first class I asked the children to play as many of the programs as possible and see if they can figure out what the programs do. This gave some idea of the capacity of scratch.

Making the cat move: In the next class I focused on just a few things under Motion (go to (0,0), move 20), Events (start) , Looks (switch costume to)  and Control (wait 1 sec). The demo is the one that should come up below of making a cat walk forward and then back using these steps repeatedly.

I asked the children to see if they could repeat the exercise on their own, but without changing the costume (simplification of the program). Most children were able to make the cat move a few steps.

I realized that in a way we were introducing the entire Cartesian system for children and reminded the children in the 7th grade about their graphs and algebra. Working on this can be great reminder for children who have had some introduction to positive and negative numbers.

I found a couple of things interesting:
1) Initialization of location was missed by most kids and every time they ran the program the cat went away :).
2) One of the children noticed (and others had done the same) that the cat was moving one step less than the number of steps he had put in. This was great as it helped clarify the need for the wait statement and that the computer can do things really fast and the wait statements are there for us to be able to see them.

For the 7th graders I felt that I needed to up the challenge and asked them to make a pendulum that would swing back and forth. They needed to figure out that there was a rotation they could use. They all made the pendulum swing just once :).

I've tried to embed the first program below. If you can't see it (install flash and) go to this link. The link also gives you direct access to the source code (look inside) which is awesome about scratch. 


Programming (2): The Setting (Context)

Hardware: We had recently upgraded the computer lab at Isai Ambalam School with 7 new desktops (with Ubuntu 14.04 LTS) and used the money we saved (from not buying Windows, Office, Kaspersky) to buy another machine and a half.

Software: We then tried to set up the latest scratch this is non-trivial. Ubuntu software center could install scratch 1.4, but not Scratch 2.0. But, given this is what the projects available online are in and that I wanted to upload some of the work of kids we went ahead. Scratch 2.0  requires Adobe Air. (Adobe Air is no longer supported for linux, but since Scratch is into open source, if things go bad, I hope they figure this out).
This post worked more or less. 
You will need to download:
1) Adobe Air http://airdownload.adobe.com/air/lin/download/2.6/AdobeAIRInstaller.bin 
2) Scratch2 to install after Adobe Air: http://download.scratch.mit.edu/Scratch.air
3) Scratch starter projects http://cdn.scratch.mit.edu/scratchr2/static/__18d68025b0cbb09d8a447f8438a0bc57__/sa/Scratch2StarterProjects.zip

What I needed to do:
1) You need to use a login that has a password set so you can use sudo correctly.
2) Start a terminal
3) Go to the directory where you have made the downloads and change the permission to executable
chmod +x *
4) I used
sudo LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu ./AdobeAIRInstaller.bin
as running without sudo got stuck at password phase and didn't respond to the correct password.
5) Install Scratch.air through the Adobe\ AIR\ Application\ Installer
sudo Adobe\ AIR\ Application\ Installer /Scratch.air
You need to give the full path for Scratch.air above.

Time Frame: The summer camp was meant for children with learning difficulties to have a refresher so they do not come back fresh at the end of the break with reading, writing and math. Only 15-20 kids were coming and most of the teachers were out of station for the holidays (hence my opening :)). Of the 4 hrs they were here I got two batches of around 7 kids for an hour each. The attendance was not perfect, as it was the puja season and most kids had some festival at home/temple and took one or more days off. In all, I got 6-7 hrs with around 13 kids.

Grades: I had mixed age group children. 
7th Grade complete - 3 children
5th Grade complete - 3 children
4th Grade complete - 4 children
3rd Grade complete - 3 children
2nd Grade complete - 1 child

May 17, 2014

Children Programming

I have been considering introducing programming to children to give them an opportunity to have a different kind of interaction (programmer vs user) with the computer and to give an opportunity for them to develop their logical and problem solving skills. I also felt that programming would help in improving a little bit of their English as it may get them to start thinking of breaking down a task into mini steps with a program like scratch and sticking the code together.

I was speaking to a fellow teacher who introduced me to:
and a paper by him that captured quite accurately what I had in mind.

The issue in a school is of course when to do it and in what context? I saw an opportunity when a few children at the Isai Ambalam School were coming for a summer camp for 8 days in May.