This wasn’t my first go-round with CodeAcademy’s Python tutorial, so many of the introductory concepts were already known to me. That being said, it was still interesting to see how code and programming language fits into our existing linguistic conceptual structures. Unless you are a linguist, it doesn’t seem like that you are constantly aware of exactly how we use language, so the process of learning a new one can make apparent the underlying, tacit processes going on every time we communicate.
The concept of symbols that mean and symbols that do is made very transparent with programming language. We are required to set and define variables to be imbued with meaning in order to be useful in various contexts. We fill the objectively meaningless shell of a word with the numbers, strings, etc, that will become the meaning of this placeholder word. We are then able to make symbols do things using preset symbols and the symbols we defined. The actions these symbols result in when combined are dependant on the meaning packed into them. The program reads them, computes, and returns to us even more symbols packed with meaning. It’s symbols all the way down!
What I find interesting is how even those of us who don’t pay close attention to the programming languages and computations taking place in our technology are utterly beholden to them. Our entire lives are centred around computers, and this gulf between those who know and those who use highlights the importance of good design in this area. It is for this reason I also believe coding literacy should be a fundamental skill learned by all. Websites like CodeAcademy do a wonderful job of opening up these seemingly esoteric and black-boxed domains to make them more accessible to the general public.