For part of our Africa Code Week participation, we wanted to provide some opportunities for children other than our students to learn some programming skills. ICS students have many opportunities to learn programming skills: in classes, in after-school activities, on our robotics team and in various events we run through the year. Students in local schools don’t get the same kinds of opportunities.
Leulseged Assefa, our MS Computer Science teacher, decided to host a session on a Saturday morning for children of our school’s support staff. It was hugely popular: the session filled quickly and staff who missed the cut-off asked for additional sessions to be held! We had nearly 30 children, from ages 11 to 17, spend several hours on a Saturday morning learning to build games and animations using Scratch. A few ICS students helped out, answering questions and making suggestions.
The children were all excited to be learning new skills and using new tools, and many asked if they could come back the next Saturday! We’re working on plans to make this a regular outreach for the children of our support staff. We’d love to see Ethiopia’s answer to Bill Gates or Mark Zuckerberg come out of this group of enthusiastic children!
This year the first ever Africa Code Week was conducted across the continent, aiming to get children started with computational thinking, programming, and using computers as devices to build software, not just use it. Thousands of children in over a dozen countries had the opportunity to start programming. ICS joined in this activity to help encourage our students to do the same, and we reached out to other children here in Addis Ababa to get them working with code. One week or one session will not make a programmer out of a child, but it can start the process. We’re planning to keep this initiative going through the year, not just within classes, but in fun, engaging activities outside school hours.
The first week in October has been designated Africa Code Week, with a push in several countries across the continent to get children building their own programs. There are a few initiatives in Ethiopia, and ICS is joining in. We’re sponsoring a few events next Saturday (10 October) to get our students and some other children learning how to make programs that do what they want, rather than simply using apps that others have built.
There’s been a big push worldwide to get people programming. “Everyone can code,” proclaim advertisements, government officials, teachers and students. It’s a simplistic message which provokes pushback as well as support. People argue that not everyone needs to become a programmer, and that saying that everyone can and should learn to code is ridiculous.
The truth is that everyone uses a computer in their daily lives not only for work but also for leisure. For many, they are mysterious machines that work magic. People who learn some programming skills get that magic demystified and explained: for them, computers are comprehensible machines that work in understandable and predictable ways.
The art of programming also builds in students a logical way of thinking that supports problem-solving. Computational thinking is a way of analyzing a problem or situation in ways that break it down into processes that a machine can perform. This is the skill that all programmers develop, and it helps people better understand complex problems as well as get machines to solve those problems.
Finally, learning to program is a way to gain mastery over computers and hence one of the driving forces of our economy and society. Being a programmer is a lucrative and highly sought-out skill, not only in high-tech businesses but increasingly in other fields. Economists write programs to analyze data. Architects write programs to model building stresses. Geographers write programs to simulate geological processes.
ICS is committed to getting our students to be inquisitive and creative, using computers not only to communicate and collaborate but also to analyze and problem-solve. Learning to program is a part of that, and we aim to have all of our students develop some skills in computational thinking and computer programming. Our goal is that those students who wish to pursue that as a career can do so, and that others will have a better understanding of how computers actually work.