
Describes the features of the Python 2.5 programming language, covering such topics as types and operations, statements and syntax, functions, modules, classes and OOP, and exceptions and tools.
Then there was that one time I was self-studying computer architecture (Computer Systems: A Programmer's Perspective) and was able to turn what I learned around and hack our binary code at a customer site because I wasn't in an environment where I could compile our code... and then years later, when I wanted to analyze the ROM of a 90s electronic device with a much simpler instruction set than x86, I wasn't afraid to crack open the thing in Ghidra
Let's see, what else have I read that's paid dividends over the years:
- Modern Operating Systems (Tannenbaum)
- Learning Python (Lutz)
- JavaScript - The Definitive Guide (Flanagan)
- Programming PHP (Tatroe)
- Learning Web Design (Robbins)
- Algorithms (Sedgewick)
- A book I read whose name escapes me now, about technologies like RS-282/RS-484 and serial communications in general
- (I could probably put down Cuckoo's Egg too as an "inspiration" for me ultimately getting interested in computers and networking, and I bet that's not too uncommon a story)
It's probably a sign of my age (mid 30s for reference), but when I'm curious about something and want to learn it really deeply - I look for a good book on the topic. (although I'm willing to admit that maybe this process hinders me in some ways, because it means I sometimes spend more time studying than I actually do working with a thing - I have spent a LOT more time reading about circuits than building them - but I like studying so I'm happy either way)
I started with Mark Lutz's Learning Python (http://shop.oreilly.com/product/9780596513986.do) about 10 years ago. In the meanwhile I've been an active contributor to large Python-based open source projects, e.g., Salt (https://github.com/saltstack/salt) which not only that it helped me get feedback from people with a tremendous experience, but also reading through the code taught me good practices and many good ways to solve various problems. A few months ago I started reading Luciano Ramalho's Fluent Python (http://shop.oreilly.com/product/0636920032519.do) which is just beautifully written and with a wide variety of topics for a deeper look inside Python internals.