The modern genetic code may have developed from a much simpler predecessor rather than appearing in its present form.
Coevolutionary models propose that coding relationships changed and expanded as amino-acid biosynthesis, transfer RNAs, primitive translation, and proteins developed together.
Natural selection could preserve improvements that increased translation accuracy, molecular stability, or useful peptide function.
This approach does not require the entire modern translation system to exist at the beginning.
Gene duplication, diversification of transfer RNAs, changes in amino-acid availability, selection for useful peptides, and increasing translation fidelity provide mechanisms through which a simpler system could become more elaborate.
The structure of the modern genetic code and relationships among tRNAs and aminoacyl-tRNA synthetases provide evidence from which researchers attempt to reconstruct such a history.
Coevolutionary models generally require some earlier system in which nucleotide sequences were already connected in some fashion with amino acids or peptides.
Natural selection can preserve and improve systems capable of heredity and differential reproduction, but invoking selection does not by itself explain how the first dependable coding relationship originated.
The precise historical sequence remains reconstructed rather than directly observed.
What was the simplest coding system upon which cumulative selection could operate?
How were the first dependable associations between nucleotide sequences and amino acids established?
How accurate did primitive translation need to become before useful proteins could improve the translation machinery itself?
Which features of the modern code result from selection, and which reflect chemistry or historical contingency?
Intelligent Design need not deny evolutionary modification once coding and heredity exist.
The central design question lies deeper: whether mutation, selection, duplication, and coevolution adequately explain the origin of the information-processing relationship upon which those processes subsequently depend.
Evidence that an existing code can evolve does not by itself answer how coding originated. At the same time, a design argument should not ignore genuine evidence for evolutionary development of the system.