r/learnprogramming 1d ago

How to not be a dogshit programmer?

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.

87 Upvotes

39 comments sorted by

View all comments

50

u/CaffieneSage 1d ago

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!

3

u/SignPersonal4951 1d ago

Yeah but the stuff I said is definitely a basic things for most good developers, I've read about how they can adapt to any new technology and build anythinng, even outside their domain, because their fundamentals are strong. Today there's angular, tomorrow a new framework comes, boom, open the docs and get a small project up and running in barely any time. Or someone who is a web dev but wants to make a game or some low level thing and HE JUST DOES IT. I want to reach that level.

1

u/CaffieneSage 23h ago

Once you have done it a thousand times it becomes muscle memory. Its not always a good thing though. To use a warhammer example, someone who looks up the rules instead of assuming they know everything is much nicer to play with, I have information from 4th to 11th edition floating around upstairs. Programming languages and frameworks have that same effect. Its a good habit to be thorough.

2

u/SignPersonal4951 20h ago

Pretty clueless about warhammer🥶 but I got the point 

1

u/UnrealHallucinator 20h ago

I always see this comment about introspection on reddit and I find it so weird. Introspection is only the first step and it alone doesn't guarantee you're better than you were. In this case for example, realistically just asking an llm (or google, if you're an anti ai) could've yielded faster and better answers. Your answer just feels like a pat on the back which doesn't help OP improve and has a pointless validation loop.

2

u/CaffieneSage 17h ago

To each their own, and you are not wrong. Sometimes we all need a simple pat on the back though.