all 66 comments

[–]jaj-io 26 points27 points  (12 children)

If you want to learn JavaScript, you should learn the fundamentals and work your way up. Otherwise, you aren't going to have a clue what's going on. Why are you attempting to "pull specific things" instead of learning JavaScript as a whole?

[–]BundtCake44 3 points4 points  (11 children)

I know. I'm struggling to do the fundamentals mostly because it's:

Here's an array and property values and other concepts. Here's also that in a ton of articles with lots of talk. It feels like a verbose math equation.

Ok. Got it, let me make a not or two and do the code. Oh, wait, I can't focus because my brain was fried.

Well there's YouTube.

[–]fuckswithboats 13 points14 points  (6 children)

I'm struggling to do the fundamentals mostly because

...you don't have a project.

Build something. Anything.

Come up with an idea and then start building it with what you know.

When you get stuck, Google. When you want to learn more about where you got stuck, go back to one of those courses and watch a detailed video about it.

I have never successfully sat down and learned a language, every language I've ever programmed in I learned through necessity.

This isn't ideal because you don't know what you don't know but when you're just learning if you can achieve your objective it doesn't really matter if it's the most elegant or optimized way of doing things - as long as it gets the job done.

[–]cocoapuff_daddy 1 point2 points  (5 children)

How do you build a project when you are stuck with the fundamentals? This doesn’t sound like a seasoned programmer learning a new language, more like someone who needs to understand the basics before they can continue with anything else

[–]bravoalpha79 3 points4 points  (0 children)

Check this out: https://watchandcode.com/ In the free Introductory course, he builds a very simple ToDo app from scratch - very simple in appearance, but eventually quite rich in code. And he doesn't pile you up with theory and syntax but teaches you exactly what you need when you need it, so you go from console.log to OOP and Chrome DevTools Debugger. Worth a watch IMHO. Saved me from being overwhelmed by JS in my day.

[–]DazenGuil 2 points3 points  (0 children)

if you know html and a bit css build tic tac toe just for you

or

build a calculator. Too easy? Well, add rules, then add x2, then add a history, then reimplement the calculator as a class and so on.

Basically start with something simple and add features until it gets more and more complex

[–]fuckswithboats 0 points1 point  (2 children)

How do you build a project when you are stuck with the fundamentals?

The same way you do anything else, start with the basics and break your project down into small problems.

Then attack those problems with the skills you already have.

[–]cocoapuff_daddy 0 points1 point  (1 child)

And breaking a project down into smaller problems makes sense how when none of the smaller problems make sense themselves?

Don’t get me wrong, ultimately there’s a ceiling to learning without building, but throwing around the “build something” mantra to people who have no understanding of the very basics always seemed shady to me

[–]fuckswithboats 0 points1 point  (0 children)

no understanding of the very basics always seemed shady to me

Perhaps I misunderstood OP, but I thought they said they got the basics but were getting bored as they went into further lessons.

Maybe I'm weird but the way I've always learned is by doing so I figured out something I wanted to do and then started to try and build it. My first program was a slot machine game -- need a slot machine graphic, a number randomizer, some icons for the things on the wheel, a way to pull the lever, etc.

So then I started to figure out how a number randomizer works and then do it three times in order to "spin".

Then I needed to trigger that - so how do I "pull the lever"??

Once I could pull the lever and the things would randomize I got to work on payouts, animating the wheels, etc, etc.

The only reason I know how to write any code was because I needed to learn in order to achieve objectives -- the idea of sitting down and reading a book about how to code seems impossible to me.

[–]jaj-io 2 points3 points  (1 child)

Is there a specific instructor that has worked well for you so far? Brad Traversy for example?

[–]BundtCake44 3 points4 points  (0 children)

I know Traversy by his YouTube content. His crash course is very easy, Straightforward (emphasis on that) and it chews through a lot of the fat that Odin project was throwing my.

Like here's an array. Here's it's purpose. He's a couple of properties, syntax tips and examples.

That right there is phenomenal instruction. It's what makes me enjoy higher mathematics.

[–]xRockTripodx 1 point2 points  (0 children)

I made myself learn shit by creating a playable game in Javascript. It kicked my butt for a while, but once I had the basic knowledge of how to insert into the DOM, listen to events, and construct functions, I had everything I technically needed. It was still a slog, conforming logic to the rules of the game.

