[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [seul-edu] Language to teach 10 year olds



It seems that the accepted premise here is that 10 year olds are ready 
to learn abstract ideas about logic, or that teaching concepts involving 
a necessary jump from the tangible to the abstract would be beneficial 
to them.

I don't disagree with this idea, but I do think that jumping straight 
into a programming language would not be the route to take.  I would 
argue that the more a child learning concepts of abstract logic has to 
concentrate on things like syntax and structure, the less they will be 
able to understand of what they are doing.  It seems to me that if one 
is going to be teaching the basis of computer programming, i.e. logic, 
then letting them concentrate 100% of their time and effort on 
understanding logic would be the best introduction of all.

Creating a program that visually represents what a computer program 
does, and which gradually moves them from the tangible world around them 
to the abstract world of computer languages seems to be the best method 
I can think of to teach programming.

Here's an example of what I mean:
In the first stages, the student could be doing something like an 
assembly line; they have to get all the machines on the line running 
correctly, in the correct positions on the assembly line, and then run 
it.  During these early stages, simple if/then logic trees could be 
introduced and reinforced.  Later, add on for loops, switches, etc.  
Each successive 'level' of the program could introduce another logic 
concept, and then reinforce them through tangible situations that 
students can visualize.
Once they mastered the ideas in a tangible way, then the program could 
introduce the same ideas in the abstract.  Introducing the if/then 
statement as an abstract idea representing something they are already 
familiar with.  Instead of using something tangible, like a faucet or a 
light switch, they   would actually be using the statement to do 
something tangible.
This would be a perfect preface to a programming language.  Instead of 
having to understand the concepts behind programming as well as trying 
to master the syntax, they can concentrate on learning the syntax.

The 'program' doesn't need to be a computer program at all.  It could be 
a series of games, or pencil and paper based logic training (although I 
think all three would serve this purpose best)... as long as it's 
introducing the concepts and reinforcing them separate of any syntax or 
program structure that they may need to learn later on.

Trying to combine the task of learning the concepts as well as the 
syntax may have the effect of making programming uninteresting because 
they cannot handle both tasks; it may turn them off to programming 
because it seems too hard, too confusing, or simply, is not made 
meaningful to them.