
JavaScript for impatient programmers
by Axel Rauschmayer · first published 2019
13mentions
11recommended by
12HN commenters
2019–2024first – last mentioned
92% recommend8% neutral
Why HN recommends it
Concise but thorough tour of modern JavaScript, with accurate detail on subtle behaviors such as object key ordering; recommended as a quick reference for experienced programmers and for learners after a basic intro.
Summarised by Claude from recommending comments
Affiliate links. As an Amazon Associate I earn from qualifying purchases.





I’d recommend trying the graded exercises in https://www.coursera.org/specializations/data-structures-alg... or https://www.edx.org/course/data-structures-an-active-learnin... — unfortunately, for the most benefit (online automatic grading), you’ll have to pay either EdX or Coursera, but EdX offers a small sample of exercises to start, if I recall correctly. And there are a few more courses after
on “Ask HN: Who Wants to Be Fired?” ↗I liked "JavaScript for impatient programmers" (https://exploringjs.com/impatient-js/) which is a relatively short but reasonably comprehensive explanation of modern JavaScript. In particular, it accurately describes a lot of important details (like how integer keys in objects work, "holes" in arrays, etc). It doesn't cover the complete language, in particular it doesn't cover all outdated concep
on “Ask HN: How do I learn JavaScript?” ↗I like "Javascript for Impatient Programmers": https://2ality.com/index.html If you mean ES6 as "modern" JS, then you might want to avoid any material on prototypical nature of "true" JS (which it still is under the hood). Personally I find classes…
on “Ask HN: How do I learn JavaScript?” ↗These two books are based on the 2ality blog and also free to read online: – JavaScript for impatient programmers (covers most of ES1–ES2020, incl. many advanced topics): https://exploringjs.com/impatient-js/ – Deep JavaScript (covers advanced topics): https://exploringjs.com/deep-js/
on “Ask HN: Recommended resources for learning advanced JavaScript” ↗I you are just learning the language, I'd suggest skipping this particular book altogether for now. I'd start with a "Re-introduction" tutorial on MDN [1] followed by another Axel's book - "JavaScript for impatient programmers" [2]. Don't read the whole book at first, focus on specific chapters: parts on Modularity, Collections and Asynchronicity. As for TypeScript, the official Handbook [3] is
on “Deep JavaScript” ↗I can recommend this book: https://exploringjs.com/impatient-js/
on “Ask HN: Where can one learn about boring web development?” ↗My book may work for you (free to read online): “JavaScript for impatient programmers”. http://exploringjs.com/impatient-js/toc.html
on “Ask HN: Best way to learn JavaScript in 2019?” ↗axel rauschmayer's books are pretty good: https://exploringjs.com/ (edit: a more direct link: https://exploringjs.com/impatient-js/toc.html) I remember learning the fairly deep == type-inference algorithm by reading something he wrote, but I don't recall which thing it was in. A lot of the material is suitable as reference, so I haven't sat down and read much like a novel.
on “Going the Other Way” ↗+1 as a non-JS programmer. His "Exloring ES6" saved me when I was lost as knowing only about good old ES5 (or maybe ES3? I don't even remember.) "JavaScript for impatient programmers" [2] also looks promising. Just purchased one. The PDF looks great although the cover is meh :-) [1] https://exploringjs.com/es6.html [2] https://exploringjs.com/impatient-js/
on “Deep JavaScript” ↗It's honestly a bit hard to say I think. Rails, maligned by many, loved by loads, is doing some pretty ambitious things that I can see appeal to a lot of smaller eams in the future, particularly because of hotwiring: https://rubyonrails.org/2021/12/15/Rails-7-fulfilling-a-visi... JavaScript is a given, getting really good at that makes picking up the tool of the week easier: https://exploringjs.co
on “Ask HN: Becoming senior backend developer in 2022. What to learn?” ↗This content is associated with a $75 web course. The pricing page was a little hard to find for some reason. https://learnjavascript.online/pay.html For a brief overview of modern JS I would suggest Dr. Axel Rauschmayer's JavaScript for impatient programmers (ES2022): https://exploringjs.com/impatient-js/toc.html Just about all chapters are free.
on “Show HN: JavaScript Knowledge Map” ↗My go-to JavaScript book will always remain “JavaScript for impatient programmers”[1], a 639-page book written by Dr. Axel, PhD. It's quite complete and detailed. But as if it wasn't enough the author wrote a second (smaller book) named “Deep JavaScript: Theory and techniques”[2]. Both are free to read online! [1] https://exploringjs.com/impatient-js/ [2] https://exploringjs.com/deep-js/index.
on “Eloquent JavaScript 4th edition (2024)” ↗FWIW, I'd say that "javascript for impatient programmers" should have a course teaching patience as first chapter ;)
on “JavaScript for Impatient Programmers” ↗