Ask HN: I'm a self-taught programmer, what am I likely missing
I've been programming since I was about 10, starting with BASIC, then ActionScript 2 and 3, then PHP, mySQL, Objective C, then Javascript, Swift, back to Javascript to learn React, Node, Next.js etc etc. and using these I've made websites and apps with millions of downloads, had books published.
BUT, I'm entirely self taught, and I feel like I'm likely missing a bunch of things that 'properly' trained programmers know. But you don't know what you don't know, right? I would definitely fail any kind of code test with sorting algorithm type questions for example.
Has anyone also been along this path and realised these important things they don't know? If so, what are they?
7 comments
[ 3.5 ms ] story [ 22.5 ms ] threadStudy time complexity of insertion, deletion, search, etc. in these data structures. Then you will understand when to use which. Big O notation is used to express time complexity for expected runtime of the operations.
Things I've had to learn:
I am not expert at any of these. I've learned enough to get by.And that's kind of my philosophy. It's like just-in-time learning. I learn what I need to be able to do what I need to do. I haven't bothered to grind leetcode or anything. I let the job tell me what I need, and I learn that. (I do also kind of keep an eye on what else is going on, so that every five years or so, I try to learn the one thing that's going to matter most for my employability in the future.)
Personally I'm a big advocate for learning all of this stuff, even if you don't ever need it for your job. It still changes how you think about problems and makes you more well rounded (though formal education is not the only way to be more well rounded).
If you have an undergrad degree or past experience in a different area, you may not be "missing" anything from the perspective of being well rounded.