Coding for kids: turning zeros and ones into something colorful

computer science parents

When we think of a programmer, a very black and white image often comes to mind: a 20-something year old sitting alone in a dark basement continuously staring at a black screen with white letters that to most wouldn't make any sense. Recently, a much more colorful picture has been coming to my mind: a 10 year old excitedly showing her friends the tennis match she has just programmed, with a large smile emerging on her face as she explains how it makes a sound every time one of the tennis players hits the ball, or how she made the sky color change depending on the hour of the day.

But how can we turn the black and white zeros and ones that govern our computers into something so colorful and engaging?

My answer consists of two parts: the first is making coding a little bit less about computers, and the second is, when actually using computers, choosing the right tools to start.

Make coding a little bit less about computers

This might seem odd at first since, after all, coding is what makes computers work. Endless lists of "programming languages you need to learn to find a job in 2021" or "top 5 programming languages of the future" might make you think that learning to code means learning a programming language. If you ask any computer scientist, however, they will tell you that, once you learn computational thinking, programming languages become the easy part of coding. This might make computational thinking sound very complicated, but the good news is that it's very present in our daily lives.

Algorithms are the sequences of instructions that we give a computer to perform a task. We also give people sequences of instructions when we write a recipe or teach them how to take care of a plant. We follow a sequence of instructions when we play a sport, or use our phone's map app to get somewhere new. These, too, are algorithms. When learning computer science, we need to learn how to turn our instinctive, automatic algorithms into precisely detailed instructions, and we don't need a computer in this process. 

Instead of increasing our children's screen time, we can simply ask them to give us precise instructions to make a PB&J sandwich (https://www.youtube.com/watch?v=Ct-lOOUqmyY), or have them find the word "programmer" in the dictionary in some way faster than going through each of the letters up to P.

Choose the right tools to start

At some point, however, if you want to learn to code, you have to...well, code. But then again, learning the programming language itself is eventually going to be the easiest part, so there's no need to learn Python or Java in the beginning. For kids, there are some amazing tools out there that can help. 

Programming tools that use blocks avoid the need for memorizing commands all while giving users a visualization of the options they have. Websites like code.org or Tynker provide step-by-step instructions for children to program fun games or videos with few commands. LEGO Mindstorms allows kids to create code that affects a real-world, physical object: a LEGO robot they can build themselves. Scratch gives children endless tools and possibilities while instantaneously showing them the results of their work—and anyone who has spent more than half an hour with a youngster knows how excited instant gratification can make them. Through such engaging resources, children will know all the possibilities of programming and think algorithmically before moving on to written programming languages.

By bringing computational thinking to tasks we already know how to do and using tools that are appropriate for early learning stages of computer science, we allow children to become budding programmers, and we allow ourselves to change our image of a programmer to a much more colorful one.

Comments

topicTopics
academics study skills MCAT medical school admissions SAT expository writing college admissions English MD/PhD admissions writing LSAT strategy GMAT GRE physics chemistry math biology graduate admissions ACT academic advice interview prep law school admissions test anxiety language learning MBA admissions premed career advice personal statements homework help AP exams creative writing MD study schedules Common Application test prep summer activities computer science history philosophy organic chemistry secondary applications economics mathematics supplements PSAT admissions coaching grammar research 1L law statistics & probability psychology ESL legal studies CARS SSAT covid-19 dental admissions logic games reading comprehension engineering USMLE Spanish calculus mentorship parents Latin case coaching verbal reasoning DAT PhD admissions excel political science AMCAS English literature French Linguistics MBA coursework Tutoring Approaches academic integrity chinese medical school Anki DO STEM Social Advocacy admissions advice algebra astrophysics biochemistry business classics diversity statement genetics geometry kinematics letters of recommendation mechanical engineering mental health presentations quantitative reasoning skills study abroad technical interviews time management work and activities 2L IB exams ISEE MD/PhD programs adjusting to college algorithms art history artificial intelligence athletics business skills careers cold emails data science first generation student functions gap year international students internships linear algebra logic poetry resume revising science social sciences software engineering tech industry trigonometry 3L AAMC Academic Interest DMD EMT FlexMed Fourier Series Greek Health Professional Shortage Area Italian Lagrange multipliers London MD vs PhD MMI Montessori National Health Service Corps Pythagorean Theorem Python Sentence Correction Shakespeare Step 2 TMDSAS Taylor Series Truss Analysis Zoom acids and bases amino acids analysis essay architecture argumentative writing art art and design schools art portfolios bibliographies biomedicine brain teaser campus visits cantonese capacitors capital markets cell biology central limit theorem centrifugal force chemical engineering chess chromatography class participation climate change clinical experience community service constitutional law consulting cover letters curriculum dementia demonstrated interest dental school dimensional analysis distance learning econometrics electric engineering electricity and magnetism enrichment escape velocity european history evolution executive function finance freewriting fun facts genomics graphing harmonics health policy history of medicine history of science hybrid vehicles hydrophobic effect ideal gas law induction infinite information sessions institutional actions integrated reasoning intermolecular forces intern investing investment banking lab reports linear maps mandarin chinese matrices mba medical physics meiosis microeconomics mitosis music music theory networking neurology neuroscience object-oriented programming office hours operating systems organization outlining pedagogy