When I mentor anyone that hasn’t done much work in anything other than print design, I always ask that they study and learn to code so that they can understand some of the constraints that exist in the medium. Erik Spiekermann adds another very compelling reason to my list. Communication.

You have to learn if not to code at least to appreciate code, to understand code. Because code is what nuts and bolts were a hundred years ago.

If you don’t know anything about mechanics, you can’t survive in this world. If you don’t know anything about how a computer works or code works, as a communicator, which is what a designer is — the interface between machines and man, that’s what we are. We are the interface, we interpret what the machine says into visible language. If you don’t understand how the machine works, you’re going to be laughed out of the room by the engineering guys, because you can’t communicate with them.

The other fun thing I enjoy is seeing these designers break the conventions commonly found in UI design. That to me is a way to move forward, and I love it.