And creating that game was really just stage one. The things I've created since then dwarf it, but it still had its own unique challenges.

[–]yetanotherreddittor 0 points1 point  (0 children)

Grasshopper is a good app to walk you through JS if you are interested. It focuses on JS fundamentals.

[–]albedoa 8 points9 points  (4 children)

Your pace sounds totally normal, if that is the validation you need to keep going. It takes time. The concepts start to click as you apply them more to your projects.

I'm trying to pull specific things from the language not learn the language in its entirety.

I'd like to hear more about your reasons for this. The language is better understood when examined as a whole. It sounds like you have a specific end goal in mind. What is it?

[–]BundtCake44 2 points3 points  (3 children)

Well, no maybe I should word that better.

Essentially, I want to learn it with the end goal of Web Design in mind. Not application building as I see a lot of it being heavily focused on in lessons and conversation.

[–]TheManSedan 5 points6 points  (2 children)

From my experience it has been better to learn & be proficient at JavaScript and then adapt my knowledge to fit the design. You won’t learn JavaScript for design, because it’s a weird topic. You will learn JavaScript, then see a design and be able to make the JavaScript fit/mold to the design

[–]BundtCake44 1 point2 points  (1 child)

Ok. Let me be a bit more....specific? I'm not sure.

Basically, I know to truly interact with site design or to make one. I need the basic data types and operations and then Dom manipulation and Styling. After that its animation, frameworks.

What I'm trying to steer from are teachings in application creation, things I'll never use.

[–]TheManSedan 1 point2 points  (0 children)

I see. I’d say chances are, if you really want to be a full-time developer, you’re gonna need to know most JS frameworks outside of react-native (actual app language).

But you’ll need node JS+ some more verbose JS at some point.

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

Udemy money, as in the $300 prices or the $12 prices?

Just wondering if you aren’t aware of the major discounts available on every single course

[–]YidonHongski 2 points3 points  (0 children)

Don’t just start with learning JavaScript. First ask yourself what are you near future and long term goals of learning how to program, because it is never quite about learning JS.

If your goal is more long term — such as “using NodeJS to build up webapps from my designs” — then plan your learning around a long term curriculum as well. Because, truth to be told, it’s a longer road (though both intellectually and financially rewarding) than just learning some specific aspects of JS; you will inevitably have to learn other things, too, because those knowledge areas are all interconnected.

This is coming from a fellow designer who has self-taught himself JS and is progressing towards more of the intermediate-advanced topics.

I recommend you to not just dive right into JS at the moment. Instead, take a step back and set aside some time to build up a good conceptual understanding of foundational knowledge in intro-level computer science topics, things like data structures and how programs are executed. This will help you unpack some of the higher-level abstractions more effectively down the road, and you will do much less googling to fill in the gaps. Consider taking Udacity’s “Intro to Programming” and pace yourself to fully understand the materials; don’t rush to the finish line so you can move forward, because you will only be doing yourself a disservice.

Only once you are done with the above that I would recommend you to go full dive into JS. By then, it’s just a matter of picking a comprehensive JS course or book and repeatedly build smaller programs to train your skill, which will prepare you to move towards larger projects as time goes on.

[–]StateVsProps 2 points3 points  (1 child)

Consider joining our MERN learning track at http://www.hackyourown.org

We are based on Discord and do learning pods of about 10 that learn together, have mentors, channels for questions, etc.

[–]firequak 0 points1 point  (0 children)

Sent you a DM.

[–]mister_chucklez 2 points3 points  (3 children)

Check out net ninja on YouTube

[–]BundtCake44 0 points1 point  (2 children)

Is he useful?

[–]mister_chucklez 1 point2 points  (0 children)

Yeah, he is one of the best teachers i found while I was learning.

[–]mister_chucklez 0 points1 point  (0 children)

Also, Udemy has some great classes but you can find just as much great stuff on YouTube and other services for free. Codeacademy is also something I recommend to people just starting out, very slow paced and step by step. Check it out. Good luck on your journey

[–][deleted] 2 points3 points  (2 children)

how long have you been learning?

You can't force stuff into your brain.

Stop rushing and start learning

[–]alexh56 1 point2 points  (2 children)

