Putting the T in STEM: Interview with Naomi Meredith
June 15, 2022STEM as the Foundation of Construction: Interview with Daphene Koch
July 13, 2022Hello, everyone! Most of you are likely familiar with the world of computer programming – at least to some degree. You’ve probably heard of text-based programming languages like C, C++, Python, JavaScript, or HTML too. These are dynamic, potent tools in the realms of education and computer science, but jumping head-first into these common programming languages can be exceptionally challenging, for students and teachers alike.
Syntax
The biggest barrier to learning a programming language? Syntax. The word “syntax” refers to the symbols, words, and rules that define the structure of a programming language, functioning much like the words and grammar behind a spoken language like English. Parenthesis, brackets, colons, semicolons, and keywords like “if,” “for,” “while,” and “print” are all examples of syntax commonly used in programming languages. Developing an intuition for when and how to properly use coding syntax can often prove to be just as challenging as learning a new spoken language like Spanish or Chinese.
Block Coding
Luckily, to help you and your students along the way to mastering text-based coding, we have block coding by our side. Block coding is a simple, intuitive form of coding with:
- a de-emphasis on syntax
- an emphasis on visual learning
- an easy learning curve
As the name would suggest, block coding employs stackable blocks as its most basic units of coding. Each block has a particular color, shape, and name, but these characteristics aren’t merely aesthetic in nature. Instead, they are meant to convey what each block does and how they can, or cannot, be used in conjunction with other blocks. This more-intuitive, less-intensive approach to coding is a fantastic way to let your students “walk before they run,” learning about the basics of computer programming and computational thinking along the way.
If you’re looking to introduce your students to the world of computer programming with the help of block coding, the micro:bit microcontroller and the Dobot robotic arm are great places to start. These technologies feature clear, easy-to-use block coding (and text-based coding) interfaces. They also provide a hands-on experience that will help your students bridge that gap between the abstract world of coding and the physical world of interactive technology with the immediate feedback it provides in the classroom setting.
Making the Switch to Text-Based Coding
Now, while block coding is certainly colorful, engaging, and fun, it’s not meant to be the endgame when it comes to teaching your students about the subject of computer programming. Instead, block coding is meant to serve as a stepping stone toward text-based coding. With this essential factor in mind, I’d like to introduce you to one of my all-time favorite features in MakeCode, the online coding application for the micro:bit.
You’ll notice at the top of the application, there are two buttons: “Blocks” and “Python.” These buttons not only allow you to switch between using block coding and text-based coding to program your micro:bit, but they also allow your students to translate their block code into either Python or JavaScript text-based code (or vice versa)! Students can:
- Start off by writing a block coding program that is easy for them to understand.
- Translate their block code into text-based code.
- Gain an understanding of Python and/or JavaScript syntax by drawing comparisons between their intuitive block code and their new text-based code.
This is something that I really wish I had at my disposal when I was a young student just starting out on my coding journey!
Happy coding,
– Dr. Jake Roark