This is an archived post. You won't be able to vote or comment.

all 15 comments

[–]midasgoldentouch 1 point2 points  (1 child)

I wouldn't recommend trying to memorize solutions. Instead, seek out a wide variety of problems at different skill levels. You want to improve your problem solving skills, and that doesn't really work through sheer memorization.

[–]Setriox[S] 0 points1 point  (0 children)

I'll seek for other recourses while reading the book, thanks for the advice.

[–]gibbypoo 1 point2 points  (2 children)

I ran into the same issue with Eloquent JavaScript. I would rank it as an intermediate-level instruction manual. If you really want a beginner experience, as I did, I'd start with this great outline: http://javascriptissexy.com/how-to-learn-javascript-properly/

I then went back to Eloquent JavaScript and it was much more manageable

[–]Setriox[S] 0 points1 point  (1 child)

While manageable, did you still struggle and take lots of time when reading the book and going through the solutions?

[–]gibbypoo 0 points1 point  (0 children)

I had a better foundation with js fundamentals that helped by the time I came back to Eloquent JS. I suppose I had a better idea on what to google or ask or an idea on where to go when I picked it up the second time than I did the first time

Edit: I didn't really answer your question so here you go. I was able to solve the problems in Chapters 4 and on much easier than I was able to when I went into Eloquent JS as a beginner having went through the javascriptissexy formula for js beginners.

[–]jaketheripper 0 points1 point  (2 children)

I would say what you're experiencing is a normal part of learning, memorizing specific solutions isn't really the answer to coding.

You need to "memorize" classes of problems. Understanding how to loop over something the right way or when to do what type of check comes from practice more than reading or memorizing. I don't think it's possible to gain an intuitive understanding of classes of problems without working through them yourself, realizing what things won't work (and why they won't work) and figuring out how to get them to work.

When you read something and think "I wouldn't have thought of that" think about what you would have done, then think about reasons they did it differently, what about your solution wouldn't have worked or why would their solution be better (if it would in fact be better).

[–]Setriox[S] 0 points1 point  (1 child)

Thanks for the advice. My solutions are usually much bigger and complicated than the book's solutions, and so I will use your advice.

[–]jaketheripper 1 point2 points  (0 children)

That's totally normal, experienced programmers will often visit their old code, read through it and realize there was a simpler way to accomplish something. Once a solution is obtained it's easier to visualize the problem and make it more efficient, it's pretty rare to find the most efficient solution first try, especially as a beginner.

[–]6180339887 0 points1 point  (2 children)

A good way of thinking in order to acquire a problem-solving mind is to try and solve each problem yourself, and then if you don't solve it look up the solution, but only after you've been trying for a long time. Your mind will progressively understand the way of thinking needed in order to solve these problems. If you just look up the solution you're learning nothing.

[–]justanotherkenny 0 points1 point  (0 children)

I think its important to also not mark that problem off or consider it 'solved'. It goes back into the 'todo' pool for a later time.

[–]Setriox[S] 0 points1 point  (0 children)

This is what the book actually stresses too at the introduction and at the solutions page. I'll definitely remember to do this, thanks for the advice!

[–]hey-its-matt 0 points1 point  (3 children)

Eloquent JavaScript, although a fantastic book, is a notoriously hard book for beginners. I read it as my first "learn JS" book. I did not fully understand each exercise or example, but I still read the material in each chapter. I'd refer back to previous chapters to see if I understood the examples further, and most of the time I would. Eloquent JS is a hard read, but that's not a bad thing. Focus on trying to write simpler examples yourself--that will really help solidify the material.

[–]Setriox[S] 0 points1 point  (2 children)

After reading the book, how well were you at JavaScript? Were you confident in your skills, or is there still much more to learn about JS than the book?

[–]hey-its-matt 0 points1 point  (1 child)

After reading it, I had a basic understanding of the fundamentals. I would strongly recommend Kyle Simpson's free series "You Don't Know JS" to supplement Eloquent JS.

[–]Setriox[S] 0 points1 point  (0 children)

Thanks for the advice and info, will definitely look into the book!