Last Edit: 2020-11-28
What can change how you think?
The Sapir-Whorf Hypothesis loosely says that the structure of a given language changes how its speakers think. The theory was largely dropped by linguists due to some insidious racism that the hypothesis supported (namely the view that that the speakers of some languages are inherently dumber than others). However, it does motivate some interesting thoughts.
The first thing that I thought of when learning about the hypothesis was its application to programming languages. After all, programming languages exhibit many of the same properties of natural languages: they define different sets of syntax and semantics and many of the parsers for modern programming languages are even inspired by those for natural languages.
Does learning Rust instead as your first programming language change how you view computer science? It's easy to see how elitism can creep up on us again here, like how people think learning a language like C++ gives you bragging rights over a higher-level language like Python (or god forbid Microsoft Excel).
Part of this is knowledge obfuscation, where a language forces you to be aware of other elements, like pointers to memory in C++ or genered pronouns in romance languages. But I like to think that it's not just additional information but also a shift in process, giving you a new framework for thinking about completing problems. In linguistics, I like to think of how agglutinative languages don't just teach you about the power of affixes, but how augmenting the root essence of a word is sufficient to capture all the naunce one could desire.
Is the application of Sapir-Whorf to programming languages just a cosmetic similarity between human communication and computer instructions? Or does the Sapir-Whorf hypothesis hint at something bigger: that learning certain constructs can alter your way of thinking?
My friend Peyton likes to enthusiasticaly claim that there are courses (e.g. compilers, algorithms, functional programming) at Penn that altered the way he views computer science and in turn "changes the way he thinks". I think this makes total sense.
Studying physics doesn't just teach you that there exists things like quarks and photons; it also gives you a mental framework for rationalizing what forces act upon a particular body. In fact, this is one reason why physicists tend to do well on Wall Street - a place that requires you to constantly think about cause and effect. As much as it seems like drinking the Kool-Aid, I really enjoyed my time in quantitative finance because of its emphasis on quantifying risk and reward. Especially in a world at the mercy of random factors or incomplete information, it's sometimes reassuring to know that you're making the observable best decision that you can.
So it leaves me to think: what are the subjects or frameworks that give you the opportunity to reboot your brain, providing you the tools and mindset to tackle arbitrary problems?
I don't think there's actually a salient point to this blog post. I've just recently been finding myself applying generalizable frameworks from one area to seemingly disparate others and I really enjoy thinking about reductions in all of their various forms. In fact, all I really have are more questions for the reader.
Does there exist a single framework to reason about and solve any kind of problem? Are the canonical problems in every field reducible to those of another field? Will I stop procrastinating on deciding a topic for my senior thesis?
Only time (and lots of reading) will tell.