I saw several examples today.
A linked list with Delphi, define a pointer, discovering the type is not compatible, tested a lot, conversion to switch, solve it. In fact, the basic syntax will have a: ^ integer; B: ^ Integer; A and B type are incompatible, this is a basic syntax, learning Pascal should understand.
A person VC used N years, but also wrote a shared software and received a registration fee. I don't write threads, and the CPU is written almost 100%. This is also a common problem.
I don't think the programmer should understand what it is, it is impossible, and there is no energy. But it is best to involve more knowledge in the case of power. Don't remember, don't have to be detailed, as long as you can think of which website can find the relevant answer when you encounter problems.