Life Lessons from a Computer Science Course

By Madelaine Coelho 

"What can coding offer for my child who doesn't want to get into computer science?" is something I often get asked by parents. 

Short Answer: More than you think. 

Long Answer: Problem Solving, Critical Thinking, and Control. 

Skill 1: Problem Solving 

Problem solving is a skill that is deeply rooted in the field of computer science. A coder rarely completes a project without a 'bug'. This bug is an error in their code that makes a program not run as expected. I myself have crossed many paths with hundreds of bugs, however, as much as a bug is the enemy, it is one that is a natural part of the coding process. A bug is not just a challenge coders face in computer programming but is an everyday reality that we come across in a variety of situations. However, a coder will never shut down when faced with a bug. We approach the problem directly with a 'bring it on' mentality. This is what we want to instill in our code camp teachings. When our students come across their own bug, we want to teach them the skills to sharpen their ability to troubleshoot and solve problems. A confident outlook to everyday problem solving is an advantage of learning how to code. 

Skill 2: Critical Thinking

Computer Science requires step-by-step thinking, unique in it's field. It's a combination of creative thought and pragmatic thinking, which leads to a creative outlook unparalleled by those without a computer science education. When prompted with the question: "how do you make a peanut butter and jelly sandwich?"most would reply with "you put jam and peanut butter on two slices of bread, put them together and eat it." While this is correct, this is not a computer science approach. Programmers would think of the answer as: "first, take a single slice of bread out of its package. To do this you must take the bread out of the bag by removing the bread tie in a twisting motion. Lay out each individual piece of bread side by side, then grab the container of jam. In one hand hold the jam tightly and in the dominant hand grip the jar while turning it counter clockwise. This will prop open the jar..." This could go on forever, however the point is clear. A computer science way of thinking requires such a unique way of thinking. Students who learn how to program gain a deeper and more complete understanding of the logic and advanced thinking behind a problem. Programming offers a contrasting way of analyzing a situation, which overall improves critical thinking.  

Skill 3: Control 

By understanding how the world connects, you are awarded a sense of control over your life. While the world becomes more and more technology reliant, individuals maintain less control over their life. Let's think about how long you can go without technology today versus 5 years ago - probably not very long. With the ability to manipulate this technology, that is offered by computer science, you will now gain control over the technology in your life, which is pretty satisfying. 

While breadth of experience, competitive edge, and a strong technological presence become more and more important in today's society; it becomes essential for a child to expose themselves to the world of technology.