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 GMAT LSAT GRE writing strategy chemistry physics math biology ACT graduate admissions language learning law school admissions test anxiety interview prep MBA admissions academic advice premed homework help personal statements AP exams career advice creative writing MD study schedules summer activities Common Application history test prep philosophy computer science secondary applications organic chemistry economics supplements PSAT admissions coaching grammar law statistics & probability psychology ESL research 1L CARS SSAT covid-19 legal studies logic games reading comprehension dental admissions mathematics USMLE Spanish calculus engineering parents Latin verbal reasoning DAT case coaching excel mentorship political science French Linguistics Tutoring Approaches academic integrity chinese AMCAS DO MBA coursework PhD admissions Social Advocacy admissions advice biochemistry classics diversity statement genetics geometry kinematics medical school mental health quantitative reasoning skills time management Anki English literature IB exams ISEE MD/PhD programs algebra algorithms art history artificial intelligence astrophysics athletics business business skills careers cold emails data science internships letters of recommendation poetry presentations resume science social sciences software engineering study abroad tech industry trigonometry work and activities 2L 3L 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 STEM Sentence Correction Step 2 TMDSAS Zoom acids and bases amino acids analysis essay architecture argumentative writing brain teaser campus visits cantonese capacitors capital markets cell biology central limit theorem chemical engineering chess chromatography class participation climate change clinical experience community service constitutional law consulting cover letters curriculum demonstrated interest dental school distance learning electricity and magnetism enrichment european history executive function finance first generation student freewriting fun facts functions gap year genomics harmonics health policy history of medicine history of science hybrid vehicles hydrophobic effect ideal gas law induction information sessions institutional actions integrated reasoning intern international students investing investment banking lab reports logic mandarin chinese mba mechanical engineering medical physics meiosis microeconomics mitosis music music theory neurology neuroscience office hours operating systems organization pedagogy phrase structure rules plagiarism pre-dental proofs pseudocode psych/soc quantum mechanics resistors resonance revising scholarships school selection simple linear regression slide decks sociology software stem cells stereochemistry study spots synthesis teaching technical interviews transfer typology units virtual interviews writer's block writing circles