I think it's easy to forget that as we get better at programming, we tend to get better at either avoiding problems or finding our own answers in which case SO is also less useful because we've learned to fish.
An MIT professor on OCW (intro to machine learning) said something that has stuck with me - in paraphrase: "In order to learn something we must give it a name."
Now I just intuit which search terms work and can scan the results to find leads. A lot of the results and examples take coaxing to work, but sometimes you find that diamond that perfectly addresses your problem.