Structure and Interpretations of Computer Programs is very good. It was MITs old CS textbook, it’s still highly relevant. It takes a while to get through and you probably would get the most value out of it if you already have a lot of programming experience.
I also recommend Programming in Haskell by Graham Hutton 2nd Edition (Don’t get the 1st edition). It will warp you mind to think in a functional way. I would put it up there with K&R in terms of how well written it is.
I’m a student at a “Java school,” reading these has made me far better than my peers at programming.
Paul Graham has a lot of good essays on programming too, as well as life stuff.
If you're interested in something closer to the hardware than Python, why not read about the language that implements Python?
It's a programming classic, very concise, easy to read and informative. It'll take you from basic control statements to eventually writing a memory allocator.
Available for free online [1] and hard copy [2]
https://doc.rust-lang.org/stable/book/
https://www.amazon.com/Rust-Programming-Language-Covers-2018...
Two I've enjoyed are: "The Pragmatic Programmer" by Andy Hunt and Dave Thomas "Clean Architecture" by Robert C Martin
That being said, no harm in deep diving individual languages. Secrets of a JavaScript Ninja by John Resig was an excellent introduction to JavaScript!
I have the orginal hardbound 1992 edition [0], but it looks like there is a 2013 revision available as a collection of pdfs [1]
[0] https://www.amazon.com/Project-Oberon-Design-Operating-Compi... [1] https://inf.ethz.ch/personal/wirth/ProjectOberon/index.html
You are unlikely to encounter Oberon in the wild, but this book is the clearest and most elegant exposition of a systems design I have seen. They walk through the code for a complete operating system from hardware drivers to file system, compiler, graphic user interface and everything else in less than 10,000 lines of code. The focus on modularity and minimalism is very refreshing.
Java: Even for an early version I still revisit [2] Kathy Sierra SCJP 6 book beside of new ones, a great reminder for core concepts and basics, also 'effective java' by Joshua Bloch
C: As HeckFeck mentioned it was fun to follow C Programming Language by Brian W. Kernighan, Dennis Ritchie
[1] https://www.amazon.com/Fluent-Python-Concise-Effective-Progr...
[2] https://www.amazon.co.uk/Certified-Programmer-Study-Guide-CX...
Herlihy and Shavit's The Art of Multiprocessor Programming was fantastic for learning about parallel/concurrent algorithm and data structure design
I learned React using Stephen Grider online courses.