Why code engineering?
In the extant living beings the set of 20 canonical amino acids prescribed by the universal genetic code does not span all dimensions of chemical variability necessary for diverse cellular processes advanced (e.g. metazoan) cellular forms. Therefore, only a few proteins have a final covalent structure which is a simple accurate translation of mRNA. Thus, the release of a completed polypeptide chain from a ribosome is usually not the last chemical step in the formation of a protein.
The majority of the proteins reach maturity and converts into active forms, either co-translationally or by post-translational processing. It includes various (context-dependent) recoding events, enzymatic cleavages and/or the selective binding of different classes of chemical groups on defined residues in specific proteins. Thereafter, the mature proteins function as structural components of the cell or as functional biochemical machines.
Evolution invented two strategies to increase amino acid side-chain inventory: a small fraction of proteins is co-translationally equipped with special proteinogenic amino acids such as selenocysteine (Sec) and pyrrolysine (Pyl) by reassignment of termination codons. However, the major classes of chemical modifications that contribute to the protein structure/function diversity are post-translational modifications (PTMs) which are strictly separated from the basic coding. These reactions are selectively and timely coordinated chemistries performed by dedicated enzymes and enzymatic complexes, usually in specialized cell compartments.
However, it is extremely difficult to mimic nature’s complex machineries such as the PTM-apparatus. Thus, we usually highjack and/or divert cellular systems such as protein translation to gain additional chemical diversity. To achieve this goal, we need to find a way for efficient cellular uptake, metabolic stability and translational activity (i.e. incorporation) of useful non-canonical amino acids (ncAAs) which are usually chemically synthesized. Furthermore, we need to (re)assign coding units (i.e. codons) in the genetic code to accommodate ncAAs into target proteins.
(for details see: Hoesl, M. G., Budisa, N., (2012). Recent advances in genetic code engineering in Escherichia coli. Curr. Opin. Biotechnol. 23, 1–7.)