Did you try to understand?
“The ultimate goal of research in program understanding is to improve the process of comprehending programs, whether by improving documentation, designing better programming languages, or building automated support tools.” —Clayton, Rugaber, Wills
To me, this definition (and many, many similar ones) miss a key point: What is the programmer’s task?
Furthermore, most good programmers seem to be good at knowing what they need to know and what they don’t need to know