Self-synchronizing code is a special kind of line code that is easy to synchronize (having two computers "stay in time with" each other when "communicating"). Code like this happens in telecommunications.
Information on computers is made from binary bits - 0's and 1's (OFFs and ONs). This means that when a computer is being "communicated to", it must "listen" for bits at the correct speed by staying synchronized, or else there will be a misunderstanding. A computer needs to notice misunderstandings immediately, so that wrong things don't happen.
Confusion can happen when two signals combine or misalign, so it's helpful for different "words" in a code to be unique from each other.
Imagine the language only has the words 00 and 11.
Code A is self-synchronizing, because its "words" are very different from each other, and hard to confuse with each other.
Imagine the language has the words 00, 11, and 10.
Code B is not self-synchronizing, because its "words" are too similar to each other, and easy to confuse with each other.