, 8 tweets, 2 min read
My Authors
Read all threads
“It is not only the violin that shapes the violinist, we are all shaped by the tools we train ourselves to use, and in this respect programming languages have a devious influence: they shape our thinking habits.”
― Edsger W. Dijkstra
In human languages, studies have shown that people categorize events according to the grammatical constraints of the language in which they operate and that for bilingual people the effects are context-bound and transient.
This means that the range of how you can think about something can be tied directly to the language constraints that you are thinking about the problem in. It is possible to think of a completely different solution simply by changing the language.
Computer languages work in this way as well. If you are addressing a problem with JavaScript you may come up with a completely different solution if you switch over and use Rust.
It is not only languages but programming patterns and paradigms that work this way. If you are fluent in OOP but not FP, you will be constrained by the pattern’s outer boundaries.
If you are fluent in both OOP and FP, you could switch your context and starting thinking in FP, broadening the total problem space you are capable of working within.
Personally, I am fully fluent in OOP but have yet to think natively in FP. I am also fluent in JavaScript, Ruby and conversational in TS and Rust. I can imagine all of the problem space that my brain is capable of entering but has yet to gain access to.
My goal is to become fluent in FP soon. I have heard of people who learn one programming language a year. Even if they don't end up using them professionally, I imagine there are huge benefits to this, opening up the problem space you can think within.
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with Mike Piccolo

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!