I feel like I could improve how I approach learning things in fields that are completely new to me, or where I'm far from an expert. From everything you have said and that I've read elsewhere, Gates and others at his level seem to have really honed their approach to learning and becoming able to have an informed conversation with an SME.
Example, I’m making this up, but it’s a similar type of question I saw, someone is explaining how their application stores data, he will ask, “are you encrypting it?” Response: yes “how?” Response: using XYZ “why not ZYX?” Response: well, we haven’t thought a lot about that yet Response: “well what’s the impact on the processor when encrypting?” Response: not sure...
The engineer thought he was building a app to do X but Bill Gates is operating at a different level, perhaps he has a theory on the future of hardware, or how he wants to deploy this in developing countries. Or he read a recent paper where researchers highlighted the impact of encryption for this specific type of application that he thinks you missed. If he respects you, he will point you into a certain direction and it’s a peer to peer discussion and sharing of ideas, if he doesn’t...it’s painful to watch.
Thats not to say that Gates isn't extremely intelligent and hardworking, just that his approach isn't necessarily the best. Also, Spolsky's anecdote is from a few decades ago. Gates will have matured a bit since then.
Edit: When I had the pleasure of watching Bill Gates do this, it was one of the most impactful moments in my life. When he would question a SME on a topic he came across as knowledgeable as the SME who has dedicated years to the topic. Bill Gates literally will have read all around the topic and his mind operates like a poker player or chess player who is thinking on multiple levels. His questions are probes to see how many levels you are thinking on, and I think it also informs him of other angles. He’s a brilliant guy.