Know Basics of JS, but lost on what to do next

Hiya everyone,

I have done the JS in FCC but not the Jquery or JSON sections. I have built things and getting a good grasp so far, but lost on what the next step is for JS. I don’t want to move to Jquery until I feel I have a good grasp on Javascript.

Essentially, I don’t really know what I can build with Javascript In my website besides what I describe below. I think I just need ideas on what to study next and a better idea of what Javascript is used to make beyond the basic carousal.

I have built a website and other projects and implemented Javascript but I can’t think of things to build beyond the basic carousal, converting navigation to hamburger icon, hiding some info and showing other info on a click event, etc.

I have started reading Eloquent JS as well. But any ideas on what to study, what JS can make beyond the above I mentioned would be great.

2 Likes

I don’t want to move to Jquery until I feel I have a good grasp on Javascript.

Well, technically jQuery is JavaScipt. It is just a JavaScript library. But some people make a distinction between jQuery and vanilla JavaScript.

It’s a strange thing - the more successful things are, the more haters come out of the woodwork. jQuery is one of the most widely used JavaScript libraries on the planet.

Will learning jQuery prevent you from learning JavaScript “properly”? Not at all. It’s just a different dialect. An important dialect that many employers want.

I also like to caution people against the “I don’t want to move onto anything new until I learn this perfectly” attitude. You will never learn anything to your complete satisfaction - and it keeps moving. And I would also suggest that part of knowing JavaScript “completely” is understanding many of its important libraries and frameworks. Getting paralyzed with a pedantic need to learn things “perfectly” is much more dangerous, IMHO.

I would suggest to not worry about it. Just learn the jQuery. There will be plenty of time to go back and learn things the vanilla JavaScript way. Really, it’s a lot less than you think. There are plenty of web sites giving the vanilla equivalents of jQuery methods.

Just keep coding. Don’t worry about learning things “completely”. Just code. There will be many unexpected twists and turns and detours. Just keep coding.

4 Likes

Hi! Thanks! I have just heard one should learn Vanilla JS before going to jQuery since people would use jQuery as a crutch and not actually know vanilla JS.

I guess what I meant by knowing JS completely, is beyond a beginner as I haven’t been sure what to do next project wise that isn’t beginner. But I guess I could learn the jQuery library and try to do it the vanilla JS way, which would be interesting.

Thanks again, been really racking my brain on what to do!

Yeah, there are some people who think if you use jQuery, your children and their children will be cursed for 666 generations. Whatever. It’s just a library. I remember having an argument with a guy who was militantly anti jQuery because it wasn’t real JavaScript. He went on for 20 minutes, foaming at the mouth. Then I asked him about what he was working on. He said he was really deep into Angular. UUUUUGGGGGGHHHHHHHHHHHHHH!!! On what planet is jQuery not real JavaScript but Angular is.

jQuery’s main benefit is that it makes AJAX and DOM manipulation easier. There are a few other functions, but those are the big ones. JavaScript now has fetch making AJAX easier, and DOM manipulation has become a moot point as many people are using view engines like React, Angular, or Vue.

But jQuery is still very useful and gets used on a lot of sites. By some estimates, more than half the web sites on the planet use jQuery. Just learn it. And then learn vanilla JavaScript. Personally, I think that’s a better order because jQuery is a more gentle introduction into AJAX and DOM manipulation, and that crap is hard enough. There will be plenty of time to learn them the vanilla way.

2 Likes

Some real life cases where I can see the use of a JS:

  1. Map data to produce an output.

This means starting from a data source (example an array of values) create:

  • tables
  • lists
  • forms

  1. Handle user interaction

This includes:

  • preventing actions based on some condition (ie: closing a form when is “dirty”)
  • managing changes in portion of a page (like adding - removing DOM nodes)

  1. Handle Asynchronous request

This means performs actions that are not immediate (like asking an API for some data).
This implies:

  • loading indicator
  • gracefully handle errors
  • feedback on success

Hope it helps :slight_smile:

2 Likes

To add onto what @kevinSmith said, don’t worry about “learning vanilla.js” before going onto Jquery. JQuery is a library that’s very useful, and widely used because of it.

Now onto getting ideas, I would have to aiming for something more into the realm of a web-app, rather than just basic web-pages. If I asked you todo something as complicated as say a complicated chat-app, youd probably have to learn more things than just JQuery. There’s also things you will learn later in the courses that JQuery doesn’t really offer any help with, such as basic algorithms, and data manipulations.

There’s a lot to learn out there, but most importantly Being good with Javascript being good with any framework/library

1 Like

Thanks that really helps!!

That’s helpful thanks! I will keep this in mind to make things with!

Thanks, all this feedback helps my “only learn vanilla JS” problem! I will definitely keep pushing to learn new things and continue creating projects!

@kevinSmith You re right about

I don’t want to move onto anything new until I learn this perfectly

I have this thing too and I wasn t even aware of it till you mentioned here, I want to know javascript properly too before jumping into libraries/frameworks.

I also think is not a bad idea to understand javascript properly before jumping because knowing to play with other concepts like functional programing, OOP, first class etc gives more power.

But as you said you can t get stuck forever in this vicious loop waiting to master Javascript cause it might take way too long, but also knowing what happens under the hood makes you a better developer so I guess you kinda need a balance.

My idea is maybe learn jQuery in parallel with deeper understanding of vanilla javascript and when you see a method in jQuery like toggle you should think like: oh hey I like this method how could I build it in javascript myself? Or you could just look at the source code and learn from there. I think source code is like a book you can read and learn from because they use good practices and you can borrow from there.

There might be things harder to get because they use some rlly smart ideas but I guess google can help sometimes. Also I have the same problem I ve build a carousel myself and I completed some challenges here, still working on it but I m also poor in ideas about what i could do next.

Hope this post has helped you a bit with the same problem I had! I actually recall seeing the toggle solution but found my vanilla JS solution for it eventually. But after posting this, I will learn jQuery, figure out the vanilla JS for it and start looking at APIs since what I was studying book wise goes into APIs on the jQuery section, so then I can start making other things as well :slight_smile: Like a weather app or grabbing google maps Api and other such things :slight_smile:

This post is exactly what I needed. I enjoyed the javascript data structures and algorithms, but I’d really like know how to use this building websites. I have also heard one should master vanilla js first. However, this post gives the encouragement and guidance to trust in the fcc curriculum. The curriculum so far has provided the structure I need to learn and where it is lacking, I believe it to be strategic, like a traditional college course that can’t go into detail on every topic.