Written by Brandon Berthrong of BSD Education
Why do we refer to coding languages as “languages”? While it’s easy to pass off as just a phrase, the term is actually remarkably fitting; understanding why can help broaden and deepen our understanding of both coding and our spoken languages. Here are just 5 of the interesting ways coding is like a traditional language:
1. IT’S USED TO SHARE INFORMATION.
First, and perhaps most basic, coding and languages are both used to share data. In our daily interaction with other people, whether over the internet or in person, we use language to convey our thoughts, feelings, and intentions. At its core, code is doing the same thing; when you write code, you’re basically talking to the computer and telling it what you want. It could even be argued that much of the time, the computer then takes those instructions and in turn uses them to communicate with other people through web pages, video games, apps, etc.
2. THEY HAVE RULES AND GRAMMAR (OR SYNTAX).
Rules and grammar are an essential part of language. Without rules and the framework they provide, our languages would not be able to convey meaning as effectively as they do. The same could be said about code. If you get the rules wrong in code, the computer can’t understand what you’re trying to say.
3. THEY ARE EXTREMELY VERSATILE.
While code does have very specific rules, much like traditional language those rules also allow freedom. We can use spoken language for a huge variety of purposes: we use it to share thoughts, request things, and generally to communicate. We can even use language to make music or play games with it. Code has its own flexibility. For all its exacting rules and specifications, it can be used to solve different problems in a variety of ways. While some methods might be best suited to certain instances or contexts, as long as it follows the basic rules there generally isn’t one “right” answer.
4. THERE ARE MANY DIFFERENT LANGUAGES
Mandarin and English are very different languages. They have different grammar, and methods of speaking or writing. While they ultimately fulfill the same purpose, some ideas might be easier to express in English, and some ideas might only be fully appreciated in Mandarin. The same is true of code. While one language may be able to solve a variety of different problems, another language might be able to do it a little better. Some languages can converse fluently with data, some are right at home giving a robot instructions. In the same way that learning a new spoken language allows you to communicate with new people in new ways, learning new programming languages allows you to deal with problems in different ways.
5. YOU WON’T BECOME FLUENT IN A DAY
If you really crunch, after a day of study you might be able to say hello, ask for the bathroom, and maybe order from a restaurant in a foreign language. But to really understand a language takes practice. While learning a new programming language is generally faster than picking up a foreign language, ultimately the same principles apply. After a day or two of study you can create some cool projects and build a base understanding of the rules, but you won’t be able to build an expansive piece of software. While that can be discouraging, it’s also what makes learning so rewarding. Learning a new programming language, whether it’s your first or fifty-first, can allow you to think about old problems in new ways and accomplish things you couldn’t before.
While they may look very different on a page, when it comes down to it coding languages and spoken languages share many similarities. In comparing the two we allow ourselves to see both things in a slightly different light, to understand new aspects of the familiar; and maybe that slight shift in perspective makes us reconsider an oft-occurring problem or particularly vexing issue, allowing us to find a better solution. Ultimately, it’s by making changes in the way we think and developing new ideas that we change a world, a country, or even a classroom.