Learning to Code

            As many of us know to begin your journey as a coder can be daunting, with taking your first computer science class or “self-teaching” using online tutorials all the syntax and nomenclature can be extremely confusing and can turn a lot of young people off the path of knowing how to code but it doesn’t have to be this way. At its core programming is just simple puzzle solving, you’re directing chain events to build something useful or enjoyable. This is why the language Snap! Was developed, it’s a block-based free educational coding languages which allows students to create all kinds of fun projects and games while simultaneously learning the basics of how to code.  

Snap!, from the get go was designed with student learning in mind with it formerly having been called the more descriptive name BYOB or Build Your Own Blocks. The core of the language is written JavaScript but the major idea being the ability to take all syntax out the programming language and allow students to drag and drop different pieces of coding logic to create their graphical applications. When confronted with the issue of Snap being considered a “baby programming language” the creator of Snap Brian Harvey stated

“It’s a very serious programming language, in disguise. The reason for the disguise is that most programming courses spend most of their time and effort on the details of the notation used by whatever programming language they choose. Here’s the classic example: In your “grownup” programming language you

write some stuff; some more stuff; and yet more stuff;”.

Snap takes complex programming ideas and makes them as accessible as possible, while still having the power of a language like JavaScript to have advanced functionality. Brian goes on to say

“These are three instructions to the computer, with semicolons in between. Now, what about that red semicolon at the end? If the language is Java, C, or C++, that semicolon is required. If it’s Perl, Pascal, or PL/I, that semicolon is forbidden. Not exactly easy to learn. But if, instead, the code looks like this:

then there’s no need to remember punctuation rules. The visual layout of the code is the notation.”

This allows Snap! a lot of flexibility as it can be used to introduce middle schoolers to code, as well as being in a Ivy League University’s curriculum, it can do most anything that a lot of other programming languages can do on their base level without using all kinds of libraries. Snap has simplicity of Legos but the key difference that allows you to do more with snap is you can build your own blocks which is where the complex programming can come into play allowing you to creating almost any of the same interactions of vanilla JavaScript. Although most people will start to learn programming using language like python, ruby and java; if you know anyone who is thinking of learning how to code make sure they consider snap because in the long wrong getting the thinking patterns and problem solving abilities quicker will save them time than trying to learn the syntax of an in demand coding language.

Sources:

Leave a comment

Design a site like this with WordPress.com
Get started