I wonder when should I start teaching my son, Gabo (today is his 4th birthday), computer programming? Should I start early to prepare him for a high-tech future? If I start early, am I increasing the probability of him becoming the next Bill Gates?
The typical saying goes, “teach them young”, so I guess it is wise to teach children computers early. But I think this is not a case of teaching them when and for how long, but rather teaching them what.
A computer science degree takes 4 years (ideally) but most of which are spent not on working with computers but dealing with typical subjects like mathematics, Natural Sciences, History, Arts, and Language. Even some computer science subjects do not directly involve the use of computers. My ballpark estimate is that you would only need 2 years to complete the computer science courses. I guess for general computer skills, it would take less.
While in college, I taught computer programming to freshmen and sophomore students as part of my organization’s academic assistance program. What strucked me was that most of my students have computer programming classes in high school but they still had hard time solving the exercises.
I learned that my students were taught programming but they never learned to solve problems using computers. They learned the syntax and other intricacies but they were never trained to solve real world problems. The essence of computer programming is not to encode a solution using a computer but to come-up with a solution to a problem that can be implemented using a computer. When you have solved a problem, you are done with your computer programming even before you touch the keyboard. The rest are just rudimentary.
Teaching computer skills is very easy. What is difficult is teaching students to connect the abstract symbols in a computer to real world situations. I bet students with richer ideas and experiences, and better trained in solving problems will come-up with better use of computers than those we call computer wizards. I have worked with people who can talk to computers but can never seem to come-up with a solution on problems that require thinking outside a computer box.
So why do we still insist our students learn computers early? Because, we want them to be ready in a culture of technology. There is no problem in preparing our children, but we should prepare them properly.