PDA

View Full Version : Kids Programming Language



cairnswm
25-03-2003, 07:46 PM
Ok this DWS stuff has gone too far!

This evening I started teaching my daughter how to program. She seemed to understand and was quite amazed at how the computer could do her sums for her.

I need to say that my daughter is only 6!

So I've started writing a simple programming interface for her, using DWS of course as we can't let our little girl be influenced by the laziness of Basic and the uglyness of C :)

Anyway - the question is - how do I make it easier for her. The concept of String, Integer and Float are meaningless to her. I considered pre-defining a few items in every program - obviously that she couldn't see.


Type Word = String;
Type Number = Integer;


But as Word is already a predefined type in Delphi/Pascal this could confuse her later.

PrintLn - The stdout command in DWS is also difficult for her:

Procedure Say(Value : Variant);
Begin
PrintLn(Value);
End;

Would be easy to implement so that it is easier for her. My concern is that it will not help her long term.

My next step is to create a simple DirectX interface that allows the creation of characters and commands to make the characters walk around etc.

What do you think the best way to teach a young girl programming is?

Harry Hunt
25-03-2003, 09:23 PM
You might want to take a look at Logo.
It's a programming language that was developed to introduce kids to the world of logic and algorithms. It is quite powerful but still not too complicated.... I don't have kids of my own, so I can't really say if Logo is too complex for a 6yr old, but that shoudn't keep you from at least looking at it.
I'm sure you have heard of Logo and turtle-graphics which is kinda like the DirectX interface you want to code.

If you insist on writing it all by yourself, i wouldn't worry too much about long-term effects... what is really important about programming is understanding the logic behind it. And if she takes her first steps in your customized programming language, switching over to Pascal or whatever will be a breeze for her.
Visualization is a good way to introduce kids to the idea of programming, as long as you don't exaggerate it.

Karaman
25-03-2003, 10:27 PM
Hi, first I wish many health and long and happy life to your daughter

Now, here are my thoughts on your question

1. Kids like to play and to create via playing
2. If you want your daughter to become a good programmer first teach her how the computer works (dont let her open it and hide her dolls there :) ).
3. Rule No1: use small steps. (you dont want her to get bored or be destracted from real life or become computer addict or a gamer )
4. Rule No2: be persistent. (even at 6 a kid should not mistake processor with RAM or harddisk )
5. Rule No3: make her learn math
6. Rule No4: make her listen clasical music (Mozart is best for brain)
7. Rule No6: make her read a lot books (yeah, books kids like to be read aloud, made her read them alone) (she will get used to lost of Documentation that way later :) and she will learn TO THINK
8. Rule No7: play with her logical games, ask her about her opinion and argue with her on it until she learns to defend her opinion logically. (Why is the Kermit green? )
9. Rule No8: Dont let her watch too many TV, only child films, but not education programs (unless they bear the names of "wonders of physics", "wonders of chemistry"). Do not let her watch too many comics on Cartoon Network. Better find her a black-and-white (YES, you heard me) comic book and give her some colour pens and ask her to colour the heroes as she likes (thus you stimulate her imagination). You can give her a white paper with many pensils (but she will learn to neglect the competion that way, which is good by the way, she will become brave programmer )
10. Rule No9: teach her sport is the best friend of a programmer (you dont want her to become fat or get various diseased because of excessive sitting before the screen, do you)
11. Rule No10: teach her to be honest (Who says Bill Gates tells the truth)
12. Rule No11: make her learn some foreign language ( japanese is good, although very hard, but the best comp games are written by Japanese)
13. Rule No12: Make her be very responsible, be strict in the years 7-14, but when she enters puberty also be her friend, but not overprotective.

I think that the above rules will give you the general idea. It still depends on your dauther's character and the way she develops it. However do not let her learn from life and the street. Be the first with her mother to answer any question she has, even if you will have to read 100000 books on the subject, and if she is old enough ask her to find the books and read them either alone or together with you and/or her mother

Now the real challenge - os, games, internet and programming

Rule No.1 - How the computer works
Rule No.2 - How to use OS
Rule No.3 - Internet (be advised and use protections, and tell her what to NOT DO :) (dont let her experiment with viruses, unknown programs)
Rule No.4 - Games - dont let her play too many games and select the genres and games carefully - some are very headache (like FPShooters)
some are very addictive (Froggs and tetris)
Rule No.5 - Programming - when she asks HOW, DADDY be there and answer with SIMPLE asnwers, it the answers are NOT SIMPLE, then tell her to accept things as they are

for example:

she asks what is INTEGER
tell her that for now with this word she can name all numbers like 1, 2, 3, 4 ,5 , 6, 7

