I personally find it far easier to do learn things I am interested in. So start there, what sounds interesting to you the most?
Today I was setting up an angular project for the first time and I realized I have a pretty limited and shallow understanding of things, I didn't even know what dev dependencies were (now I do), and that npx is used to run locally installed packages. I know that an API is used to exchange data between applications but that's literally all I know about it, not how it works under the hood. I realized I can't properly answer questions like what is a runtime, what are packages, libraries etc. Literally no depth of understanding. I feel like going into a rabbit hole for every little thing but then it becomes too overwhelming.
Now this might seem fairly common for a new programmer but I got introduced to it around the age of 16 (21 now). I felt fucking stupid googling the difference between library and framework. I looked at some angular components and only understood them partially. Most good programmers already know this. People my age are building crazy stuff and here I am bogged down in things that I should've already known, had I put in more effort. I feel I am lacking some severely fundamental things. Part of this feeling is a lot of regret of wasted time, but I also wonder if I'm actually retarded with an IQ too low for programming. I'll never be good if it keeps going like this.
I looked at some roadmaps from roadmap.sh and it made me realize just how much stuff I don't know, and that is just talking about frontend. So I guess the question becomes how much and how deep to learn the topics related to whatever you're currently focusing on? Sorry for the rant.
I personally find it far easier to do learn things I am interested in. So start there, what sounds interesting to you the most?
We all have a shallow understanding. There is only so much domain knowledge you can hold in your brain at a time and you can always go deeper towards bare metal programming. The fact you are looking at yourself and feeling this way is actually a sign you are better at this than you realise. Keep up the good work!
Hahahhahah i can’t read all dogshit so funny hahah 🤣❤️
For me everything suddenly clicked when I learned more about how cpu actually works, learned to properly code in C and other low level languages, gained a basic understanding of assembly. None of this knowledge is required for a frontend career (it may help but marginally), but i think this really elevated my level as a dev. I fear no task because I’m now able to look at a problems from the perspective of the actual computer, and not from the side of framework/library/whatever layer of abstraction we pretend is important.
There is no limit to learning, but for me the minimal amount is when you can confidently say that you can implement something without other's help and without AI. When you have an idea or asked to implement something you should be able to come up with a list of steps to implement it. It is ok if some steps will require you to use google. As for how deep you should learn - I think the usual advice is to go 1 level of abstraction deeper than whatever you are using. Nothing should feel like magic to you. Also, don't compare yourselves to others, and don't dwell on regretting the wasted time - it is pointless. Think what to do to get better and get better. Don't think about the huge amount of stuff you need to learn, focus on the next thing you want to learn.
Struggle. Google stuff you don't know. Ignore people who shout from the rooftops how smart they are, the *really* good programmers are quiet and confident.
[removed]
Nobody learns everything, you only learn what you need to solve the next problem.
you still need a basis level of understanding of a variety of topics, otherwise you can't make a proper plan on how to solve the next problem
practice practice practice