What on earth is the author talking about? I've never heard of self-correcting code, certainly never used it, and can't find a reasonable reference to it with a google search. Is he mistakenly referring to "Error-Correcting Code", that is, using redundancy in data storage or transmission to catch and correct for random bit flips?