when she learns about fractions like 1/4 (of an apple) teach her to use mod and div

when she learns about 1.99$ tell her about float to name numbers like 1.99 :)

!!! see why math is important !!!

Tell her that there is nothing complicated in the computers and programming. There are just many simple things that require patience, patience, patience, some work, some creativity, lot imagination.

Tell her she can make the computer do everything she wants if she knows how to make the computer do it.

MOST IMPORTANT: always explain and ISPIRE HER IMAGINATION AND CURIOUSITY. She must want to know how the things work. Thus she will never give up and will become great programmer no matter the field (OS, Games, corporative software

TEACH HER PROGRAMMING is BEST in LIFE, but that ENJOING and GETTING EVERYTHING from LIFE is BETTER.

About languages : your choice (where you are best at)
BUT
1. she must learn to respect all languages (she will always be prepared)
2. there is no C or PASCAL (there is BOTH C and PASCAL)
3. do not forget HTML, javascript, JAVA
4. PHP, perl or ASP (PHP best i think, but others are used also)
5. do not forget GCC clones (she can always afford free Linux)
6. BASIC is popular (but too simple, we are no idiots, unless BOSS says so)
7. if she can master ASSEMBLER, !!!!!the world will be in her feet!!!!!!!

do not think that the above rules are TOO HARD for your girl. after all SHE DESERVES THE BEST she can do and the best you and her mother can give her.

and if you want her to be good educated learn more about the Russian education programms (the year plans for science math and literature will give you the best idea how to teach your daughter)

and dont think that she will have no free time, there will be a lot

Always Remember RULE NO1: small STEPS (she is just 6 years old)

cairnswm
26-03-2003, 06:54 AM
1. Kids like to play and to create via playing

Loreley is a very creative girl. She loves sitting and drawing/painting. I think she will enjoy creating programs on the PC and this will be playing to her.


2. If you want your daughter to become a good programmer first teach her how the computer works (dont let her open it and hide her dolls there ).

She has been learning to use the PC since she was 18 months old. I probably need to show her waht files are so that she doesn't dmamage my stuff and can save/load her work.


4. Rule No2: be persistent. (even at 6 a kid should not mistake processor with RAM or harddisk )

At the moment she is clever enough to know what the screen, keyboard and CD are. She isn't going to understand enough to learn about CPU/RAM yet.


7. Rule No6: make her read a lot
She is only just learning to read.... She will read a lot when she knows how.


12. Rule No11: make her learn some foreign language
I am english and her mother is Afrikaans (we live in South Africa). She is already learning two languages.



Rule No.1 - How the computer works
Rule No.2 - How to use OS
She has taught herself that :) She loves using the windows interface and the educational program that are available are great for teaching the use of mouse and keyboard. My 2 year old son can use the mouse reasonably well.


Rule No.3 - Internet
To use the internet you need to know how to read. This is probably only relevant when she is about 8 or 9.


Rule No.4 - Games

she does :)


Rule No.5 - Programming - when she asks HOW, DADDY be there and answer with SIMPLE asnwers, it the answers are NOT SIMPLE, then tell her to accept things as they are

If you ask a 6 year old to accept them as is she will ignore it. She needs to either understand what it does or see the results of what she does. She needs a visible result to her actions.

When did you learn to program and how did you learn?

I learnt BASICA when I was about 12. It took me almost 9 years to move to Pascal.

Harry Hunt
26-03-2003, 08:45 AM
See what she enjoys doing the most and focus on that... You shouldn't overload her with information at such an early age.
Maybe look at other things she likes to do, e.g. if she plays with Legos or whatever, combine that with a little programming.
I think it's too early to even think about introducing her to actual programming, because that would require that she understands the commands, the math and everything that is related to programming. She will learn that soon enough at school.

Here's how I learned programming: My dad has always played around with computers but I wasn't interested in them in particular until he bought an Atari. I really enjoyed playing games on the Atari but that was pretty much it. I've seen my father write programs in GFA Basic on the Atari and of course he showed me a couple of things but again, I wasn't all too interested.
When I was about ten years old, my father bought a PC and installed a Windows version of GFA Basic on it. I guess the reason why this took me in its ban was because it supported graphics. So for almost a year I wrote extremely simple programs in GFA Basic and enjoyed it a lot.
When I was about 12 or 13 years old, I had one year of comp-sci at school and learnt the basics of DOS-Pascal programming there. To me, using DOS Pascal was a downgrade since it did not easily support graphics. Then my older brother was given Delphi as a x-mas present, I enjoyed looking over his shoulder while he was coding and from then on, I was a Delphi programmer even though the transition from DOS Pascal to Delphi wasn't an easy one.