What makes Javascript such a weird but powerful programming language?
Let’s be honest. Javascript is a weird programming language. Douglas Crockford, the creator of JSON and one of the most well-known Javascript programmers, famously said in his book Javascript: the Good Parts:
“Javascript is built on some very good ideas and a few very bad ones.”
This much is true. At its core, Javascript is very different from pretty much every other programming language out there. So, why did the programming community adopt it? The short answer is we didn’t have a choice.
For a long time, if you were a developer who wanted to write code that would execute inside a web browser, you needed to use Javascript. However, after being coerced to use this funky programming language against my will for years, I can say that it’s actually pretty neat despite being so different. I’ll explain why, but let me start by explaining what makes the language so different.
What is Javascript?
At its core, Javascript is an asynchronous, single-threaded programming language that leverages an event queue to do a lot of the work.
That might sound like a lot of meaningless buzzwords, but they’re not. You need to understand what all of them mean to really understand how the language works.
Recently, one of our students at The Firehose Project asked me about how Javascript works. I’ve removed the student’s name and image for privacy reasons.

Javascript is a strange contradiction, which is one of the things that makes it powerful and enjoyable. The student’s question cuts to the core of its strangeness.
Let me get into that a little deeper:
- Javascript is a single-threaded programming language. In a sense, this means that it can only do one thing at a time.
- Javascript is also an asynchronous programming language. In a sense, this means that it can do more than one thing at a time.
How can this be? None of this makes sense!
What are some programming situations where you need Javascript to take this approach?
What makes Javascript hard to adapt to?
The next advanced Javascript topic you need to understand
Why there is hope for those who want to learn Javascript
Stay updated on the go with our mobile app.
Get latest insights with smoother, more personalized experience through TIA mobile app.







