Mon, 26 Apr 1999 12:06:06 -0600

Doug Bailey told me he has young children whom he is trying to raise in a way that promotes great intelligence. He said,

"I was wondering if you've come across any techniques or "best practices" in
your research that assists children of such ages develop keen, analytical,
scientific minds."

>From what I've read, people aren't really sure how we learn, just that we
do learn and that different sorts of environments and personal relationships can dramatically affect how well we learn. There are an incredible number of factors that may or may not affect learning and how much each factor affects learning in different types of people is difficult to measure.

The idea of "best practices" in education is a hopeful fantasy at best and at worst it means that we seriously believe that there is some final solution, and that once we find it, we can give up on trying to actually improve our methods of education.

I prefer the concept of "continually better practices". Especially when you are dealing with a phenomenon as spontaneous, creative and unpredictable as the learning process.

Determining whether a particular method of education out of practically infinite variaties is the "one best way" is very difficult; beyond our current abilities. However, determining whether new techniques or variations on current techniques are more effective than previous ones is much easier.

Developing methods of learning that are highly effective for the particular individuals involved is a learning process in and of itself, and like all learning processes, it requires an intelligent, rational approach as well as a lot of experimentation.

Because people are naturally so diverse, it seems obvious that different approaches to education must be used for different kinds of people. Education must be customized, carefully developed for each individual mind.

Fortunately, though, our minds are similar enough that there are many basic principles and techniques which have been developed over many centuries and many millions of humans.

One of these principles is that the more focused and interested one is in learning something, the faster one will learn it. Because of this, it is important to develop educational systems in a way that students find very compelling.

Another basic principle is that learning is a fundamentally enjoyable activity to humans (not surprising since our survival depends crucially on our ability to learn). Because of this, we can trust people to further their own educations (we don't need compulsory schooling, in other words).

Basically, whatever form an educational system takes, it should be very interesting and fun and it should rely on people's natural enjoyment of learning to motivate them to improve their own learning methods and to seek out new knowledge and skills to learn.

Mr. Bailey was wondering what sorts of activities I would recommend to help young children develop keen, analytical, scientific minds. I would recommend the sorts of activities that require lots of problem solving skills, analytical skills, creative skills and project development skills.

The best activity I know of that requires all of those skills is computer programming. I began programming computers when I was eleven. I would always give myself programming projects to work on, usually little things like solving math problems and making simple games and images; although I had several larger projects that I worked on, like a Mandelbrot Set explorer and several games, which were easy to make functional and easy to keep adding features to.

Looking back, I am quite grateful for my years of writing computer programs. It was always very challenging for me, and I was always finding new sorts of problems to solve with the help of the computer. I enjoyed the fact that the computer was so versitile a tool, and I enjoyed thinking of ideas and expressing those ideas as computer programs.

People who don't program computers often perceive the activity as boring, but I always saw my computer as one of the best toys I could ever have. There was no end to the ways I could play with it.

I have a young nephew (seven years old) who is very intelligent and curious. Last week I decided to start teaching him how to program the computer. (I downloaded a BASIC compiler from the Internet, called FirstBASIC (easy to find with a search engine)) My nephew was very enthusiastic about learning to program the computer, and I demonstrated for about ten or fifteen minutes the sorts of basic things that he could program the computer to do, like print words on the screen, draw lines and circles, calculate and display a multiplication table almost instantly, count to a million very fast, etc.

Then he spontaneously said, "I want to make a game." I said, "Okay, let's make a tag game, where we can each move letters around on the screen and chase each other around and get points for tagging the other." (not in those exact words) He was very enthusiastic about this, and we began making the game immediately. We started discussing the basic things we would need the game to do: display different characters on the screen, get input from the keyboard for moving the characters around, keeping track of who is 'IT', etc.

I started the program by clearing the screen and putting the characters in their starting positions, explaining quickly the significance of the words and characters I was typing in. As soon as the program was capable of displaying anything on the screen, he was very eager to have me run the program, so I did immediately, and he was excited to see that the game was getting created. I then asked him what we needed to add next to the program to make it the way we wanted it, and we discussed it briefly and continued programming.

As I was programming, I would say everything I was thinking about the program out loud, basically talking to myself, so that he could listen to the style of thinking that is useful for programming and so he would understand the reasoning behind everything I typed in. Sort of a continously running, stream of consciousness commentary on every part of the process.

He was completely enthralled for at least an hour and a half as we developed the game, which he was able to play with his younger brother when he was done. The nice thing about FirstBASIC is that it is easy to create stand-alone programs, and so he is able now to play the game any time he wants simply by clicking on an icon in Windows.

As we were working on that project, we both kept thinking of ideas to make the game even more elaborate in the future, such as objects which appear on the screen that one can pick up to move faster or to throw at the other player's character, or obstacles that make the chasing more interesting.

The exciting thing about programming for me is that once you teach someone the basics of programming, they can pursue it fairly autonomously after that. You can teach them programming tricks and suggest projects to them, but they can pursue that sort of education with little supervision. Which means that it is an educational tool that is extremely inexpensive to implement widely.

I think children should be introduced to computers and the fact that the computer can be an extremely fun mind toy as soon as possible. The mental skills one develops when programming computers have countless applications beyond computer programming. I find myself using the lessons I learned programming computers, in nearly all activities I pursue, from art and music, to engineering, mathematics and scientific pursuits. The basic way I even think about my own mind and self and the way I make decisions in my life have been profoundly influenced by my years of programming computers for the sheer enjoyment of it.

I have written enough for now. I hope my writing will be useful. Thank you for your attention,

continual improvement is the highest good

You don't need to buy Internet access to use free Internet e-mail. Get completely free e-mail from Juno at or call Juno at (800) 654-JUNO [654-5866]