Let’s Begin at the Beginning
Originally, he wanted it to resemble Scheme — a multi-paradigm programming language that many developers today have never even heard of, let alone encounter under normal circumstances in the wild.
As a result of this false advertising, traditionally trained developers often encounter bouts of frustrations because they’re applying what they know against something that looks similar but isn’t producing the result they’re expecting.
Being multi-paradigm has its perks — mostly in the language’s ability to adapt to its requirements and not the other way around.
‘Traditional’ languages like Java and C++ have clear structural and syntactical requirements that need to be fulfilled for the program to compile.
It doesn’t matter how robust a language is, an unskilled developer still has the same potential to create disasters, regardless of which language they’re coding in. It’s just often made worst when they work in a space away from their domain of ‘expertise’.
let. However, this isn’t as big an annoyance as everyone seems to be making out since the advent of TypeScript.
It’s All About Mindset and How Much You Know
As developers, we tend to be biased towards what we know best. Resistance to a different way of thinking is natural and part of the learning process, especially when we become entrenched in code patterns we know work.
But while some patterns may work well for a certain language, it is not always universal or the syntax is structured so differently that you can’t quite ascribe the same ways of thinking to achieve the same results.
No one has to sit through hours of computer science classes just to get a working program or wade through several days worth of tutorials, content, books, and reference manuals just to get the basic concepts.
That’s why it’s also important to take the time and learn it properly — from the ground up without any side distractions like libraries and frameworks, which often come with their own requirements.
Only then can you truly begin to approach your code with an open mind and not get stuck in a self-perpetuating feedback loop. This is because, as humans, we tend to choose only what we want to see rather than reality.
To be an effective and efficient developer, you need to learn how to move beyond this. Senior developers have this skill mastered.