Lots of heat surrounding this question.
My take is that a code must be a system for conveying meaning.
In my view, an essential feature of a code is that it must be abstract and and able to convey novel messages.
DNA fails at he level of abstraction. Whatever “meaning” it conveys cannot be translated into any medium other than chemistry. And not just any abstract chemistry, but the chemistry of this universe.
Without implementing in chemistry, it is impossible to read a DNA message. One cannot predict what a novel DNA string will do.
DNA is a template, not a code.
Go to it.