If you'll allow me the arrogance of saying that I'm pretty good in my genres (web-app, mobile, and I'm starting to come into my own in game programming but really I have a shit-ton to learn in these fields I know enough to sound smart but I'm FAR from a genius), I'll say that most of what you are seeing is a bunch of subject matter experts answering questions. For example I might be able to tell you the in depth ins and outs of using RabbitMQ as a messaging queue for async processing in a web application but I know next to nothing about how to write an audio driver for Linux, or the math principles behind the best cryptography algorithms. So to answer your question I'd need to rephrase it a bit and say how do I become really good at a subject. Here's what I did:
- I have 15 years of professional experience, sorry I don't think there is any shortcut on this one. 15 years teaches you things and processes that you will never learn in 2. THIS DOES NOT MEAN that all programmers with 15 years are better than anyone less experienced just that there certain things that the years drill into your head that's impossible to give to someone with less experience.
- I read A LOT. Like 3-4 technical books a month. Immersing myself in the my area of study helps my think naturally in those techs.
- I write a lot of experimental code.
- I go to meetups and talk to other good developers
- I constantly try to learn something that I think is over my head.
Never stop learning and never stop pushing yourself. I'm driven to know everything I possibly can about my areas.