So THIS is what coding feels like!

Michelle Lau Blog

BEFORE you try to escape from yet another article related to coding (and more generally, Computer Science, the thinking behind coding) in the context of education, ask yourself, do you have any understanding of it? Have you personally evaluated the pros and cons to incorporating coding into your curriculum? Have you actually tried it to learn it?

If you have coded, cool. If you haven’t… well, I am not actually here to give you the hard sell about coding in schools. I do however want to share my recent experience learning to code for the first time at 30hands Academy’s one-day workshop called Intro to Programming with Scratch, because it gave me a lot of insight into how and why learning coding is valuable.

My first encounter with coding goes back to my elementary and middle school days when Xanga (a blogging platform) was still a thing. Besides publishing some cringe-worthy nonsense, I spent the better part of my time online customizing blog layouts by tweaking other user’s layout codes through pure luck trial and error. Did I work with Java? Python? Who knows. The point is that I modified preexisting code to bring to life what I had imagined — and that turns out to be what coding (and Scratch) is largely about!

Scratch User Interface

Scratch User Interface

Hello, Sprite!

30hands Academy

Check out the hands-on coding workshops this summer.

EventBrite

Scratch is a free programming language developed by MIT through which users can take pre-existing blocks (basically code), fit them together, and create something new, such as interactive stories, games, music, etc. Although Scratch was developed for children, I think it makes a great introduction to coding for anyone, especially for those who may be intimidated by infinite paragraphs of symbols. I was one of those people, but Scratch’s intuitive, lego-like design helped me understand how pieces fit together to build something functional, which in turn gave me a good idea of how traditional programming languages operate and what kinds of instructions are involved in code.

What the symbols??

Traditional coding can be pretty daunting and confusing, as in the image here. Could I ever learn to code like this?

AllSymbolstoMe

Within the short time that Carmen Ferrara, co-founder of 30hands Learning, walked me and a few teachers through the basics of Scratch, it became very clear that coding can be complementary to other subject areas and skill sets that educators emphasize in the classroom. Below are some simple ideas that popped up in my head as we learned to use the tool.

Topics
Ideas of what it could be used for
How to make sprites (think: objects, characters) perform actions like talking and moving
  • Storytelling tool for language arts and overall self-expression
  • Explaining science concepts like mitosis
Conditionals
  • Creating quizzes for formative assessment
Repeat blocks, Variables, adding sound
  • Music projects
Conditionals, Understanding the coordinate system
  • Teaching math (shapes and angles, graphing)

I bring up these ideas because, as a first-time coder, I immediately saw the appeal of learning other subjects simultaneously with coding, especially using Scratch. As my fellow workshop participants and I found out soon after the workshop began, you will get sucked into the world of Scratch, trying to bring to life all that you have imagined in your head. We were all guilty of tuning out (sorry Carmen!) and independently testing out our wild ideas during the session, because there is a particular kind of satisfaction and empowerment that comes with being able to create a functional program on my own, no matter how simple it is. In fact, this satisfaction was enough to motivate me try to solve some math problems related to angles – yes math!! – because I desperately wanted the sprite to move in the direction that I intended for it to move. No, coding did not magically turn math into an obsession for me, but it definitely gave me more incentive to try to work through the problem, because my efforts led to a more tangible, interesting result than just “the correct answer”. It also made the subject more friendly as I could see immediate results whenever I modified a code, and the instant feedback helped me understand what I did wrong.

I believe there is immense value in using Scratch as an interdisciplinary tool because no subject exists in a vacuum, and students should be able to apply what they have learned across the board. It is time that we move away from boxing ideas and concepts into strict categories, since such practice rigidifies how we think. Besides learning to make connections, students will develop creative problem solving skills through coding because there are endless possibilities to achieve the same goal, and it is up to them to think of the most efficient way to code. Case in point: Carmen showed us how to create the Major Scale by adding each note manually to our programs, and then challenged us to devise much shorter and efficient code using loops and variables. Mind-blowing! Alternatively, students can find inspiration through other community members by exploring other users’ code and collaborating with others. For example, when we explored various methods to make a sprite move in a triangular path, it was helpful to discuss and build off of how other participants envisioned the code.

We also discussed how students would be more equipped to join the workforce if they learn coding, because the demand for this type of talent is on the rise. According to Code.org, computer programming jobs are growing twice as fast as other fields, while the number of college students graduating with a CS degree has dropped in the last decade. This is not to say that everyone will or should get into coding or CS (or maybe they should?), but I think it is beneficial for people to be introduced to this knowledge, because it is not as daunting as one might think. To essentially learn a new language and way of thinking at an earlier age could potentially open up more paths for them. Besides, it is useful to have some foundational knowledge about CS, simply because apps and other technologies will only become more relevant to our daily lives.

The job market/talent pool gap is huge (Infographic from Code.org)

Code.org projects huge growth in computer science jobs in the next 5 years. Where are all the students?

1millionjobs

Now, I know listening to someone else talk about something doesn’t quite give you the same, in-depth understanding of it as experiencing it for yourself. So, to those who have yet to give coding a shot, I say join the party! And to others who are already at the party, share your experience with me through Facebook, Twitter, or email!

30hands Academy

Check out the hands-on coding workshops this summer.

EventBrite

You can also check out the not-very-useful-but-kind-of-interesting-project that I made here. Be nice – it was my first time using Scratch!

Share this Post