Take things slowly, don’t rush, and don’t be afraid to review concepts that you’ve already done. It also helps to set yourself tiny projects as you go along, even if it is as simple as
print a variable with my name in it. Anything to get you thinking.
Whenever I face a problem I do three things:
- Think about what it means, and how I would do it on paper, or in real life.
- I write pseudo code. Pseudo code is just written instructions that are written like you might write code:
write a function called 'x'. Inside the function check to see if "hi" is equal to "HI". If it is, print "yes"
This is like writing instructions for someone.
- Finally, I translate the pseudo code into real code.
I hope this helps!
I highly suggest using an editor like Sublime or Atom as a workstation to code. It’s just really quick for catching errors and helps you visualize and format properly (although you probably have to manually configure them to compile js, but that’s a quick 5 minute process that is easy to google).
I also find it really comforting to work with a reference book by my side just in case I want to delve into a specific topic deeply or just browse generally. I’m not familiar with the best JS books but asking for recs here and on reddit/discord/irc you can probably get a bunch of ideas. If it’s a language you’re serious about studying, those 20-40$ can go a long way (and sometimes you can easily access the books on subscription sites like scribd.
Coming from a programmer by trade (Robot Programming Engineer) - I’m going to be honest, I hate reading. I am a hands on guy - some people are book smart and can just read something and soak it in, that is not me. I would like to share some things that have helped me.
Think about what you are reading. Like really think about it and get your brain in logic (1’s and 0’s). mode. What would a computer want me to say to it? (Be one with the computer!) lol.
Think about the big picture, what is the end goal? I’m being presented text, I’m enforcing this by
doing the actions that they ask, but WHY am I doing these items – GET THE WHY! Understand
and grasp the WHY and it’s all syntax at that point.
Make sure you have a decent place to concentrate and put your thinking cap on. Distractions
around you can and will add up. Put some headphones on with awesome music if you have to.
Depending on how detailed the problem is, make a picture, draft a flowchart, etc. Think about
the start and finish, and then define how to get there after.
Be organized, take notes, find a flow, make a “Toolbox”. I know this seems annoying. Here is
what I do, I have CC on one monitor and Microsoft Word on another. Here is my general flow.
my “Toolbox”. Within my “Toolbox” I save things that are important. On each lesson start, I
download the “Cheatsheet” for that topic, even if I already think I know it, even if I think I won’t
use it - I download that bad boy. I also save the Microsoft Word Document that I have in there. In
the Microsoft Word document I take notes, and I copy/pasta the things I am doing and the
console output as a comment. This allows me to quickly go back and say, I remember something
about that, let’s reference (ON MY TERMS).
Help other people in the community. Helping people with knowledge you have iterates what you
already know. It is useful for retention!
Practice, Practice, Practice, and Reach Out. - Repeat the same lesson 10000 times until you
understand everything 100%. This goes in conjunction with utilizing the forum. At some point you might get tired of banging your head, reach out! Push yourself as much as you can though, think of how an athlete trains.
Don’t give up. No matter how hard it gets. Don’t ever give up. It’s better to aim high and miss
than aim low and hit. I have over 15 years of development experience and I still learn daily. Times
get rough, there will be things you don’t understand, keep on keeping on and have the attitude
of “I’m going to own this.” Don’t let it own you!
ALWAYS put your users first, I can’t stress this enough. When you get comfortable with your
coding. Always, put your users first. Put yourself in their shoes and think, if I was them, using
what I code, how would I want the code to act.
Don’t be afraid of failure. You can be a great programmer and make mistakes. Don’t be afraid to fail or make a mistake. It happens to all of us developers!
Edit: Another thing, comment your work as much as possible. This reinforces understanding!
2nd Edit: Don’t forget to take breaks!
In closure, I hope these tips have helped you and others. Happy coding. Hope to see your work in the future!
Something that helps me too. Is when you’re working a project. Use the notes feature // in the code to explain to yourself what that section of code is. Start keeping examples and create a collection of codes snippets with your notes to go back and review.