Maybe it is just because I learned to code back when people learned from books (sometimes even textbooks!), but I think the fastest way to learn to code is to get one good book on whatever language you want to use, and just start coding. Videos and tutorials are so low bandwidth, hours of videos and tutorials == the intro chapter to a book. If anything videos are eating the time you could spend reading and coding.
My experience was “read the book and do exercises until I feel a false sense of confidence. Then just go do stuff and use the rest of the book as a reference.”
What was most important to me was to make sure I didn’t burn out and get bored. It was important to get to a fun, captivating project asap.
ah, interesting, what projects do you normally do? i really like this approach but struggle to find a good starting project... I always pivot bewteen too simple and too complex
I always gravitate towards projects that involve reading in tab delimited data, doing some sort of transformations (crud) or analytics, and writing the results back. You then quickly learn data IO, Data structures, looping, threading (big data) etc etc.
Programming books are a start, but they hardly ever mention stat(), inodes, sockets, named pipes, the fact that kernel calls are extremely slow, deadlocks, data structures…
Well, that just depends on the programming book? If you pick up TLPI it will talk about stat and inodes. Pick up a book on perf, it will talk about syscall overhead, etc
Agree with this. Lately I've been watching more youtube videos about programming than usual, but I still find they take so long to get anywhere. The 5 to 10 minutes you spend watching one could almost always be spent reading an article or a chapter of a book on the same topic and getting much more information out of it. And it turns into practice for reading documentation about things that have no videos about them, which is its own skill.
Yes to reading documentation - there seems to be a trend on twitter these days of "I've been using this language/library for years and I just learned you could do X!!!". Really, you haven't RTFM on the tools you use daily to make your living?
I've also found reading the source for libraries you use and stepping through with a debugger is really the best way to understand them. This is probably how most people learn their in house code at work. Just treat the whole stack like in house code (within reason). And reading code is also a fabulous skill to hone.
Reminds me of a friend of mine at university who started to shout "YES I'M A FUCKING GENIUS" when he found out there was a split() function for strings.