When we speak of describing what we know to a computer, we are speaking of computer programming. There’s more than one kind of computer programming, just like there’s more than one kind of writing. For me, what makes programming interesting is exactly the challenge Knuth describes: taking things that today seem like matters of judgment, taste, or opinion, and converting them into tasks a computer can do.
Why? Because the process of teaching is also a process of learning. This is a widely reported side effect of writing a book about a topic: you end up knowing a lot more about the topic than when you started. Likewise, to be able to teach something to a computer (via programming), one first has to understand the topic in a much deeper way.
What makes this learning process unusual & interesting is that it’s often more experimental than other forms. Sometimes there are books you can read or existing algorithms you can study. More often, it’s a process of trial and error, often chasing false leads on the way to a discovery. The 1985 book Structure and Interpretation of Computer Programs (aka SICP) is maybe my favorite book on programming because from the first page it commits to this idea, which it calls “procedural epistemology”, a qualitative change in “the way we think and the way we express what we think.”