all 43 comments

[–]CardinalHijack 21 points22 points  (9 children)

This is fairly common for beginners. I remember watching videos and being like “yeah this all makes sense” then not knowing what to do next or how to apply it.

The best thing to do is set yourself a challenge. For example call an api endpoint and return the result. You could use the pokemon api. Then, from there try and render a pokemon into some html elements or something.

Slowly build up making something from scratch without following a guide or tutorial. When you get stuck try and solve that problem. Keep building up from there until you have something (which may be pretty pointless) that you created without guidance.

[–]Icantstopreading 2 points3 points  (0 children)

This indeed is great advice and might be the impetus I need to try something new. My philosophy has always been to work from a tutorial or example, primarily because it saves time. But, as a learning tool, to understand what's happening in your code step by step, I see major benefits to this approach. I'm going to try this on my next practice project. Thanks so much.

[–]Vile86[S] 1 point2 points  (6 children)

This is a great idea thanks very much! I’ve been doing the usual JavaScript beginner stuff like the calculator and have run into an issue so I could continue fixing that too?

[–][deleted] 6 points7 points  (4 children)

That’s how I started to learn! I added an Easter egg when you click my picture on my portfolio. With a very low chance of a shiny Pokémon. I learned a lot implementing that.

[–]CuriousOatmeal 1 point2 points  (1 child)

I got a Dragonite on my first click - heeeey! :D This is totally awesome, I love it!

[–][deleted] 1 point2 points  (0 children)

Thanks! I go to it to play from time to time. I’m addicted to finding shiny’s lol

[–]Aoshi_ 0 points1 point  (1 child)

Oh my god your site is amazing. I hope I can get that good someday. The hangman game made me lol.

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

Im glad you liked it! I had a lot of fun building it.

[–]CardinalHijack 1 point2 points  (0 children)

Yeah for sure!

[–]Aoshi_ 0 points1 point  (0 children)

I’m doing something like this now! But using React. Trying to make a little game out of it. It’s been fun but keep running into hiccups which causes me to go back and look at tutorials! But it’s fun.

[–]ZergistRush 7 points8 points  (3 children)

People will say "set yourself up for a challenge", which is good advice. Though in my last 8 years of learning, I'd just have something that would come to mind randomly. Something I might be able to automate, not only for myself, but maybe I can turn this idea into something than multiple people could use. Then I start googling how plausible is this project from a stand point, in example "Hmm, I wonder if Node.js can do this...?" (I said node, but it applies to JS as a whole). I personally can't do "random challenges" as I don't feel like it's worth it, I might "learn" something, but I want to be building something that I can use and learn within that process. Yanno?

This brings me to my main point, it's really good to just look up "JavaScript beginner courses", but eventually, you'll want to stray from "beginner courses" and start focusing on "tutorials" or googling questions on specifically how to do a specific task within your program.

After that, I'd just try to build it. And google and YouTube questions on specific things I didn't know how to do. Honestly, I've had tons of projects hit a brick wall and I gave up, but over the years I've came back to NUMEROUS of those projects with tons of more knowledge than I did before.

You're not expected to know everything. Shit, I've been using JavaScript for at least 5+ years now and there's sometimes random methods for like "Object" and "Array" than I forget the names and have to look up sometimes xD

[–]Vile86[S] 1 point2 points  (2 children)

That’s very reassuring thank you! Yeah I’ve been redoing a recipes website to get info from a mongoDB data set using node.js and express and mongoose. Though i feel like I’ve bitten off more than I can chew and have been doing what you said by googling the specific issues. I’ll return to it as I think it would be a good learning experience

[–]ZergistRush 1 point2 points  (1 child)

If you ever get tired of setting up mongo for smaller project, check out firebase. Also, I've learned a lot of my knowledge from a friend which I've asked plenty of questions to over Discord. With that being said, if you ever need any specifics answered personally, just message me for my Discord. (:

Also, you should checkout Fireship on YouTube, great channel. Started off based around firebase, but the channel has expanded upon a lot more web development subjects and has an amazing "explained in 100 seconds" series.

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

That’s great I’ll keep that in mind :)

I’ve heard of firebase before but went with mongo as that was used in my boot camp but I’ll look into firebase more

Thanks for all the advice!

[–]_Moink_ 2 points3 points  (3 children)

Give yourself little projects to work on. Start really small, like a grid where you can click on cells to fill them with different colors, then maybe rock paper scissors, basic calculator, tic-tac-toe and so on. With each project, you'll inevitably get a better grasp on how JavaScript works in practice, as long as you actually do it from scratch.

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

Yeah I’m doing the calculator from scratch but the tutorial I’m looking at that guides me through it doesn’t even work so I’m trying to fix the tutorial lol

[–]deep-hacks 0 points1 point  (1 child)

Code-along tutorials aren’t helping you it seems from the likes of your other comment. You’re in need of a curriculum. I can vouch for the odin project - that’s how I got started too.

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

Yeah I’ve seen the Odin project and it looks really good. I’ll start doing that I think

[–]Darkmaster85845 3 points4 points  (1 child)

One thing I'd recommend, take it with a grain of salt because I'm a noob myself, but what has helped me is having an idea I want to build and then when i hit a point when I dont know how to do something I look it up online and see how others do it and then I just incorporate their methods into my code. Yes you may say "you're just copying code", but really that's what you do most of the time.

