46: Define Interface
I had an enlightening discussion with someone last week on how to solve a problem without jumping into a solution with interface. Unfortunately, at least from my perspective, the question was started with a reference to the book “The best interface is no interface“.
At that point, I don’t remember what the book is really about. I only remember reading it a few years ago and I love it. After reading the book, I have moved cross country and changed two jobs. My memory is fading. Therefore, it’s largely my fault that during the discussion, I kept simply addressing the problem statement, not the user’s needs.
The discussion did not end very well in the way I hoped. But I do appreciate the discussion and question. I always believe my passion is building something not only can meet what the users need, but also make the users enjoy. If I simply jump into solution, it means I am not really ready for that kind of thing. The real question is: why?
It gives me a lot of thinking and I decide to have 2 blog entries about it.
What is Interface?
First, I want to understand what is really an interface.
It has been a long time since I was in school. I don’t recall the definition of “interface” in my head, so I ask the Internet.
From Oxford Dictionary , there are 3 definitions:
- (computing) the way a computer program presents information to a user or receives information from a user, in particular the layout of the screen and the menus. (the user interface)
- (computing) an electrical circuit, connection or program that joins one device or system to another, i.e. the interface between computer and printer
- interface (between A and B) the point where two subjects, systems, etc. meet and affect each other
I see 3 key components of an interface from the above definitions.
- presents information
- joins one to another
- meet and affect each other
Therefore, to be an Interface, we mean passing information between at least two entities. In my mind, an information can be:
- a command: to invoke a task
- an event: to notify something has happened
- a message: not really an event, simply a message not related to the target (receiver)
In that sense, the following can all qualify as an Interface:
- A keyboard: As a user, we can use it to send commands to another entity, such as a computer
- A notepad application: It receives a command and display the event (of what key was typed) on screen.
- A TV remote: As a user, we send commands to change channel in TV
- A TV screen: It displays the event of what channel has been picked
It does not have to be digital
- A door knot: It can receive a command to open or close the door
- A door: It will respond the command and then it may stay in that event of being opened or closed
- A mechanical watch: It does not actively receive any command or display any event. It simply clicks on its own pace and display a message not directly related to the receiver (the person who wears the watch). But it IS an Interface.
Here I purposely remove the common word “User” so I am not confused “Interface” with “User Interface”. The latter has a very specific meaning between human and computer. What I am looking is something more general, not even the meaning of Interface in the computing world.
I think my above example about “Interface” is pretty interesting. Here is my definition: An interface is a medium supporting to send commands, receive events, or display message between two entities.
Now the question is: am I interested in Interface, or User Interface? To answer it, I first should dig out something.
What is No Interface?
I found the book from the self and tried to understand what is No Interface. Here is the page:
This makes total sense.
Based on my own definition, interface will not extinct. It is also not the intent of the book.
Our goal is finding ways to have effective and efficient interfaces. No Interface can be an option for some use cases, but necessarily the only option or THE option.
As the book says, and I personally love cooking, I will never enjoy cooking again if I don’t have an interface to implement it.
Therefore, No Interface really means going on a path that leads to potentially maximum automation for the purpose of efficiency. The interface will always be there, but the difference is how the user gets to the end.
I now feel much better. No Interface is not equivalent to having no screen or anything to interact with.
The motivation of this post is mainly from a recent discussion. The idea is for me looking for my own definition of Interface and finding what I am really looking for. I believe I am more into Interface not just User Interface. Some of my favorite books like Design everyday thing, which is not completely for computing. To me, the word of usability should always be embedded in our daily lives. I still think I love building products serve for the user’s needs, but our view should not be limited in only computers. That is what’s important to me.
To be continue…