Interfaces are languages
Interfaces, at their core, are languages. Languages that are expressed in space and time, across multiple dimensions, expressed in 2D with windows, colors and shapes, and across time with interactions and gesutres. Text happens to move in time and 2D, like programming languages - side note: text-bsaed programming languages are graphical user interfaces too by the way. Just as English or Mandarin serves as a medium for human-to-human communication, digital interfaces facilitate a conversation between human and machine. But these interfaces, with their visually rich dimensions, besides simplify our interaction, they add layers of complexity too.
Interfaces should be simple for beginners and expansively capable for experts, but as we make computation “easier” by representing it visually, we paradoxically add complexity. If a language like English is limited to grammar and vocabulary, a digital interface sprawls across dimensions - colors, buttons, iconography, and more. Any time we as designers make something simple in the computer, we're probably adding an extra layer of abstraction and a new dimensionality, a new concept the user needs to carry in their head.
Another nuance is the non-universality of interfaces. The sentence "The cat sat on the mat" retains its meaning across media, but a button or icon might not. Interfaces often force users into a game of language switching, juggling between different platforms visual dialects. The way design dictates how we use a tool, it also shapes our understanding of what is possible within that tool.
Interfaces aim to simplify, but their very nature as visual languages introduce complexities. In order to be literate in a language is important that the interlocutor is equally fluent in reading and writing.