Eduporium Weekly | 5 Programming Languages to Learn During CS Ed Week and Beyond

  • Posted on: December 2, 2017 - 8:00am
  • By: alarmand

Everywhere teachers turn these days, it seems somebody is telling them about the importance of teaching their students coding. We won’t lie, either -- a lot of the time, that’s us. It’s true that coding is an incredibly important skill for today’s students to possess, but it is also one that they can begin developing very early on in their lives. Not all coding is complex coding. In fact, there are some languages that are designed specifically to serve as introductions to coding for students as young as five or six years old. There are many different kinds of coding with complexity ranging from hardly any at all to the ones that serve even the most experienced programmers with plenty of challenges. Here are some of the types you should know about as you enter into Computer Science Education Week and Hour of Code activities.

 

JavaScript

 

If you’ve taught a computer science class in high school or college in the last 10 or 15 years, the chances are pretty high that you focused on JavaScript at one point or another. There’s even a pretty good chance that it’s something you are still focusing on. This language is among the most popular, widely recognized, and consistently used by web developers and in various computer science classrooms. This language is commonly used by developers to build websites and, since its emergence all the way back in 1995, it is responsible for the creation of countless web pages. It is described as what’s known as a scripting language and is used regularly on web servers as well as in browsers.

 

Among the uses of the JavaScript language include the functionality of the websites you surf through each and every day. It has a great effect on the interactivity of the content we read on the Internet and is something that we would definitely notice if it were suddenly no longer there. Actually, this is a test you can conduct. Most browsers allow you to turn off the JavaScript function in the settings section. If you were to try this, you would most likely notice immediately how much functionality the web page loses. That’s all because of the power of this language! There are hundreds of different free tutorials on the Internet that allow amateurs and educators to learn how to code in JavaScript -- and it is now the most widely used programming language in the world!

 

One of the best ways to learn JavaScript (or any programming language) is with robotics. Kids know that it takes a great deal of science for a robot to walk, talk, interact with them, and eventually learn from them. Most of the don’t know, however, what goes into making this a reality. One of the best robotics tools to use to learn the JavaScript language is the Finch Robot from Birdbrain Technologies. Students would need a Finch Robot, its included USB cable, and to download the JavaScript software from the Birdbrain website. It’s available for Windows, Mac, and Linux and comes with sample programs for students to create. Since JavaScript, in general, is geared more towards high school students, it should come as no surprise that the Finch is as well. With the power of writing programs in JavaScript, kids can make this small robot move in any direction as well as perform a number of other interesting actions!

 

Blockly

 

We said that if you’ve used the Internet at all over the last couple of decades, you’ve probably encountered JavaScript more than a few times. Well, if you’ve taught programming to children in the last couple of years, you’ve probably stumbled across Blockly more than once -- or at least heard the name. Blockly is a very simple programming language that is used to teach coding and computational thinking to an increasing number of young students around the world. It literally makes use of different shaped blocks that all have their own unique value and function. It’s also generally what’s referred to as drag-and-drop, which makes it even easier for kids to learn. Essentially, there is a library of commands and they use a mouse or their finger to drag each of them into a programming field, making a basic program as they go. They can then upload this program to another device (usually a robot) and watch it be executed, which may include forward movement, pauses, dances, turns, and a number of other things!

 

Blockly is a library of visual cues that represent different movements, actions, and expressions. It can be used on the web as well as with various Android apps to control the movement of robots like the Ozobot, Edison Robot, and mBot as well as welcome students as young as 8 years old into the programming world. Blockly is also very graphical as it uses interlocking blocks to represent different coding concepts, like variables, logic, loops, and more in a way that’s extremely easy for a child to understand. Another reason it’s great for those who are just starting out is because it allows users to still get programming experience without any of the highly advanced complexities of different forms of coding. There’s no need to consider syntax or stare down the open-endedness of a blinking cursor on a blank line, for example.

 

For users, Blockly provides a lot of benefits, not the least of which is the fact that it is extremely intuitive. It’s constantly growing both in scope and in the number of people who use it. Some of its other features and benefits include the fact that the code kids create is exportable, everything about Blockly is open source, and it’s customizable, allowing students to use it in the way that works best for them. And, despite its regular use in coding toys and child devices, Blockly is a lot more powerful than it’s often given credit for. It empowers those using it to implement complex programming albeit in a simpler way. Plus, Blockly has risen to international fame with availability now stretching to over 40 languages and dialects. It’s a fantastic way to get kids started whether it’s in the classroom or after school!

 

C

 

Yes, the name of the next programming language that we’re going to talk about is simply ‘C.’ It’s that simple - just the letter ‘C.’ This language is described as a general-purpose programming language that provides constructs that efficiently map machine instructions among other things. This has led to it finding a consistent home in various operating systems (OS’s) and application software on various computer platforms. C has actually been around for quite sometime with its original conception dating all the way back to the late 60s. Since then, it has grown into one of the most widely used programming languages ever, though many would argue that does not remain the case today. Some of its basic functions include enabling low-level access to memory, providing language constructs, and eliminating the need for constant technical support.

 

