Learn Fundamentals

I am a self taught web developer. jumped straight into javascript essentials then moved into frameworks. after 5 years started feeling like I really didn’t know what the fuck I was actually doing and was burnt out on javascript and the whole web dev industry in general. was ready to call it quits. then I got interested in learning about the absolute fundamentals of computing, since I have a faily good understanding of electronics, I started studying the link between software and hardware and how a CPU got its instructions and really really down the core fundamental binary/hex/assembly level and logic gates. then I started going back up through that to learning C and understanding programming from a much closer level to the metal as they say, I’ve also taken tangents to learn less common programming paradigms and languages (lisp, functional, some esoteric stuff, just for fun) and while it’s a vast sea of knowledge that i’m only starting to learn, I finally found the passion for coding back. and I can already tell that applying that knowledge and understanding to my code has made a drastic difference in the way I think and see the code.

I recommend everyone that went through a similar learning / career path as me to take the time and go back and learn the fundamentals of programming. how a computer even is, how does it work. what are your variables actually doing to the memory chip and how are you accessing it. learn the history of computing. learn about bell labs and lisp machines and turing complete. Learn about brainfuck and skI and haskell. go explore the history of computing and explore all the different ideas taht people had to solve the problems of the time and look at why they succeded or failed.

My biggest regret today regarding programming is that I never studied the fundamentals and theory of it all to get a deeper and larger view of the its world. I am very grateful to the meritocracy of the development industry and to all the amazing learning resources available out there. without those I would’ve had a much harder time finding a good career path that I actually enjoyed but now is the time to truly turn from the impostor that I am, to the developer I aspire to be.