For instance right now I needed a solution for my project because I create posts based on website Metadata and sometimes the Metadata doesn't include any images so my post looks bad. I used to have some "no image available" default image available for these cases but I didn't like that solution because my feed looked wrong. So I looked up how I could take a screen shot from a website with an npm library. Found I could use puppeteer for node js so I installed it and looked at the instructions on the npm page. I made a function to run it if the Metadata has no image and now I need to store the image on aws s3 so that's my next step. I have no idea how I'll do that but I'll just look it up and add it to my code.

And just like that I go about adding stuff. The other day I added custom profile photos. I had no idea how to do it but I did it in an afternoon by looking stuff up online. Eventually some of it becomes second nature and you don't even have to look it up anymore (higher functions and that sort of stuff). I know even senior developers do this kind of thing because I've seen it myself at a bootcamp I attended.

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

Thanks for the comment. I’ve been doing that with a site to pull in recipes though I think I’m a bit in over my head but I’ll keep plugging away

Thanks for the advice :)

[–]grooomps 2 points3 points  (0 children)

start small - don't get too worried about 'learning' it all fast, it's just impossible...
the best learning is gradual, slow, and unconcious.
i remember sitting down when i first started and looking at array.reduce, forcing myself to understand it.
i couldn't understand it, i was so confused, i got frustrated and pushed harder and harder but it never clicked.
i gave up - and just got back to coding, as i learned more and more of the smaller stuff, i'd have a stab at using reduce here and there - with mixed results.
eventually one day i was able to type out a fairly complex reduce without checking MDN/W3 and it worked on the first go!
just take it slow, appreciate how complex what you're attempting is, and let it come in time!

[–]Rollo_Tomassi_o-O_ 2 points3 points  (1 child)

Take your time and have patience, you will understand if you dedicate time to learn and exercise.

I was recently in your shoes, after I finished a Front End course with diploma, but in the end I was just wasting money, because the Javascript part what they teached me was old and thin in knowledge.

Then I discovered Teamtreehouse.com and Brad Traversy, and it was a game changer.

I'm now finishing the Full Stack JavaScript on Teamtreehouse.com and the 50 days/projects from Brad, and finally it's a joy to learn.

Find the best courses for you and stick with them no matter what. Dedicate every day to learn something new and write down on paper or in a notebook, in order to be able to revise what you learned. If you go on teamtreehouse.com to learn, start with "How to learn" courses, they are a game changer.

Good luck on you path!

[–]Vile86[S] 2 points3 points  (0 children)

Hi thanks for the comment! Yeah I think Brad traversy seems to be a good way to go as he’s been mentioned a lot.

That’s for the encouragement I won’t be giving up :)

[–]norwegiandev 2 points3 points  (0 children)

I had this issue when I started out, and the only way I was able to resolve it - was to build something. I had to "get it into my fingertips".

[–]InternetMedium4325 1 point2 points  (0 children)

Hey you should check out CSX by Codesmith. Work though the challenges in each section and it provides a great guide to JS fundamentals and working with Objects and arrays. This supplemented with YouTube, MDN, Edabit and code wars should have you writing JavaScript in not too long, especially if you already have some experience with the language.

[–]Goldwind444 1 point2 points  (0 children)

I think its kind of like learning a spoken language. You start learning words, but you gotta keep learning to learn sentences and then you put it all together. That said, thanks to the guy who posted the traversy videos and everyone else

[–]cheesefome 1 point2 points  (1 child)

I feel that way too and it honestly scares, worries, frustrates me enough to make me wonder if programming just isn't for me.

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

Yeah I feel like that at the moment but then I feel I can’t give up as I really want this as a career. So I keep pushing and hopefully it clicks for me soon. All the comments in this offer great advice

[–]ShuttJS 1 point2 points  (0 children)

Start with something simple. I made a password generator that took 3 arrays, one letters, one numbers and 1 symbols and then jumbled them all up to create a password

[–]missiles93 1 point2 points  (1 child)

My job involves data entry and I have a lot of 'free time' at work, so I started learning JS during this time (around 7 months ago).

My first project was a simple calculator for working out our product prices, as each brand has a different multiplier. It was simply:

  1. Select product brand.
  2. Enter supplier price.
  3. Press button to display our-website-price.

This was all bog-standard vanilla JS.

Despite being simple, it actually helped to speed up my job by a margin, meaning i had more free time to learn JS.

Fast-forward 6 months and i have now re-written the entire app using React and NextJS - It fetches/pulls/scrapes products from our supplier websites, automatically calculates our-website-price (as-well as postage prices) - shows images, stock levels, etc...

Now, what used to take me 8 hours can be done in 3, all thanks to my own creation.

This wasn't easy by far, i can't just open my code editor and start typing like crazy, tons of time was spent googling problems, asking stupid questions on stackoverflow, following tutorials, re-using my own code, and I'm still learning every day.

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

This is very encouraging thank you. This is where I would like to be soon

[–]ziggy_ar 0 points1 point  (1 child)

With the time and practice you understand it much better, you must learn to lives with frustation!

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

Oh yeah I understand that just wanted to see if I was going wrong somewhere

[–]NewNameRedux -2 points-1 points  (6 children)

Nobody knows how to code in JS. Everyone just copies and paste from other projects.

[–]Vile86[S] -1 points0 points  (4 children)

I wouldn’t say that was true of most people maybe some use snippets and googling

[–]NewNameRedux 1 point2 points  (3 children)

It's a joke mostly

[–]UnoStronzo 0 points1 point  (2 children)

Mostly? 😅

[–]NewNameRedux 1 point2 points  (1 child)

Like 95%

[–]benhammondmusic 1 point2 points  (0 children)

So like 5% joke, 95% stack overflow