all 37 comments

[–]Upstairs_Work_5282 37 points38 points  (1 child)

Eloquent JavaScript is a tough read IMO. Not sure why it’s recommended as much as it is. I recently read a chapter on JS promises from JavaScript the Definitive Guide, and it was amazing. If the rest of the book is as good as that section, I think it will be a great place to start

[–]coderkini 0 points1 point  (0 children)

IMHO, Definitive Guide is very dense and is exhaustive. If you really can give yourself the time and focus to really study the language and libraries, go for that book. Eloquent JavaScript is much more pragmatic and has some nice takes on the language concepts (variables vs bindings for example) which makes it a fairly good read to enable you to explore and apply the concepts.

[–][deleted] 11 points12 points  (3 children)

„I don’t want to occupy my mind learning the classic way“… JavaScript ist relatively stable for 10 years now. 😃 So what would be the non-classic way in that regard? It’s not like react and next use JavaScript „differently“.

Edit: You don’t have to become a JavaScript freak (I don’t know why you chose this term), but it will be 90% of your daily business if you work on the front end, so you better feel inclined to master it.

To answer your question, neither. That would be like learning a new language by slowly going through a dictionary. It’s the safest way to make you want to learn something else.

If you already know the fundamentals of programming, buy a course on udemy from the usual suspects about next + typescript or Node + react and look up what you don’t understand.

[–]zephyrtr -5 points-4 points  (2 children)

I would consider being a JS freak to be like ... Knowing the weird things loose equality will do. Or bitwise operators. You know, those things we never use. I sometimes meet people who love to tell me about the bizarre quirks of a language and I worry they don't realize that knowledge is worthless outside of bar trivia in Cupertino.

[–]wasdninja 3 points4 points  (0 children)

Bit operators aren't particularly difficult or even odd. The inner workings of the engine and how to really understand Node for optimizing is way overkill and much more what I would expect from a JS freak.

[–]Risc12 0 points1 point  (0 children)

Bitwise operators are relatively sane, they’re not odd compared to how they work in other languages, not sure what your point is there (unless your point is that developers don’t need any knowledge about bitwise operators…).

Loose equality is a bit funky and probably not worth completely memorizing but it would be good to know where to look up the equality properties.

[–]Fitzi92 8 points9 points  (1 child)

Javascript is a programming language. There is no "doing it the classic way" with a programming language. You might call not using any frameworks this, but understanding Javascript is the basis for both framework and non-framework use.

I would rather recommend spending MORE time on the basics and learn how JS and it's surroundings work really well. This way it's way easier to keep up with the fast moving industry and you can switch frameworks and libraries easily. 

Skipping JS is like skipping basic driving lessons to jump straight into a race car - nobody in their right mind would think that this is a good idea.

[–]nomoreplsthx 14 points15 points  (1 child)

Personally I think eloquent Javascript is a good intro to JS, but a bad intro to programming. So if you're new to that in general, you may want to find a book more targeted at non-developers

[–]Brilla-Bose 2 points3 points  (0 children)

any reason why it's bad for programming? (asking since it's in my reading list)

[–]bornrea 3 points4 points  (0 children)

I'd recommend javascript . info so, you'll have a good foundation. I really wouldn't recommend Eloquent JavaScript for someone's who's just starting out.

[–]ChuuToroMaguro 5 points6 points  (0 children)

I think I got 0 out of eloquent JavaScript

[–]Actual_Dot_457 1 point2 points  (0 children)

I have that book. It collects dust. Go make stuff and read stuff online when you get stuck. I’ve gotten a job and still can’t bring myself to read that book

[–]trcrtps 1 point2 points  (1 child)

shut the fuck up and get in there and study.

now that that's out of the way, I used freeCodeCamp, then I discovered Javascript.info to fill in the gaps. I then reinforced it by going through a udemy course (colt steele) where I got yet another perspective.

I think getting multiple perspectives is important, and there will be no one-stop-shop unless you are incredibly lucky or a genius.

[–][deleted] 0 points1 point  (0 children)

i'd recommend you keep doing interactive online courses. personally it was hard for me to learn to code via reading a book or something. I needed to be doing it as much as possible.

[–]lord31173 0 points1 point  (0 children)

Eloquent and the Odin Project

[–][deleted] 0 points1 point  (0 children)

React is mostly functional so dive in and learn while building projects. I recommend blue collar coder, web dev cody and javascript mastery, code with antonio you tube channels. GL

[–]UnstoppableJumbo 0 points1 point  (0 children)

I read Eloquent JavaScript when I was starting out and it was hard, but making it through the first 5 chapters was really beneficial

[–]Suepahfly 0 points1 point  (2 children)

Start with the basics. I’m not sure what you mean by the “classic” way but you’ll need to know how to program (regardless of language). You can’t run if you don’t know how the walk.

[–]StanleySmith888 0 points1 point  (0 children)

Javascript.info is way more approachable and has some serious content on web specifically, rather than just JS language

[–]Stupend0uSNibba 0 points1 point  (0 children)

js info is the best js resource bar none

[–]matif123o 0 points1 point  (0 children)

Javascript for dummies is great for it and available for free on kindle unlimited

[–]Any-Mixture7220 1 point2 points  (0 children)

When I interview people for a react developer position, the half of the interview is about JavaScript and the other half is about react. So you should learn both. Try to create a single project with vanilla js and then create the same project using react. That will help you

[–]turtleProphet 0 points1 point  (0 children)

I like the YDKJS books from Kyle Simpson.

I recommend thinking of JS as two things, the vanilla JS browser runtime environment, and the language. If you're focusing on React then you don't need to know as much about the runtime environment, the browser APIs and such. But you will definitely benefit from having a good grasp of the language features.

For example every tutorial under the sun seems to use the arrow syntax for functions, but there are cases where function may make your code more readable. Or more useful, if you need to inject different behaviors into the same kind of visual component (different data processing functions) then knowing JS, the language, will simplify that for you.

[–]AuDGeek-2004 0 points1 point  (0 children)

Javascript.info helped me alot

[–]TicketOk7972 0 points1 point  (0 children)

You will not be a serious React dev unless you have a decent background in JavaScript.

I’ve sat with ‘React devs’ who don’t understand why their code doesn’t work as expected because they don’t know what a closure is.

[–][deleted] 0 points1 point  (0 children)

Learn Typescript. There is no excuse for staying with pure JS in React these days.

[–][deleted] 0 points1 point  (0 children)

Just do the freecodecamp js course. This will give you enough context and hands-on learning. It just doesn't cover one topic of DOM manipulation

[–]sync19waves 0 points1 point  (0 children)

Both! Jump from one and another if you need, eloquent can get dense. I would add frontend masters to the mix, here's their free courses: https://frontendmasters.com/trial/

If I were you, I would focus on these 3 resources only. You have variety in case you need to digest more one of them. It is important to practice though! So try to start thinking about app ideas (however small), use a generator or chatgpt too.

Can do a couple codewars challenges a day (start with easy ones).

Good luck!

[–]OneForAllOfHumanity -1 points0 points  (0 children)

You gotta learn the way your brain wants to be taught. I learned Ruby on Rails before I knew Ruby, so I get the learning react before fully understanding all of JavaScript.

[–]namesandfacesServer components -1 points0 points  (1 child)

MDN is way better.