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