by Walker Rowe
One alarmed parent called me today. She was alarmed because children were setting fires in her child’s classroom. She wanted an alternative place where he might learn to be a computer programmer. I told her I can help.
I am an American who teaches teenage children computer programming here in Cyprus. I teach children for free at Hypatia Academy, my online school. I’m retired, which is why I charge nothing. Plus I still have a couple of clients for my programming business, so I work a few hours each month doing that.
Here I will explain why children should study computer programming, what it means to write code, and what parents and students can expect from a computer programming course.
I have been teaching computer classes for 4 years here in Cyprus over Zoom. My classes are online. People who work at Google, Microsoft, and Facebook don’t go into the office since covid. My student’s don’t either.
Cypriot parents don’t seem to understand that. They want their children to go to class in a building. Three called me last week saying that. Why?
Rather than try to overcome that cultural issue, I marched down to the Ukrainian Refugee agency in April this year and found students there. More than 50 signed up.
I teach children the Python programming language. This is the most popular programming language in the world. It’s also the most widely used language for machine learning and data science, which is what I teach the most advanced students.
The way the classes work is the children watch their screens as I write computer code and explain it to them. I ask them questions. They answer. Then I give the students a homework assignment. They put their answers on the Microsoft-owned site github.com. Then I open it using Google’s Colab online programming tool. There I correct it and share the corrections with the student and sometimes the whole class.
Parents and students don’t always understand what programming is and what it takes to learn it. Some think an 8 year old child can write code. They cannot, because they cannot yet think abstractly. A computer program is an abstract idea that you conceive in your brain. Then you type that into a computer. You can’t touch it, but it’s very much real. And you type it. You cannot draw it on a screen, which is what they teach the 8 year old children. Children generally are able to think abstractly at age 13, which is when they also start learning algebra.
Programming is applied math and logic. There are no shortcuts to learning how to code. When a lazy aristocrat student complained that geometry was too difficult, Euclid, one of the Greeks who invented geometry told him, «There are no royal roads to Geometry.» I named my school after another famous Greek, Hypatia. She was the first famous female Greek mathematician.
Boys are interested in computer games. Others want to learn to write cell phone apps. Girls are not as interested in games. But regardless of whether you want to build games or web pages or learn how to process data for some giant automobile company, you have to start with the basics. For programming that is 0 (false) and 1 (true).
What kind of child can learn to program? Generally if a child has any ability at all in math they can learn to code. I have looked at the math books used here in Cyprus in both the public and private schools. My university degree is in math. I can say that the math taught in Cyprus is sufficiently rigorous. If they can understand even a part of that they should be able to learn to code.
Having said that, I find that children here have difficulty learning what are called algorithms. This suggests that maybe they are not being challenged enough in school. I am not sure. An algorithm is a written set of instructions that makes the computer do specific things. I teach several, including how to calculate square roots using only subtraction and division and how to find the greatest common divisor of two numbers. We also explore basic games, like tic-tac-toe and rolling dice.
Now, having explained a little about what it means for a child to learn how to program a computer, what can we say about computer education here in Cyprus. Do schools in Cyprus teach children computer programming?
The answer to that question is not easy to answer. I have talked to dozens of parents and students and asked them what they have learned in school. I have heard some parents say their children take classes where they teach basic computer concepts, like explaining what a computer network or database is. That is not coding. And it is not hands-on.
Several parents have told me that some private schools here have had a hard time finding and keeping people to teach programming.
As for public schools, the only public school I know that teaches programming is the Makarios Technical School in Limassol.
Some children have studied spreadsheets, like Google Sheets and Microsoft Excel. Everyone should learn spreadsheets because they are not only useful in business, you can use them in your personal life. And you can program them.
The last thing I will say about computer education here in Cyprus is that classes I have found that really do teach programming are targeted towards adults who have already left school and are looking for a vocation. Or they are for students in the university. But there is no reason for a child to wait until they go to the university to learn programming.
Cyprus says it wants to be a tech capital. They want IT businesses to come here. If that is true then they need to start building computer skills. The way to do that is to teach children to write code.