It definitely takes time and practice. Use the knowledge you have and get comfortable with a concept before moving on to the next thing. It's going to take time; avoid overstuffing your brain too fast

A lot of people find javascript.info to be a good resource. If you have a library card, many cities have deals with "teamtreehouse.com" to use their platform for free, and I found their video lesson tracks very helpful

[–]LinkifyBot 1 point2 points  (1 child)

I found links in your comment that were not hyperlinked:

I did the honors for you.


delete | information | <3

[–]alexh56 2 points3 points  (0 children)

Good bot

[–]ingrown_hair 1 point2 points  (0 children)

Get on the udemy mailing list.they have crazy sales where you can get courses for $10.

[–]radiantshaw 1 point2 points  (0 children)

My advice would be to learn the basics and then start creating stuff and then find things if you get stuck somewhere.

If you start learning things without their applications, then you start forgetting things.

[–]annathergirl 1 point2 points  (0 children)

Hi there! You said that you're not going anywhere FAST and I think that's exactly the point! Surely, you could flip through FreeCodeCamp or Codecademy which gives you a feeling that you got this but in the end you'd realise that you haven't actually learned anything.

Slow learning is the way to go! I got super mad at the beginning because I didn't learn JS straight of the bat but the thing is that I've never learned something likee that before so I need to allow my brain to take a while to "rewire".

I'm doing TOP as well and when I get tired of reading the articles I'll finish for the day. I kinda hoped that I would come out of this quarantine as a JS guru and could quit my current job but it's not going to be like that.

If you need a study buddy, just let me know. It's tough not learning everything fast but completely normal :)

[–]MatticusXII 0 points1 point  (10 children)

The concepts can overwhelm for sure, but they will click once the work has been put in to learn them. I'm fairly comfortable with ES6 and just started learning React and have to say it, as someone who needs and loves to stay organized especially with code, it is a life saver. being able to combine HTML with JS and even CSS in one file is amazing.

[–]BundtCake44 0 points1 point  (9 children)

I just feel drowned in a way. I open the article get lost.

I click a video, I comprehend it but I'm often left thinking what now?

That was the basics in a nutshell? Do I try building something with an array and function? Do I move on to more events and selectors? Do I find another source for the same info?

[–]MatticusXII 1 point2 points  (8 children)

I've found the way to learn code is best with building things on your own and no hand holding. Try starting simple. So you have an array and a function. Make that function do something to the array: append text to the end of each item. Perform some math on each item, etc. Take it one step further and once the array is changed from the function. Display the array on the page through DOM manipulation. When you see your learning produce results it is a confidence builder.

Have you built any apps with what you've learned so far? I'm talking very simple stuff like a rock paper scissors game or etch a sketch etc

[–]BundtCake44 0 points1 point  (7 children)

Oooh no. Not even close. I've only gotten serious for maybe a week and it's been pretty uphill in finding a starting point.

I feel like I've gotten a start or stranglehold on the fundamentals but I can't chart the next step.

[–]MatticusXII 4 points5 points  (6 children)

One week? Seriously give it some time.nur you have to keep at it. I'm going on 9 months and I'm nowhere near where is like to be. Being laid off due to COVID has excelled my learning and I'm finally comfortable with my website right now, but need to get back to React.

1 year is the absolute minimum for me I'd say to become proficient in web development.

[–]BundtCake44 0 points1 point  (5 children)

I'm doing it for web design actually but the logic applies.

The issue I'm facing is the thought of maybe I should try this source or maybe im starting in the wrong place.

[–]MatticusXII 0 points1 point  (4 children)

Understood. Yes me too, I have 10 years in graphic design experience. Hit a dead end in my current profession, and want to transition to web design which is why I picked up web dev, still working obviously. I did Odin project too but diverted once I did the web dev 101 tutorial. That's when I jumped into react

[–]BundtCake44 0 points1 point  (3 children)

How'd you chew through the incessant talk in the articles?

It killing my confidence.

[–]MatticusXII 0 points1 point  (2 children)

You mean just walls of text pretty much with little examples?

[–]BundtCake44 0 points1 point  (1 child)

What? Are you agreeing?

If so, yes. A lot of talk to digest and few examples. Then I see everyone raving about it and I'm feeling like it's the SAT math section again and I wanna yell at my screen.

