Teaching My 5 Year Old Daughter To Code
in-the-attic.co.uk
in-the-attic.co.uk
My Son is 2 yrs old, and I want to start teaching programming at 5.
2-3 work on reading 3-4 work on basic math 4-5 work on basic algebra (w/tools like dragon box of course)
5+ start programming strat - find an open source game - start playing it with my son - after a while start modifying the code with my son
To sum it up in one sentence... get your child emotionally invested in the environment before trying to show him how to manipulate it.
It might backfire. In many (but not most) cases the child actually gets to resent this kind of "education" instead of loving it.
It's great to want them to love reading books, love mathematics, love music, love science and encourage thinking, but a life-long passion for these good things is only guaranteed if they choose them.
Postpone your plan 3 years (5-8 instead of 2-5) and IMO it will be 10 times better.
I enjoyed it too, my only objection is that it might actually put them off entirely instead of making them love it if it's presented to them when they're not ready (and I think 4-5 is too young).
Rule #1 for me is to never assume what my child is capable or incapable of learning.
Rule #2 do not force learning and figure out how to make it enjoyable.
I have already started teaching him how to read. Most mornings I ask him if he wants to play letters. If he says no we do something else. If he says yes I practice with him. It started out learning to recognize the word CAT. After one week it turned into learning about 12 words. Now it consists of practicing his vowel sounds. Typically we play this game for about 5 minutes. I always do this in the morning because that is when he is the most open to learning. We use a dry erase board so somewhere around the 5 minute mark it degenerates into doodling pictures of cats, dogs, mommy and daddy. Sometimes he wants to try and trace the letters on the board. The best part is, even when letters is over and we are drawing, he is still learning. So I do not believe that I am in danger of turning him off to the joys of learning.
He is already playing dragon box. He can play up to the 13th level by himself at which point he starts asking daddy for help. He usually asks for daddy's phone about once a week to play dragon box. His favorite part is when the dragon gets bigger. Then he yells "It got bigger daddy! :)"
Assume nothing, try everything and you will discover amazing things.
I typically take the Feynman route... http://thenearbypen.blogspot.com/2009/11/feynmans-father.htm...
You'd be surprised how much of the 'complicated' stuff sticks, and comes back at a later time when they have an Aha! moment and it all clicks.
By the way, I've learned sooo much doing this, e.g. I've recently discovered that Pluto isn't a planet anymore... :p
VERY visually interesting and easy to make things happen
Only runs on xbox and windows
I always told them like: "Kodu is hungry and wants to eat some apples", or "can you help Kodu find X", etc. Kodu (the robot) became kind of a character/friend they empathized with, which eased having their attention and interest.
Only downside I saw was its cpu and memory consumption.
It helped that I was working with a group, so the kids having more trouble could see the neat things some of the others were doing to get them motivated.
By 7, they should be able to work with pretty much all the fundamental tools in Scratch and you can start introducing them to higher order constructs.
I've found that for young kids the social aspect can be very motivating. If she has friends of a similar age, get them all started on it and they'll soon be showing each other what they come up with. If that doesn't work, then you provide the social reinforcement :)
For me, I was a bit older [6th-8th graders], but my social experience was FIRST Lego League [FLL].
Basically, the FIRST robotics competition also sponsors competitions for middle schoolers to build LEGO robots using the Mindstorms kit [when I did it, it came with the yellow RCX "brain", now they use the NXT and some more advanced sensors/motors].
The social aspect helped bind our team's programmers & "hardware engineers" together. I was always terrible at building things w/o direction, and some kids weren't great at programming. However, when you all have to work together, you start looking at each other for guidance.
Seeing the robot take shape eventually led me to learn about gearing and transmissions.
Other kids weren't great at programming, but when you see your hardware do wildly unexpected things, you stop and ask "woah, wait, why did it do that? [programmer], show me why it did that!" -- When they see their hardware misbehave, they start to learn what the power of software really is, and vice versa.
That and it's a great precursor to FIRST, which I regrettably never got to participate in.
Move the Turtle http://itunes.apple.com/us/app/move-turtle.-programming-for/... ($2.99)
Similar to the Logo programming language another commenter mentions. Starts simple, but goes into loop solutions a little too quick.
Cargo Bot (free!) http://itunes.apple.com/us/app/cargo-bot/id519690804?mt=8
Cargo Bot is much more visual, little or no text, but I think they dive into recursion much too fast (for 3 star solutions that is).
Bee Bot (free!) http://itunes.apple.com/us/app/bee-bot/id500131639?mt=8
Just discovered, also for the really little ones. No comments yet.
http://www.techwithintent.com/2012/07/5-best-ipad-apps-to-te...
A longer list with resources for older kids:
There's sooo much good stuff for the little ones on the iPad that's really educational. Android is simply lacking in that respect (for now).
Case in point, I downloaded some apps, and without any intervention on my part she taught herself how to write letters (little skywriter), do simple math (monkey school math), work with sets (firstapp.com peeps), draw lovely artwork with commentary (doodlecast), learn about physics (amazing alex) etc etc.
Nothing better than having her come over to me and "explain" how things work.
If you think an iPad is going overboard in terms of expenses, a lot of this stuff works on the iTouch as well.
And this looks promising too (more like Cargo Bot) http://sourceforge.net/projects/andmaz/
I've been at it 2 weeks now trying to teach my grandma how a computer works. She now understands how a processor works, what is a software program, etc.
I made my grandma dictate code to make me dance giving her exactly 4 commands (moves) I could take (I am a 2-bit processor ;) ). We had fun! Ha. So she coded. No computers. I could also explain processor speed, n-bit processors, different instruction sets, instructions that need operands, etc. Of course I used none of these words.
The OP's app looks to be like Logo Turtle which was taught to me as a child in the UK c.1984. Indeed IIRC most schools in my area had this and some [later?] had a real-life 'turtle' that you could move around (connected by a long Centronics cable I think).
There was a toy called Big Track (http://www.amazon.com/gp/product/B0035IZ85G?ie=UTF8&camp... : aff) that allowed small sets of serialised instructions to be entered. Robosapiens are probably the modern equivalent.
I never once realized I was programming! I thought it was just a dumb game to make a turtle move. And I remember always wishing I could learn how to program a computer at that age. If they had told me that's what I was doing I probably would have been more interested.
I guess the moral is to not abstract too much of the system from the child. Maybe they want to see variables, and print statements.
The six-year-old can read, but the four-year-old cannot. I'm looking forward to trying this later with the older daughter.
Eye -> Instellingen -> Taal -> Click on dropdown to open it. Scroll UP to English (silly Dutchies) -> Press Enter
You may also want to adjust the Scriptdefinitie field to en in a similar fashion. I left it on nl for the samples, will update it later once I've checked them out (and not a problem since I'm Dutch anyhow).
I think this tool fails a little because of the language dependency. Move the Turtle is more language independent, and Cargo Bot (links above) needs no language at all. Actually, I LOVE cargo bot myself, very challenging.
How about, instead, developing reasoning skills and the ability to make their own decisions and then actually letting them decide what they want to do? Crazy, I know!
Do you have children? I get the feeling you're talking from a theoretical perspective here... They're sponges. I say we "soak 'em" don't let them dry up.