Free space:
-The C Programming Language by Dennis Ritchie
-RTFM
* CSS Pocket Reference - Eric Meyer - https://www.amazon.com/CSS-Pocket-Reference-Visual-Presentat...
* XML Schema - Priscilla Walmsley - https://www.amazon.com/Definitive-XML-Schema-Priscilla-Walms...
* DOM Scripting - Jeremy Keith - https://www.amazon.com/DOM-Scripting-Design-JavaScript-Docum...
- UNIX and Linux System Administration Handbook. Get the most recently volume. It's a tomb (~1200 for the most recent).
- If you do any SQL, SQY Performance Explained is an 80/20 read for DB indexes, query optimization, and troubleshooting
- A Philosophy of Software Design (more recent). Just a great book on good design considerations to keep in mind.
- Mastering Regular Expressions. The first half of the book will make you confident. The second half will show you how they're implemented. Regular expressions aren't something to be afraid of!
- Designing Data Intensive Applications (more recent). Great book about data infra design decisions. Maybe not the scope you're looking for though.
- Design Patterns (Gang of Four). Absolute classic. Hard to read all the way through though, more of a reference read. You'll recognize a lot of the patterns. You'll find some great to see a formal definition of, and you'll see some you never want to use.
- Clean Architecture - Uncle Bob's best book IMO. I really don't like Clean Code, but this book talks a lot about interfaces and the right level of separation in your systems.
- K&R, as you mentioned, is of course a classic
- The AWK Programming Language is a nice quick read with similar quality and structure to K&R.
- Beej's Guide to Network Programming. The best overview of network programming, including the C API. Plus this book is genuinely funny. Beej has a ton of great stuff, all on their website for free, or in print.
- The Rust Programming Language is very well written too. Also online for free or in print.
Technical books, especially for practitioners, that stay relevant over a long period of time are rather rare. I wish I could say that I've had time to study TAoCP or SICP, but I haven't.
Some of what I did find useful back in the day were: Advanced Programming in the Unix Environment by Stevens, Stan Lippman's C++ book, Code Complete by Steve McConnell, the GoF Design Patterns book, Working Effectively With Legacy Code by Michael Feathers, and Introduction to Artificial Intelligence by Charniak and McDermott.
Whether, and to what extent, any of them are useful now is hard to say. Depends what you want to learn and what you're doing. The Charniak book, for example, is about classic "good old fashioned" AI, not the currently dominant connectionist approach. But it's LISP, and LISP is always relevant.
I'd also add The Systems Bible by John Gall as a book that influenced me. Its not a technology book though.
- The Design of the Unix Operating System
- The elements of programming style
- Code Complete, 2nd Edition
- The Art of Unix Programming
- Advanced Programming in the Unix Environment
- TCP/IP Illustrated, Volume 1
I’ve never done an online course or a bootcamp.
If you had access to a DEC based minicomputer, their wall of manuals was a perfect technical reference for their systems.
Knuth's series, the art of computer programming is a classic.
None of this is useful for you other than discussing things with fellow programmers.
* Concepts, Techniques, and Models of Computer Programming
* Engineering a Compiler
* The Elements of Computing Systems
SICP, Abelson and Sussman
Stroustrup
Aho and Ullman compilers
A Commentary on the UNIX Operating System
GNU C Library
Michael Kerrisks books are newer but are exceptional
Pike and Kernighan's "The Unix Programming Environment", and their later book "The Practice of Programming"
Usenix put out a refereed journal "Computing Systems" that was really good: https://www.usenix.org/publications/compsystems/computing-sy...
Programming Perl (the camel book)
Unix I just kind of learned by using it.