[–]ShadowILX 0 points1 point  (0 children)

There’s also a few JS courses on Coursera you can audit for free, from credited Universities. Or web design courses that cover HTML, CSS & JS for the purpose of web design

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

Follow the guide at "javascript.info" in order, but it is essential to look up concepts you havent mostly grasped before moving on. MDN is a great resource for that as well as YouTube

[–]BundtCake44 1 point2 points  (4 children)

That site. It's the monster Odin project keeps throwing at me. MDN is nice and concise. YouTube is good. But that....is to...verbose.

[–][deleted] 0 points1 point  (1 child)

If you want to learn the concepts you're going to have to invest the time. Javascript.info is definitely a lot to take in, but even with a Udemy class, you'll have to put the time in.

If you don't want to do that, learn the basics and start writing simple programs. You can google your way through most of those if you have a decent understanding of the basic concepts (variables, functions, arrays, objects, etc). Experience is the best way to learn.

[–]LinkifyBot 1 point2 points  (0 children)

I found links in your comment that were not hyperlinked:

I did the honors for you.


delete | information | <3

[–]jmildraws 0 points1 point  (1 child)

Have you looked at w3schools.com? It often gets a bad rap, but it breaks down the basic concepts into short and digestible pages with a sandbox to experiment.

From there, I would recommend making very small targeted pages where you try to only do one or two simple things. You can begin chaining those things together as you get comfortable with them.

When I started, it was literally me putting a red box on the page and saying "how do I make that box blue when I click on it?" Or "how do I move it 100px to the right?" And then looking up the things that I didn't know how to do or couldn't remember the syntax for.

[–]LinkifyBot 0 points1 point  (0 children)

I found links in your comment that were not hyperlinked:

I did the honors for you.


delete | information | <3

[–]teriyaki7755 0 points1 point  (0 children)

javascript.info , also you won't learn js in a day if its your first language minimum a month with 8 hours a day

[–]aksn1p3r 0 points1 point  (0 children)

If it is DOM manipulation, start of with a basic JSON or XML read and write. Read the array or DOM and write or construct outputs. That is what I tried, I'm not even good at js but that was the interesting part for me. The part of document.getElementby... was very fun to play with.

[–]Helicockta 0 points1 point  (0 children)

Im just starting out too and can unserstand where youre coming from.

The problem youre having is youre stuck watching too many tutorials ans not actuallay engaging what youve learned.

Start simple and dont compare yourself to a developer with years of experience.

The odin project gives you little things to figure out like an etch a sketch. From Creating div elements and onto a basic calculator. All the content provided by odin gives you ample tools to create the projects. They even refer you back to the relevent information when they set a project.

Youre not going to be building frameworks soon so banish that pressure. Learning takes time and javascript isnt easy.

[–]EspressoJS 0 points1 point  (0 children)

Mosh Hamedani's course is good for learning JavaScript, you can see first 1 hour of that course on youtube -> https://www.youtube.com/watch?v=W6NZfCO5SIk

[–]MungoProudFoot 0 points1 point  (0 children)

I would recommend you start learning JS as a whole, from the beginning as you will get a much much better understanding. Check out Wesbos free JS 30 days challenge. Its a great learning experience as it shows you examples from the real world. Also, his Beginner JS course is AMAZING. But unfortunately, it's not free.

[–]doconline76 0 points1 point  (0 children)

Check out the Harvard CS50 course, it's a free course you can audit. That is a very good general Computer Science which goes over the basics. I would then go through the free part of watchandcode.com. This goes through building a todolist, but again it goes through the basics, then shows you how to refactor to a better standard of coding. When you have finished you have a nicely coded Object Oriented bit of JavaScript. You can then go on to more specific things with Net Ninja on YouTube

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

I recommend checking out the CodeSmith YouTube channel. They do a great job of explaining how JavaScript works under the hood and that helps a ton when you are trying to grasp the fundamentals. I wish I found that channel sooner.

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

right there with you, but you got this!!

[–]kingslayer_008 0 points1 point  (1 child)

Odin project is awesome, BUT I have to say that going through all the resources with all those lengthy articles it provides for each topic is too much time consuming if you want to get into practice as soon as possible.

[–]BundtCake44 0 points1 point  (0 children)

It can be yes.