I am not just a self-taught programmer, I'm a self-taught everything. I dropped out of school early and only later got the equivalent of a high school degree (A MSA, Mittlerer Schulabschluss), because that was one of the requirements of living alone. I don't regret doing it this way, because I now have a fairly unique biography, but Imposter's Syndrome is with me, always.
I first saw the Imposter's Handbook by Rob Conery flash across my twitter stream a few months ago and I thought "This sounds great! A book for people like me." I picked it up two weeks ago and worked my way through it. The big takeaway: I learned more about all this stuff than I thought I did over the last four years and I still have tons to learn. This book made me feel energized to do more work, to explore further. It's easy to follow along and he gives you good pointers for further research. For instance, I really have to brush up on all that mathy stuff. If I could time travel and give my younger self a piece of advise it would be to pick up a math book alongside the C++ books I was devouring when I was in my late teens.
There was one moment I had to laugh out loud; when I finally understood Dependency Injection, or rather when I made the connection between the thing I was doing all the time and a term I heard thrown around a lot, but was hazy on. This is a larger problem in the tech sphere, of course: we are not as good at explaining things as we could be. A lot of the time explanations are too technical and detailed. Yes, computer science is a complex field, but I feel like we could do a better job at picking the right abstraction if we want to open it up to more people. We need new approaches and viewpoints to move the state of the art forward and The Imposter's Handbook is a step in that direction. It's still rooted in the traditions, but he doesn't pretend this is some arcane magic only a select few are qualified to learn.