confused on, from where and how to learn.
so i have been getting alot of contrary suggestions on how to learn html,css, js (or any programming language), so i thought to make this post
earlier, i would use youtube tutorials, w3 schools, or literally any website that appeared in my google search results and do alot of practice.
but then i heard that those resources are unreliable and i should only learn from mdn, but i struggle alot with it, and now most of my time gets spent trying to understand what is meant in mdn rather than practicing.
and the biggest confusion i have atm - people tell me to google whatever problem i have, but when i google the problems i have, the top 10 google search results are stackoverflow, w3 schools, geeks for geeks, reddit etc. many times mdn, doesnt even have the solution of the specific question i have. what should i do then
42 Replies
MDN is a reference site, not a tutorial or question site. You have to know a little bit about the issue you're trying to solve or the topic you have a question about to be able to use it properly.
w3schools is technically also a reference site, but the only thing they're fit to teach is SEO. They appear in every search result, but their content is often outdated, incomplete, and occasionally just flat out wrong.
There's honestly not one simple answer to this question, mostly because there's different types of learning that you do.
If you've got a question like, "what should I use the dialog tag for" or "how does
.split()
" work, that's something to use a reference site for. I'd recommend MDN because I've yet to catch them being inaccurate (also because it's a wiki, it's updated by a lot of people)
If you've got a question like "why am I getting this error?" the biggest source really is google first, but then I'd honestly suggest just opening a post here if you can't find the answer googling.
As for stuff like "how should I build this?" the answer is even more complicated. Sometimes, youtube tutorials are good, sometimes they are bad. You kind of have to learn who gives good advice, who just chases trends, who is just in it to get the maximum ad revenue... Obviously, Kevin's videos are always a safe bet, but you have to develop a feel for the rest of youtube (or get recommendations from other developers) for who else is trustworthy.
but also don't be too discouraged, because learning how to learn is a big part of becoming a developer too
you have to find what works for you, learn how to recognize trustworthy resources, and it's an ongoing, imperfect process
the main difference I'd say between a junior developer and a mid-level one, is that the mid-level developer has learned how to answer questions confidently with a google search or two, and has the basic knowledge to interpret the results, but that's a skill that takes time and practice and is hard to put into words or a simple step-by-step processMdn technically has curriculum and guides section but yes overall a reference/documentation site.
I don't know where bfmv's is now or what they know but for people starting out they should pick one reputable course and stick to it.
I did odin project (not endorsing it anyway you can pick what you want) and followed it and only it until I gained enough knowledge to be able to filter out the Google results and find what I wanted more efficiently.
The biggest issue with YouTube tutorials is that they fall into one of four types:
1. Hypetrain clickbait: They make shallow videos about the latest fad without much research just to get the clicks
1. Old: They were good a decade ago but things have changed so much they're giving bad advice now
1. Half-baked/rehashed: They either only go partway into something or they're a "re-imagining" of someone else's video and they don't really know what they're talking about
1. Good: These are the rare few. They know what they're talking about and provide not only good practices now but set you up for success later
As you can see, most YT videos are not good and are just to garner clicks/likes and play to the algorithm. With HTML and CSS it's less of an issue, but as soon as you get to JS anything pre-2015 is just bad by modern standards. That's really when the language changed.
This is one of the many reasons why Kevin is amazing: his videos fall squarely into the Good category. He knows what he's talking about, he doesn't engage in hypetrain clickbait, and he doesn't cover things he doesn't know!
And as Jochem said, MDN is (mostly) a reference site. While it does have some tutorials it's more for "how does X work, again?" So you have to know what you're looking for before you look.
This is why communities (like this one!) is so important in the modern age of programming. Get a group of like-minded people around you who can help you find out what's what is going to help you more than any one website. If you don't know how to do something, you ask, "Hey, I'm trying to do X but don't know how. Help?" and we'll jump in with links, suggestions, ideas, etc.
We're here to help, so help us help you!
just to say it again: Yes, use #help liberally! That's what it's there for.
To clarify a little: Sometimes folks will tell you to go read MDN when you ask a simple question because it does cover a lot of stuff for some types of questions. Like, "what is <template>" for example (I know you didn't realize it was a tag, that's fine too, no one expects anyone to be perfect) is answered very well by MDN, and it's much more productive for everyone if you read the article and then if there's anything from there you don't understand, ask for clarification. That doesn't apply to stuff like "What is the best way to build a carrousel" or whatever else like that
btw, i think that as a beginner it would be impossible to know which methods are good practices and which ones are bad?
probably yeah
so does it mean that, at first i shouldnt be much bothered about it
no, not at all
you should be trying to find what best practices are and using them
learning how to do something in a bad way is just going to hurt you down the line, wasting time now with learning something useless, and wasting double time in the future unlearning bad habits and relearning good ones
oh yeah
if you were a hobbyist, or just building one site and then calling it a day, I might say not to bother with best practices, but if you're learning, your only goal is to get good at doing something in the future, so you need to learn best practices
yeah
what if a bad practionier teaches me bad practices without mentioning anything about it
can you tell me about the most reliable youtube channels
idk much
for anything web dev related
you'll have to relearn some stuff
oh
how much do you know currently anyway
html css js
I know some youtube channels but they don't offer a structured course but more about videos on specific topics (like promises). So you might hop around here and there and waste time as opposed to something strcutured
its fine
Honestly? No, I can't. I've been at this long enough that I don't follow any beginner YT channels. When I need to learn something I search MDN and read the docs. Sometimes I'll search for a YT video on the topic, but again I'm advanced enough to know what's good or not based no the first few minutes of the video.
Your best bet is to stick with Kevin for HTML/CSS and ask here about JS (or use https://javascript.info as it's a great learning site).
ohk
just don't use var as they do in some of the code on javascript info. Not sure if they are still updating it
Really, though, a good rule of thumb: if you're looking at JS videos/blogs and they use
var
or puts their script
tag before the </body>
it's old and not using modern best practicescan i send links here or would that be considered promotional content
#self-promotion if it's something of yours
nothing of mine just other channels like I said
Oh, then #resources for, well, sharing resources :p
i'll just tag him there then
👍
Just be sure to check that the resource hasn't been shared already
oh whoops
well I did multiple so I'll edit them after search
btw, when im learning a certain new concept of a language, and the explanation of it is long and purely theoretical , how should i go about it
should i just take one quick glance at it and go to try it out in code
or should i re-read it several times until i understand and then try it out in code
All of the above. Read it, then try it out. Re-read it and do it better. Rinse and repeat
In the process of doing you’ll learn where you didn’t learn and can better focus your next read through.
ohhk
I learned the basics on team treehouse. They have good videos, quizzes, and coding challenges about what you watched. It does cost money but it is cheaper than a bootcamp. Learning how to read docs and sites like MDN is a skill and will come natural overtime. One thing that helped me a lot learning JS and DOM manipulation was
console.dir();
It shows you all the properties, attributes, and other things you might not know exists. If you see something that might sound like what you are trying to do then look that up on MDN.
Also AI is pretty good at helping you come up with the right question to ask when you don't know what you should be asking. Try not to lean on AI too much. Learning to code comes from the hours of pain trying to figure something out. At least that worked pretty well for me. If you are on a deadline use AI but it shouldn't be substitute for your own effort while learning.hi guys
i was wondering how much time should i spend learning theoretical stuff and how much time to spend building projects
the instuctions are really long here
20/80 at first, then 99% building stuff
but building stuff can include learning about new things and using them immediately
oh
no one expects to learn to build a book case by just reading a book, and websites are no different
and what would at first mean, 5-6 months of experience?
the shift should be somewhat automatic, just build shit until you get stuck and then learn some more, then build more stuff
oh
Once more, for those in the back!
the shift should be somewhat automatic, just build shit until you get stuck and then learn some more, then build more stuff