Live data from Hacker News

Ask HN: How do I learn JavaScript?

news.ycombinator.com

71–80 of 128 posts

Re: Ask HN: How do I learn JavaScript?

#71
post #64

Something to keep in mind: Javascript has a lot of obscure language idiom that aren't used in practice. This has to do with how the language was rushed into production, and has gone through quite a lot of revisions. This point is made in the (now very outdated) book "Javascript: The Good Parts," https://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockfo... . Crockford, the author, brings you through the best way to…

In my mind callbacks abstract events and it's better to toss events into a more composable async pipeline than it is to write a body of code to ad-hoc handle a problem right there.

Re: Ask HN: How do I learn JavaScript?

#72

Earlier quoted context omitted.

OP, this is the best answer to your question. Lots of other answers on this thread are either ignoring the part where you said you wanted to really master the language and recommending introductory JS materials, or, bizarrely, telling you to learn something else instead. I don’t think you can master a language in one go. It’s not how most people’s brains work. I think you do it in stages. Get yourself a good introduc…

Reading the spec will convey many useful details. If you truly want to master them, though, implement the spec and pass the conformance suite. If Fabrice Bellard can do it, in C, with no dependencies, you can do it in whatever language you're already comfortable with, using the standard library. It's simply a matter of sustained effort and focus over time.

Yes I discovered so much unexpected combinations of features after implementing a Java parser. Totally pointless for actually writing Java though, so I question the motivation here. Just coz something is permitted in the language doesn't mean you should. I bet the corners of JavaScript are deep. Mastering them is a party trick, rather than something practical.

Re: Ask HN: How do I learn JavaScript?

#73
No browser APIs means you'll want to use node. Except node APIs are largely based on callbacks, and you want to learn modern stuff like async/await. I think you'll learn modern JS best using deno. TypeScript is a superset of JS, and in the default configuration you can pretty much just write JS. And with APIs that are friendly to async/await you'll learn modern JS.

Re: Ask HN: How do I learn JavaScript?

#74

A little side note; You could consider ClojureScript. I've worked with JavaScript many times through the years, and never felt that I got close to becoming an expert no matter what. The language it self is in the way. Browser compatibility, language weirdness (like the =, == or === mess) and there are a lot of standards around. But now a days working with ClojureScript, which settles the language problems, I get to f…

Unfortunately, when one is seeking to learn JavaScript, you will encounter all variations of: + Use Typescript (no, it's not the same as JS) + Use ClojureScript + Use Elm + Use Reason + Use ... If you go back about five years, you'll find this pattern also exists, except all the things people were saying to use are dead. Dead like a forgotten Egyptian pharaoh - buried and never to be seen again. Unfortunately, all th…

how common are larger vanilla JS codebases?

Re: Ask HN: How do I learn JavaScript?

#75
Just jump in and flail like the rest of us do.

There's not a lot of point in obsessing over the minutiae that is constantly in flux and varying at the whim of the Chrome and Firefox teams. You'd be aiming at a moving target, and one that is constantly jinking up and down and side to side, even when it is going in the same direction and not doubling back on itself.

Re: Ask HN: How do I learn JavaScript?

#76

Earlier quoted context omitted.

Unfortunately, when one is seeking to learn JavaScript, you will encounter all variations of: + Use Typescript (no, it's not the same as JS) + Use ClojureScript + Use Elm + Use Reason + Use ... If you go back about five years, you'll find this pattern also exists, except all the things people were saying to use are dead. Dead like a forgotten Egyptian pharaoh - buried and never to be seen again. Unfortunately, all th…

how common are larger vanilla JS codebases?

There are millions.

Re: Ask HN: How do I learn JavaScript?

#78
I poked around Javascript for years trying to obtain some proficiency at it using just online resources. I finally broke down and bought the O'Reilly book "JavaScript: The Definitive Guide". Although O'Reilly's quality has been steadily decreasing year after year, JSTDG was the perfect resource for me. What you're looking for is actually covered in the first part of the book; the remainder of the book goes on to cover the browser API and some of the server-side ecosystem.

Re: Ask HN: How do I learn JavaScript?

#80

A little side note; You could consider ClojureScript. I've worked with JavaScript many times through the years, and never felt that I got close to becoming an expert no matter what. The language it self is in the way. Browser compatibility, language weirdness (like the =, == or === mess) and there are a lot of standards around. But now a days working with ClojureScript, which settles the language problems, I get to f…

Unfortunately, when one is seeking to learn JavaScript, you will encounter all variations of: + Use Typescript (no, it's not the same as JS) + Use ClojureScript + Use Elm + Use Reason + Use ... If you go back about five years, you'll find this pattern also exists, except all the things people were saying to use are dead. Dead like a forgotten Egyptian pharaoh - buried and never to be seen again. Unfortunately, all th…

It really feels that with typescript it may be finally different. Deno, the new version of Node, will speak typescript natively; and the adoption and satisfaction rates for typescript are over the roof. Coffeescript or clojurescript don't even come close.
Post reply on HN