Search
  • Learn2Code.Live

In this post we will connect coding and perseverance. The apps that kids use everyday are developed with a lot of painstaking effort. Writing computer programs involves designing a logical solution, programming it, making it aesthetically pleasing and user-friendly, and more. Students learn new concepts and implement them in their programs everyday and invariably encounter issues or bugs that are related to logic (the design and organization of the different pieces of the solution), or syntax (related to the grammar of the specific programming language being used).


As the kids work diligently towards completing their wonderful projects, the programs invariably don’t work perfectly the first time around. Bugs come in the way with no magic wand to fix them. The kids, thus, take the ownership to diagnose the bugs and fix their programs using various strategies. As they think through their programs, read and re-read their code and work hard to bring their wonderful ideas to life, they learn not to give up and they develop resilience and patience to find creative solutions!


At Learn2Code.Live, our instructors are trained to inculcate good programming habits, teach debugging strategies and build perseverance among students by guiding them to the eureka moment!


  • Learn2Code.Live

Problem Solving and Critical Thinking


Coding when taught the right way, teaches kids life skills that positively impact their approach towards dealing effectively with demands and challenges of life. In a series of posts we will connect how coding develops such skills and encourages positive behavior among students.


Let’s start with problem solving and critical thinking skills. These skills come with practice and writing computer programs to design solutions to bring own ideas to life or develop fun games, is a great way to practice these skills!.


How exactly does coding build problem solving and critical thinking skills?

When students are taught to write code the right way, they develop computational thinking (CT), the process of solving problems using ideas from the computer science discipline. CT builds logical thinking and problem solving skills applicable to coding as well as to situations in daily life and to any subject at school.


We inadvertently use computational thinking in our lives everyday. However, the fact the computers can’t deal with ambiguities forces kids to follow a systematic approach towards problem solving. Solving problems using CT starts with decomposition, where students think through and break down a large problem into sub-problem. Doing this instantly makes a

large problem seem less overwhelming. Think about baking a chocolate cake, and how would you break down the task of baking a cake into sub-tasks.


Next, students learn to recognize patterns between the sub-problems or across problems with the idea of reusing their solutions across sub-problems instead of re-writing the code all over. Think about baking a vanilla cake this time. Break down the task into sub-tasks and analyze what sub-tasks remain the same between baking a chocolate cake and baking a vanilla cake. For example: searching for a recipe, buying ingredients, following a recipe to bake.


Next, students abstract the solution by removing irrelevant details to focus on the key problem to be solved. Going back to baking the cake, does your cake baking solution depend on the quantity of the cake? The ingredients and baking time will depend on the quantity of cake but does it change your solution? Not really! You still follow the same process (sub-tasks) to bake the cake.


Finally, students design the algorithm to identify clear steps to solve the problem. In our cake baking example, we google and find the recipe with most stars or use the recipe from our favorite recipe site, then we go to the grocery store and buy ingredients, then we mix the ingredients and follow a range of the steps until the cake is ready!


In real life, once we start baking we may realize that we are out of flour and then realize we are out of sugar and probably milk too. We may then decide to go to the grocery store to buy the missing ingredients. However, computers need to be provided clear instructions and the order in which the instructions need to be executed. This forces students to follow the systematic approach of problem solving and connecting solutions for sub-problems to formulate a complete solution.


Learn2Code.Live’s instructors are trained to teach coding while developing computational thinking among students to equip students with robust problem solving and critical thinking skills. Students are trained not only to code but to become confident problem solvers who solve real life problems (and not only computational problems) in systematically without getting overwhelmed.



Stay tuned for the next in the series of Coding and Life Skills.


  • Learn2Code.Live

We love coding and we love cats too! Combining our love for both, we have created a code art puzzle for you to solve using Python programming.


This is the code art that you will create:



Go to www.trinket.io and create a new 'Python' Trinket. Use these lines of code to get started.


print ("/\\___/\\")

print ("cat")

print ("(\") (\")_/")

print (" ")


Think about these as you try to solve this coding puzzle:

  • Run the provided code. What output do you get? Observe.

  • Can you map the output to the line of code that generated the output?

  • Are the lines of code in the correct sequence? If not, how do the lines need to be moved around to get the output in the desired sequnce.

  • Which line of code do you think needs to be modified? Why?

  • What characters will you add on this line to generate the code art?

  • Which order do the characters need to be in? Do you need to adjust the spacing?


Try to solve on your own, and refer to the below hints if needed.


Hints:

  1. Move the lines of code around so the lines of code are in the correct sequence

  2. You will need to enter the correct characters within the red quotes

  3. Use these characters ( = ^ .

  4. You can simply hit space to add space before or after the characters within the quotes


Solution


print (" /\\___/\\")

print (" (=^.^=)")

print (" (\") (\")_/")

print (" cat")


The first, third and fourth lines of code were provided to you. You had to rearrange them to get them in the right order.

You had to add characters on the second line to get the eyes, nose and whiskers.

You had to add spaces before "cat" on the fourth line.


What did we learn?

  • Python interpreter reads the code from top to bottom! Hence, the sequence of the lines of code is important.

  • The characters within the quotes are printed as is, including the space. Hence, you had to adjust the spacing to print 'cat' centrally aligned with the code art.

Was it fun? Try creating more code art of your own!


#learn2codelive

Subscribe to our newsletter

icon-yellow-small.png

© 2020 LEARN2CODE.LIVE

  • Grey Instagram Icon
  • Grey LinkedIn Icon
  • Grey Facebook Icon
  • Grey Twitter Icon
  • Grey Twitter Icon
  • Grey LinkedIn Icon
  • Grey Facebook Icon
  • Grey Instagram Icon