This week in ECMP 355 we learned about coding! Coding, or computer programming, is essentially a language for machines — it is a precise set of instructions that tells a computer exactly what to do. Coding is what makes it possible for us to create and use computer software, apps, and websites. Learning how to code means learning how to read and write in “machine language”.
Coding is starting to make it’s way into the classroom (check out the #CodeinClass hashtag on Twitter), as it is becoming an increasingly important and beneficial skill for students to have. For one, many young people are making their living from computer programming on platforms such as Android and iOS. In fact, roughly half the highest-paying jobs in America now require some basic knowledge of computer programming. Aside from making a living, coding also provides students with valuable life skills such as problem solving, critical thinking, creativity, and digital literacy.
So, for homework, we had to learn how to code — or at least give it a shot. We had two options: We could code a short project using Scratch (a kid-friendly computer programming language), or we could take part in one of the Hour of Code options on Code.org. I chose to do the Hour of Code.
I took three separate screencasts during the Hour of Code to show my learning progress throughout. In the first video I work through puzzles #1 and #2. Puzzle #1 was easy, but the angles tripped me up on puzzle #2 (my geometry teacher would be so disappointed). It took some thinking, but I was able to quickly fix my mistake to complete the puzzle!
In the second video I work through puzzles #5 and #6 after being introduced to the “repeat loop” block which allows you to repeat a line of code x number of times. In puzzle #5 I had to figure out how many time to repeat a given line of code in order to draw a flower.
In the third video I work through puzzle #8 where I was introduced to the “function” block. A function is another type of programming tool to help you avoid repeating yourself. I used the function block to draw three colourful flowers without having to write out the code each time.
The final puzzle, puzzle #10, was a free-for-all — I was allowed to design whatever I wanted using code. Check out what I made:
So, how did it go?
To be honest, I went in with a negative attitude. I had seen formal coding language before (like the HTML view on WordPress) and it always looked intimidating — how was I supposed to replicate something like that? Plus, many of my friends who have taken computer science complain about how hard coding is. I was expecting to hate every second of it. However, I was surprised at how fun it was to learn how to code!
The Hour of Code was challenging, but in a good way — I was forced to think and problem-solve my way through each puzzle. Sometimes it was frustrating when my code didn’t work, but it also motivating — I actually wanted to back and find where I went wrong so that I complete the puzzle. I also really liked working with Blockly. Code is usually written in text, but Blockly uses visual blocks which you can drag-and-drop to write a program. Underneath I was still creating code, but Blockly just simplified the formal code language which can be overwhelming and confusing for beginners.
After taking part in the Hour of Code, I can totally see the value in teaching coding in schools. In terms of the Saskatchewan curriculum, coding can connect to units in both the Math and Arts. Ed curricula. I even think that coding can connect to English Language Arts. There are many different forms of language; students use a different type of language when they are at home with their families vs. hanging out with friends vs. in the classroom. Coding is just another type of language, only digital, and I think it is important to give students opportunities to practice and develop all these types of languages. Aside from direct curricular connections, I also see how coding can help students to develop important life skills like problem solving, reasoning, and patience.
Overall, I really enjoyed learning how to code; I felt a sense of empowerment and pride afterwards, and I had a lot of fun. However, before I go and integrate coding into my classroom, I need to learn more about it, spend more time practicing, and find good resources. I know what I’m doing this summer!
Know of any good coding resources for students? How/where do you integrate coding into your classroom? Please share with me below!