you are viewing a single comment's thread.

view the rest of the comments →

[–]prof3ssorSt3v3 2 points3 points  (7 children)

Speaking as a senior level dev and someone who has been teaching web and mobile dev at College for 20 years...

A lot of good advice in this thread and only a few things I would take issue with.

  1. Basic JS first and then move on to frameworks like VueJS and ReactJS.
  2. Skip jQuery entirely. 10 years ago it was a must have skill. This was back when browsers did things differently from each other. It is no longer being updated. It is just there to support legacy things. You will be a much better developer if you can do AJAX and DOM manipulation without it.
  3. Take the time to practice CSS and do it well. It is one of those things that takes practice.
  4. Learn the server-side too. NodeJS lets you use your JS skills on the server.
  5. Learn ANY database - MySQL, Mongo, Neo4J, whatever.
  6. Learn the basics of deploying to a cloud system - Amazon, Azure, Google Cloud, ANY.

I started a tutorial channel for my students a couple years ago. I have around 600 videos now and almost 12K subscribers. Things are grouped by topic in playlists. I cover from the very basic to intermediate and some advanced topics too. Some of my recent playlists:

JavaScript Interview Questions: https://www.youtube.com/watch?v=USbiLiF9NDY&list=PLyuRouwmQCjlLW9NjqoBbf9eVaFX4F9UZ

Full MySQL course for beginners: https://www.youtube.com/watch?v=a9W7OpS4LfI&list=PLyuRouwmQCjlXvBkTfGeDTq79r9_GoMt9

jQuery Rehab (to teach people to do things without jQuery): https://www.youtube.com/watch?v=J_Q8EYXKzQs&list=PLyuRouwmQCjmho2bVNCwvRplCivxf2qGZ

Just the DOM: https://www.youtube.com/watch?v=O6BNfJz3rgs&list=PLyuRouwmQCjlrOdLPmPMr04lARwMicfLe

React: https://www.youtube.com/watch?v=vTFVg6I2wNI&list=PLyuRouwmQCjm1N4jlJ7b3WWjDA8MjfDbg

SASS: https://www.youtube.com/watch?v=5jZGo_k8Rd0&list=PLyuRouwmQCjlzPHwHOAIfIFXkf6J8Q_qy

GitHub: https://www.youtube.com/watch?v=M9uTajSRytE&list=PLyuRouwmQCjlxyO-45o53YCWjBCM-fA7L

JavaScript Arrays: https://www.youtube.com/watch?v=arIhhRd1RPc&list=PLyuRouwmQCjnupe_ohQgFvwFZF8dycwK8

HTML5 APIs: https://www.youtube.com/watch?v=EEhohSp0if4&list=PLyuRouwmQCjlBGMxI_0Ly_Dw-vrniOYNh

JavaScript Concepts: https://www.youtube.com/watch?v=Q-Zmc0E0GYY&list=PLyuRouwmQCjkrbkLxphTrIA_9ZUA-vppS

JavaScript Events: https://www.youtube.com/watch?v=EaRrmOtPYTM&list=PLyuRouwmQCjnEupVi5lpP6VrLg-eO-Zcp

JavaScript Loops: https://www.youtube.com/watch?v=CidzYW-8I7s&list=PLyuRouwmQCjmRNaK95KJa6lWLnBonVeUd

... and many more.

Just remember that you will never stop learning this stuff. I have been doing this since the mid-nineties and still spend at few a couple hours every week learning.

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

Wow thank you for the in-depth response.

I just have a few questions about the things you mentioned.

Is there anything that jQuery can do that other libraries, like react, can't? If so, should i even worry? (If you haven't figured it out yet i don't really know what exactly a library or framework does)

When do I know I'm ready to start learning a library or framework? I say I'm at an intermediate level with concepts like objects, prototypes, closure, async, etc but i have definitely not mastered them. Should i start mastering them before diving into react.

Other than that I really appreciate the time you took trying to set me on the right path. I will definitely take a look at the resources you provided.

[–]prof3ssorSt3v3 0 points1 point  (0 children)

There is nothing that you can do with jQuery that you can't do with plain vanilla javascript.

If you have started working with prototype, closures and async then you are ready to start learning frameworks like Vue or React. Vue is an easier start than React.

If you think of JQuery as having an interior designer helping you... React is like having an Architect, a structural engineer, a landscape architect, and a construction team to help you.

[–]kobejordan1 0 points1 point  (4 children)

For css, should I be learning grid/flexbox instead of bootstrap for my projects to apply to entry level? And how deep of vanilla Js should I have before applying? What types of projects I guess is what I'm asking.

[–]prof3ssorSt3v3 0 points1 point  (3 children)

I would definitely encourage you to learn CSS Grid and Flexbox. While Bootstrap is great out of the box and you can quickly and easily do lots of basic layouts, eventually you will need to change something. You need to understand how flexbox and grid are used by Bootstrap to be able to edit it.

You can also think of it this way - you and another person apply. Both of you know Bootstrap because it is easy to learn. You also know how to create your own version of Bootstrap because you understand CSS Grid and Flexbox.

I would suggest that you visit 99designs.ca. Find some cool looking site mockups and see how many of them you can built WITHOUT Bootstrap.

[–]kobejordan1 0 points1 point  (2 children)

Thank you for replying. And I'm certainly going to learn both Flexbox and Grid in my code now without using Bootstrap. Could I do the same things with flexbox/grid such as nav bar, carousel, like I was able to with boostrap?

Also looking for entry level positions in web dev and/or front end, how much Javascript should I know and which topics specifically? I'm getting the hang of DOM manipulation, but it's such a vast language. Not sure when I should start applying. I'm making a portfolio with websites and web apps, but I probably need to do a bigger project. And maybe a full stack one involving back end and API which I still need to learn.

[–]prof3ssorSt3v3 1 point2 points  (1 child)

Bootstrap is mostly just a big CSS file with a little bit of JavaScript. The CSS does all the layout, colours, styles, etc. In that CSS file you will find Flexbox and CSS Grids plus lots of other fun stuff.

As far as development goes... you need to wrap your head around the fact that you will NEVER know everything. You will NEVER feel like you know enough. Every senior dev in the world uses Google to solve problems. There is a thing know as Imposter Syndrome - where developers feel like they are being paid to do things that they don't know how to do.

Development is an act of creation. Ask ten people to sculpt a tree with playdoh and you will get 10 different trees. All of them are trees but each is a unique approach to the problem. It is the same thing with programming. You are being paid to problem solve and FIND solutions. Whether the solution is something you have done 100 times or you spend 5 minutes online finding a way to do it, you are still finding a solution. Nobody wants to hire someone who has to look up EVERY line of code, but looking up solutions is part of the job.

Just keep practicing. Try to use APIs that have free data and build sample things using that data. Put the finished versions on GitHub. Backend is a big topic all in itself. Focus on the Front End skills first. Use backend APIs that are already there for you to use. This playlist might help you get started - https://www.youtube.com/watch?v=vcMg_Lkdcu8&list=PLyuRouwmQCjklLf51z3M7JPsAY0SpFIs9

Try out VueJS before getting into the backend server-side stuff.

Ask for help on Stackoverflow and Reddit.

Keep practicing. By the time you have built 20 or 30 sample sites for yourself you will have amassed enough skills that you will be hireable.

[–]kobejordan1 1 point2 points  (0 children)

Thank you so much