It saddens me deeply when the same mistake is repeated over and over again, when people do not seem to ever understand the correct from the incorrect, the truth from the error.
Take for example earth’s escape velocity: 11.2 Km/s. People are convinced that rockets and spaceships that go to space have to travel with at least 11.2 Km/s. Well, of course not! Rockets and spaceships travel with much less speed than that! The escape velocity is about taking an object on earth and kicking it so hard as to send it to outer space. You kick it only once. So, your kick has to give the object an initial velocity of at least 11.2 Km/s in order for the object to barely make it to outer space. If your kick gives the object more speed than 11.2 Km/s, then the object will have some speed left when it reaches outer space. And the calculations are done without taking the friction with earth’s atmosphere under consideration. You need to kick the object even harder to account for that also.
Rockets and spaceships do not get kicked once and then left alone to travel. Instead, they obtain continuous thrust by emitting exhausts, which is exactly what Newton’s 3rd law is about: each action having an equal and opposite reaction.
Also, people seem to never be able to understand that when something rots, it does not itself produce the organisms that make it rot. The organisms are in the environment. So, we can preserve food by creating an environment for it that is deprived of such organisms.
There is one more fallacy that is unfortunately constantly reproduced. That of the influence of words in the thought process. From school until now, I constantly come across this incorrect notion that language shapes our thoughts and that if we cannot express something, then we have not understood it. This is complete nonsense. Complete nonsense.
And I see it and read it constantly. Why people cannot seem to understand this fallacy is beyond me. Whenever I see it, I correct it. In school, in blogs, in conversations, I always try to explain this fallacy. And now I read “Knowing More Programming Languages Will Make You Smarter”. This is the last straw. I decided to write a blog post to correct this fallacy and you are reading this blog post.
People think that words and sentences and languages shape our thoughts. Ummm, no. This is incorrect.
When I was a teenager, I saw a movie on TV, but I do not remember its title or many details about it. All I remember was that someone had a deaf child and he was very sad and anxious about it. He was very stressed and overwhelmed and he was talking to a friend of his about it and his friend said: “Your son can’t hear? So, how does he think? Can he even think?” And this guy goes home and screams at his wife: “Can our son even think?”
Relax, sir. (I am talking to the movie’s fictional character now, in case you did not notice.) Relax, sir. Your son can think and I am writing this blog post now to prove it.
When I was in school, there were some teachers that thought that if you cannot express something, then you have not understood it. This is totally incorrect and I am now going to prove so.
Suppose you want to say something. You have understood what you want to say and you are about to say it, but you forget a key word. This word gives the meaning you want to what you want to say. But you forget what that word is. People cannot understand what you mean to say, because you do not give them this word. But you know what you want to say. And you know the word that is missing. You have just forgotten it, so you cannot say it. You cannot express it.
Now, perhaps your audience is kind and understanding and grants you the right to explain this word using many other words and sentences. Then perhaps someone from audience understands what you want to say and says: “Is that the word you wanted to use?” and then utters the word you wanted. Then, hopefully, you say: “Yes! Yes! Thank you! That was the word I wanted to use!”
You see, you knew what you wanted to say all along. You knew the meaning that you wanted your audience to grasp. It was just that you had forgotten one or more words that conveyed this particular meaning. But there are also cases where you may not have decided the particular words that you should use. You still know the meaning of what you want to say.
And do you know why that is? Do you know why you know the meaning of what you wan to say? This is because, and this is my main point, if someone comes along at that time, someone who has understood what you want to say and tells you that, expressing it in a way that you would want to, then you immediately agree and feel relieved. But if someone would come offering a different meaning of your thoughts, you would not accept it.
When you find yourself in a position that you struggle to express something but you cannot, it is not that you do not know what you want to say. It is because you have not yet found the appropriate words. If someone gives you a multiple choice, you would immediately spot the correct choice and you would be grateful. If no one comes to your rescue, you may not express the meaning you want immediately, but you will eventually. But you knew the meaning you wanted to express all along.
You see, words and sentences and languages are a medium. Only a medium. They are a medium in which to covey out thoughts to others. But our thoughts exist above and beyond words and sentences and phases and languages. Our thoughts are concepts and they are formed in our heads regardless of language knowledge and language skill. Our thoughts are abstract beings and people, who want to debase them to the level of the medium (the language) that conveys them, should be careful. They should be careful because this debasing is sacrilege.
Knowing more languages will make you smarter. Knowing more programming languages will also make you smarter. But, mainly, this is not because you learn more words and ways of expression, but because you learn more concepts. Concepts are what matters. When you learn, you learn concepts, not words, not ways of expression. And when you think, you think in concepts, not words.
You think in concepts. Abstract, intangible concepts.
Of course, you need to convey your thoughts to others, so you need words. For now. But in the future, technology might be able to provide us with other ways to communicate, for example with thought transfer. Then we would not need words and languages as a communications medium, because a better way (that of direct thought transfer) would exist.
Of course, mathematics is based on notation and is tremendously helped by it. But this is because notation conveys concepts and it is the concepts that make mathematics what they are, not the symbols they use per se. We should not idolize words and symbols; we should idolize their underlying concepts. Every fallen civilization has made the same idolization mistake though, so why should we be any different?
Please understand that a person is capable to have thoughts and ideas that transcend their language. It may be difficult or impossible to express them, though. Perhaps they may need to extend the language they use to do so, provide new mathematical notation or whatever. Language, expression, notation, all these are mere helper tools to convey our concepts. Sometimes, these tools are inadequate, sometimes we use them inadequately. But that does not mean that our thoughts are not advanced or inadequate.
So let me put things in order here. Suppose I cannot describe something (e.g. a concept) adequately. What can you deduce from that? There is a chance that I might have not understood it adequately. But there is also a chance that I have understood it perfectly. Then, either my language or notational skills are inadequate, or the language or notation is not advanced enough for my concept to be described. Thus, it is narrow-minded and unjust to suppose that an inadequate capability of expression always suggests inadequate understanding of the matter. There are times that inadequate presentation of a subject suggests a mere lack of expressive skill, or worse, a weakness of the language itself, which may be for any or even all existing languages.
Suppose a person is not eloquent enough or her thoughts take long to be materialized into appropriate words. That does not mean she does not grasp the concepts and the meaning of the things she wants to think and/or talk about.
A great *speaker* has to think fast and talk “fast” and find the appropriate words in a split second. A great *thinker* only has to produce thoughts that correspond to great concepts. A great thinker only has to produce thoughts. Great, abstract, intelligent, intangible thoughts. If we can somehow succeed to get the thoughts out of her, that’s a bonus. But she still is a great thinker, even if we cannot deduce what she is thinking. We have no right to say that she is less of the great thinker than she really is.
But are we sure she is a great thinker? How can we be sure someone is a great thinker if we cannot get them to utter their thoughts? Until thought transfer is possible, we can try using different approaches, but this is beyond the scope of this blog post. But in any case, we have to give people, that have difficulty expressing themselves, the benefit of the doubt.
Restricting yourself to one or two languages is limiting your cognitive abilities, because the more you expose yourself to different ways of expression, you augment your expressing skills and you learn more concepts. The more you expose yourself to ideas the more you expand your horizons and cognitive abilities. The same goes for languages. The more languages you learn, the more you grasp the differences between them, you are introduced to new concepts and you also acquire new expressive skills. But that does not make the languages the absolute ideal. In the language use, there are hidden concepts. It is those concepts that augment your cognitive abilities. Most of these concepts have also to do with expression, so the cognitive abilities you acquire will also help you with your language skills. It is not so much the words you learn but the concepts you acquire that will matter in your thought process. So, by learning new languages, your thought process will get a boost not because of the words you learn but of the underlying concepts in the language and in those words.
Thus, we should not think that learning new languages has a different effect on our thought process than of that of learning new concepts. Both are great for the mind, because both are the same thing. Both are not about tangible things, like words or something else that is tangible or expressive. Both are about intangible things, like concepts.
Words do not constitute the higher structure of our reasoning, concepts and ideas do; concepts and ideas that materialize in our minds and are above and beyond words. Words are the mere vessel of these ideas. And sometimes, they are an inadequate vessel, as well.
The writer of “Knowing More Programming Languages Will Make You Smarter” suggests that writing programs using different programming paradigms shows the positive effect that knowing many different programming languages has to the thought process. But the writer is incorrect. He is incorrect, again because we are missing the forest for the trees. It is not the fact of knowing many different programming languages that helps, but the fact of knowing many different programming paradigms, i.e. programming concepts. By exposing people to programming paradigms, the concepts that they learn augment their thought process. The concepts they learn make them approach the problems using different programming techniques, which correspond to concepts above and beyond language idioms. Concepts like monads and recursion are not mere expressions or statements of computer languages. They are powerful concepts that are difficult to grasp, unless someone exposes you to them. When you learn a programming language that has monads and/or recursion, you are not really learning a way of expressing advanced algorithms, although you might think so. What you are first and foremost learning are powerful concepts that can be used to create advanced algorithms. Thankfully, in a computer language that supports them, these concepts have been materialized in the form of expressions. But they are first and foremost abstract ideas. If you do not grasp them, then you cannot write in that specific language using monads or recursion, even though you might have learnt the syntax.
Thinking in terms of words and languages is holding us back. The mind operates above and beyond words; it produces concepts and it operates on concepts. Then it might try to translate the deductions into words. The more expressive power a person has, the better her deductions will be translated into words. But her deductions are what really matters. Trying to equate the deductions with the way they are expressed is doing injustice to the deductions and to her.
Ok, I wrote this blog post and I expressed my opinion. But why did I have to be disrespectful? Why could not I have written a blog post like a normal person would? The reason is that I am frustrated. I am frustrated because of the injustice that has always been bestowed to people, especially students that had a difficulty of expressing their thoughts, be it because they were not eloquent enough, or they were intimidated, or they did not possess good verbal skills. People like these were equated to people that had dumb thoughts. An easy assumption to make, and as I have proven, a usually incorrect one. Not only an incorrect assumption, but also an unjust one. And when I see injustice, for the life of me, I cannot let it be.