This language was designed to enable cross-platform programming. Programs written in C are generally portable and can be compiled for use in a wide variety of different computer programs and operating systems after just a few alterations are made. C has served as the foundation for other programming languages as well, including, most notably C++, which we will discuss later, and also Java, JavaScript, Python, Swift, and others. The control structures and other basic features that are used in these languages all originated from C. Programmers are able to use manually typed code when programming with the C language and this form of computer science has helped implement change in mainframe computers, minicomputers, and microcomputers dating back to the 70s.

 

As for the text used in the C language, it includes both the lowercase and uppercase letters from A-Z, the digits 0-9, and some special characters, including most of the standard ones, like exclamation points, the plus sign, parentheses, and so on. There are also 32 keywords in the C language, which are known as reserved words. When typing code, these words cannot be used for any other purpose other than those that they are predefined to represent. Some of the words are break, continue, do, default, return, void, switch, float, and goto, among others. The language recognizes these words as actions to execute and uses the other characters in a line of code to carry out the programmed request. Though it seems complex, the C language is something that’s relatively easy to pick up with practice and it could open the door to the ability to learn other programming languages in the future!

 

Python

 

Another language that’s used a good amount in education is Python. In fact, if you’ve ever used or researched a Raspberry Pi computer, you’ve probably at least heard of this language. The two work pretty well together and learning Python is a great way to break into the programming world. Actually, Python is a pretty high-level language that’s used for general-purpose programming. It was first released back in 1991 and emphasizes code readability more than anything else. Its syntax allows programmers to express concepts by writing fewer lines of code than would normally be required, according to those more familiar with it than us. Essentially, this means it’s a bit more efficient than languages like Java and even C++. Using Python permits coders to create programming on either a small or very large scale.

 

Among Python's features are a dynamic tape system and automatic memory management. It also has a larger than normal standard library, which is a library that’s made available across implementations of a programming language. Whether students are looking to learn more about object-oriented programming, structured programming, aspect-oriented programming, or functional programming, they can do so with Python. The interesting thing about Python is that not all of its abilities are built into it. It’s actually designed to be very adaptable and modular. This has led to it becoming especially popular when it comes to adding interfaces to already-existing applications. It also tends to reject more complicated syntax and focus more on clear and concise typed code, which makes things a bit simpler for the user.

 

Everything about Python is meant to be easily read. Even the format of the typed code is very neat and intentionally uncluttered. Some of its unique attributes are the absence of curly brackets to delimit blocks and the fact that including semicolons after statements is optional. To delimit blocks, Python uses whitespace indentation. It also has its own sets of statements, which include if, for, while, and import statements among others. ‘If’ statements, for example, conditionally execute a block of code while ‘for’ statements iterate over an iterable object and capture any variables that may be present. This may sound a bit complicated, but some of the things you can do with Python are pretty amazing. Especially since it can be used with a Raspberry Pi, it’s fairly easy for students to get started! Give it a try and let us know what you think!

 

C++

 

The final programming language we’re going to get into is C++. Yes, it is twice as good as C, but it is also a very powerful language and one that is pretty widely used. C++ is also used for general-purpose programming and highlights imperative, object-oriented, and generic programming features but can also provide coders with low-level memory manipulation. Originally, C++ was designed for more of a use in programming within large systems and, for that reason, its flexibility, efficiency, and performance are each pretty advanced. Aside from these, C++ is a useful language to know for people who build software infrastructure, desktop applications, servers, and even tools like space probes. For devices that require high performance, C++ is a smart place to turn.

 

In terms of makeup, C++ is a compiled language, resulting in implementations being available on many different platforms. It’s been standardized by the International Organization for Standardization and has undergone many updates, with the latest version being finalized back in 2014 after initially becoming standardized in 1998. Before that, C++ was conceived in 1979 by a Danish computer scientist named Bjarne Stroustrup. He needed a language that worked faster and provided more practical use and decided to start working on something that would increase the efficiency of the C language, thus resulting in the creation of C++. Some of the new functions available when C++ first became available included a number of virtual functions, name and operator overloading, references, constants, improved memory allocation, and improved type checking.

 

The first version of C++ was released in 1985 and quickly became the version that was used as reference. By later that year, it was already being used in commercial spaces. Every update to C++ has followed a set of specific guidelines that help keep consistency and efficiency. All updates must be driven by actual problems, for example, and its features should be immediately usable in the real world. These features also need to be implementable so that computer scientists can gauge the tangible outcomes of the code they create. C++ allows programmers to choose their own programming style as well, something that should not be understated and a feature that continues to keep C++ relevant. All in all, it takes a great deal of commitment and patience to learn programming, but thanks to simpler technologies, kids can start learning the basics right now.

 

We hope that everyone has a fantastic Computer Science Education Week and that all students get to take part in some fun Hour of Code activities! For the latest EdTech, STEM and 21st century education news, follow Eduporium on Twitter and Instagram, like us on Facebook or sign up for our newsletter for announcements on the best EdTech deals around! Have an idea for the next Eduporium Weekly theme? Send us a message on any of our social media accounts!

 

Image: © TechWorm