Imagine a world where every click, every touch, every swipe on a device is not just an action, but a meaningful conversation. This is the beating heart of Human-Computer Interaction (HCI) – the science and art that make this conversation possible, efficient, and enjoyable.
At the intersection of advanced technology and a deep understanding of the human psyche, HCI is dedicated to facilitating the dialogue between users and machines, turning complex binary codes into intuitive and satisfying experiences.
Every element you see and interact with on your device is the result of countless hours of study, design, and testing, all grounded in principles of ergonomics, psychology, computer science, and more.
In this content, we will explore the vast territory of HCI, discovering how it shapes technology to adapt to humanity, and not the other way around. We'll unveil how HCI not only enhances our efficiency but invites us to a journey where every interaction counts, every feedback has value, and every user is recognized in their individuality.
Join us in this exploration of human-computer interaction, where technology meets humanity.
What is Human-Computer Interaction?
Human-Computer Interaction studies the interaction between people and computers, as well as the design theories and techniques used to make a system interactive.
HCI is based on knowledge of computers and humans. Also, the relationship between these components is extremely relevant since computers have almost infinite applications, and there are numerous possibilities for "dialogue" between users and computers.
Companies can provide more efficient and accessible digital products according to their customers by analyzing the communication between the user and the interface.
The human side
When humans interact with computers, everything they have learned before, their experiences, and current knowledge, will influence this interaction. Designers should keep this in mind when creating UIs or products.
Therefore, there are some factors that Human-Computer Interaction should always consider:
- users' wants and needs;
- the user's abilities or possible physical limitations;
- how the user's perception system works—clues that our perceptual system picks up from the environment and that lead us to action;
- what users find attractive or pleasant when interacting with computers.
The machine side
The information a computer contains and the operations it performs are represented in a form that we cannot observe directly. What a computer shows externally does not naturally reflect what happens internally.
So any feedback that the user may need must be explicitly planned and programmed.
Interactions between users and computers happen at the interface, so the design of UIs has a direct impact on the effectiveness of those interactions.
How the user interacts with the interface is where behavioral science, computer science, and other fields of study intersect.
The goal is to minimize the effort of interaction, that is, the amount of physical and mental effort a user must exert when using technology, and humanize interactions.
Disciplines of HCI
The field of HCI covers a variety of disciplines, and its development has relied on contributions from many fields, like:
- Computer Science;
- Cognitive Psychology
- Social Psychology;
- Ergonomics/Human Factors;
- Artificial Intelligence;
- Philosophy, Sociology, and Anthropology;
- Engineering and Design.
As you can see, Human-Computer Interaction is a multidisciplinary field that draws many lines of research.
Therefore, it is essential to have people who meet this specific knowledge and skills at each stage of a product's development.
Why do we need HCI?
Human-Computer Interaction is a fundamental part of the digital world. Every application, software, and product we build depends on the interaction with human beings, and these interactions must be clearly understood to be effective.
HCI makes technology more accessible. Users have specific needs; some may be elderly, and others may have intellectual or physical disabilities. Human-Computer Interaction seeks to understand each user and how they interact with technology in order to improve this relationship.
We need to be able to think creatively to build innovative solutions that can solve the problems of tomorrow's world, not just today's.
Human-Computer Interaction in Practice
Human-Computer Interaction is the study, design, and implementation of software to be used directly with users. These systems are called User interfaces (UI), where interactions with digital products occur.
However, note that the field of Human-Computer Interaction is not just about designing a GUI or creating menu screens. HCI also focuses on the specific functionality of computers and the role they play alongside humans.
Ben Shneiderman, renowned computer scientist and professor at the University of Maryland's Human-Computer Interaction Lab, reveals in his book Designing the User Interface: Strategies for Effective Human-Computer Interaction 8 golden rules for successful Human-Computer interactions:
- Strive for Consistency
- Enable Frequent Users to Use Shortcuts
- Offer Informative Feedback
- Design Dialog to Yield Closure
- Offer Simple Error Handling
- Permit Easy Reversal of Actions
- Support Internal Locus of Control
- Reduce Short-Term Memory Load
1) Strive for Consistency
The same sequences of actions should be requested in similar situations within the system.
So use all the elements in your application consistently. A certain style of button should always do the same thing, or the navigation should work logically, deepening the hierarchy.
Jakob Nielsen, the co-founder of Nielsen Norman Group, says that people spend most of their time using digital products other than their own, and their experiences with these products define their expectations.
- Don't confuse your user: keep words and actions consistent;
- Follow established industry conventions: conform to market or competitive practices.
2) Enable Frequent Users to Use Shortcuts
The design should cater to both new and recurrent users. This can be done by using shortcuts, which can be hidden from novice users.
In this way, the inexperienced user can speed up the interaction with the experienced user, and the design can simultaneously serve both the new and recurring users.
So make the processes flexible so they can be executed differently.
As such, good Human-Computer Interaction allow users to customize frequent actions.
- Abbreviations, function keys, hidden commands, and macro features are very useful for an experienced user;
- Customize content and functionality for individual users;
- Enable personalization so that users can make selections about how they use the product;
- Automate frequently used operations.
3) Offer Informative Feedback
The system should offer some kind of feedback for each user action. The response can be discrete for frequent or secondary actions; the response should be more attention-grabbing for not-so-common or important actions.
The interface should always keep the user informed about what is happening. Don't leave users guessing – tell them what is happening. Do this by providing appropriate feedback within a reasonable period of time.
When users know the system's current status, they learn the outcome of their previous interactions and determine the next steps. Predictable interactions build trust in the product and brand.
- Every action with consequences should generate information to users;
- Present feedback as soon as possible, preferably immediately;
- Feedback must be relevant, understandable, and meaningful;
- Make this communication clear to build trust.
4) Design Dialog to Yield Closure
Sequences of actions should be organized into groups with a beginning, middle, and end. Informative feedback upon task completion gives users the satisfaction of getting work done, indicates that their goal was successfully achieved and prepares them for the next group of actions when needed.
Remember: the system should speak the language of your target audience.
To improve Human-Computer Interaction, you should always use words, phrases, and concepts familiar to them, rather than internal jargon. The less the users have to guess, the better. So use universal terms and try to sound as natural as possible; this will facilitate understanding.
Keep your specific user in mind (known through user research) when designing UIs. Terms, concepts, icons, and images that seem clear to you as a professional may be foreign or confusing to your users.
When a process is complete, always display a notification message, letting the user know that they have done everything necessary.
- Simplify language to ensure that users can understand terms and words without having to look up definitions;
- Know your product persona: apply user research to discover users' familiarity with terminology and technology;
- Provide users with well-defined options for the next step.
5) Offer Simple Error Handling
Nobody likes the feeling of doing something wrong, so caution is required when designing actions or tasks within the system that may lead the user to errors.
So whenever possible, design the system so that the user does not fall into serious errors. One way to avoid this is by presenting a confirmation option before they follow through with a particular action, such as, "Exit without saving?"
Error messages are important, but the best designs carefully guide the user to prevent this from occurring.
Note also that there are two types of errors: mistakes and errors. Mistakes are unconscious and usually caused by a lack of attention, like when making a typo. On the other hand, mistakes are conscious and based on an incompatibility between the user's mental model and the design.
Remember: conduct user research to know your target audience in-depth. Knowing how users behave makes it easier to design the system in such a way that interactions become more intuitive for them, thus preventing them from making serious mistakes.
- Prioritize: avoid significant errors first, then minor frustrations;
- Provide constraints on actions and maintain a logic of standardization to avoid mistakes;
- Offer solutions to problems.
6) Permit Easy Reversal of Actions
By allowing users to quit a process or undo an action, designers empower the users and provide them freedom and confidence.
It's a simple action that helps relieve anxiety because they know that an action can be easily undone if they make a mistake. This gives the user security and allows them to explore unknown options and, consequently, learn about the system.
Another common situation, as mentioned before, is actions performed by mistake. When this occurs, we need an "emergency exit" to leave the unwanted activity without going through an extensive process.
Exits allow users to remain in control of the system without getting stuck or frustrated at a certain point in the interaction.
- Promote Undo and Redo;
- Show a clear way out of the current interaction, such as a Cancel button;
- Undo options such as single action undo or action history.
7) Support Internal Locus of Control
Experienced users don't want surprises or changes in an already familiar behavior and are annoyed by unnecessary repetition and difficulty getting information or help.
Thus, it is important to keep the interface to the bare essentials so as not to diminish the visibility of some key elements. Each extra piece of information in the interface competes with other information that may be more relevant.
- Simplify interfaces by removing unnecessary elements or content that do not support the user's tasks;
- Don't let unnecessary elements distract users from the most relevant information;
- Prioritize content and features to support the main objectives.
8) Reduce Short-Term Memory Load
People have limited short-term memory, so remember that recognizing something is always easier than remembering it.
Minimize the user's memory load by making objects, actions and options available; the user should not have to remember information from one part of the dialog to another. Instructions should be visible.
Use iconography and other visual aids, such as thematic colors and consistent placement of items, to help users find functionality. Interfaces that promote recognition reduce the amount of cognitive effort required of users and are more successful.
- Offer contextual help rather than a long tutorial to memorize;
- Reduce the information that users need to remember;
- Use visual aids to assist users.
Origins and Timeline
Human-Computer Interaction is a field of research and practice that emerged in the late 1970s, initially as a discipline of Computer Science. Since then, this field has evolved, helping to dissect human behavior to solve society's most complex problems.
1970: personal computers
Until the mid-1970s, most offices ran on metal files, typewriters, and lots and lots of paper. The computers were massive and stayed in refrigerated rooms where only a few could operate them—this would soon change thanks to Steve Jobs and Steve Wozniak.
An essential step towards personal computing was given early in this decade: the Xerox Alto, developed by Xerox in 1973. Although the Alto turned out to be unviable because its parts were too expensive and would never reach the shelves, it had the first sketch of a Graphical User Interface (GUI) that would later serve as inspiration for the Macintosh and Windows.
Apple II and Human-Computer Interaction
Fortunately, a few years later, Steve Wozniak was improving the Apple I to release what would eventually be the first successful personal computer that paved the way for all the machines that would come later, the celebrated Apple II.
The Apple II came with 4 KB of RAM but could be extended up to 48 KB. In addition, it included a BASIC interpreter, graphics, and a color monitor. However, one of the Apple II's most important features was its 8 expansion slots on the motherboard, which allowed computer aficionados to add additional cards made by Apple—and other competitors that soon emerged.
With the popularization of the personal computer in the late 1970s, computers were no longer built for experts only; everyone suddenly became potential users.
In return, this also helped highlight the drawbacks of computers concerning usability.
The challenge of personal computing manifested itself at an opportune moment: as computers marched into the future, so did cognitive science.
So just as personal computing was presenting the need for Human-Computer Interaction in action, the cognitive sciences presented a vision for meeting these needs through an ambitious convergence of science and engineering.
Human-Computer Interaction was one of the first examples of cognitive engineering.
1980, the first wave: GUI and Mental Models
It was in this decade that computers had their remarkable evolution. In 1981, IBM launched its first personal computer, the IBM PC. With a version of the Microsoft BASIC operating system, the computer came only with a keyboard because the television could be used as a monitor.
Although these computers finally reached the general public, they were still difficult to operate.
So in the area of Human-Computer Interaction research, all lines of development in computer science were pointing in the same direction: understanding and empowering the user to develop systems that were easy to learn and easy to use.
Software engineering began focusing on experiment-based software development that relied heavily on iterative prototyping and practical tests.
Apple strikes again
In 1983, Apple revolutionized the market by releasing The Lisa, the first commercial computer with a graphical user interface (GUI)—an advance that would finally make computers usable by people with no special training.
Unfortunately, the Lisa was unsuccessful due to its development complexity, but Apple was already working on a smaller, lower-cost version.
Thus, one year later, Apple would once again show all its creative power, originality, and innovative ability by releasing the Macintosh. It was considered the first computer with an accessible Graphical User Interface and had a monitor, keyboard, and mouse with a button.
The Macintosh was much more organized than previous computers: options were arranged in menus, and instead of typing lines of code, there were clickable icons to operate a program. These icons, like the trash can, were representations of the real world.
There was also the possibility to edit texts by changing fonts, and size, italicizing words, and inserting images next to the text. This innovation had a direct repercussion on the publishing market of that time.
The desktop metaphor
The initial focus of the Human-Computer Interaction field was on personal productivity applications like text editors and spreadsheets, which drove a broader study to apply mental models to how we use computers.
This resulted in the first computer metaphor used commercially by Apple in the Lisa OS. The desktop metaphor represented a desk with several papers on top of it, symbolizing the computer files. It was established that by mapping the physical office environment onto a computer interface, users would more easily understand how information was stored on the desktop.
And just like that, mental models and human factors engineering drove software development.
From then on, it was clear that the personal computer was the future and that Human-Computer Interaction would empower users through more intuitive system design.
1990, the second wave: internet and communication
With the growing influence of the Internet in the 90s, the second wave begins to direct the field of Human-Computer Interaction beyond mental models.
In this decade, emails got popular, turning computers into communication tools. People were no longer interacting with computers but using them to communicate with each other.
There was a crucial need to understand how UIs influenced behavior.
As a result, Human-Computer Interaction studies integrated with sociology, anthropology, and psychology to explore the social components of interactions between users and computers.
During the 90s, we had another significant milestone: the giant Google. Founded in 1998 by Larry Page and Sergey Brin, this 'small' company would forever change how we create and address content.
Larry and Sergey studied at Stanford University. Their work in academic articles such as The Anatomy of the Large-Scale Hypertextual Web Search Engine gave way to the search algorithm.
2000, the third wave: devices and social impact
The third wave brings the continuing diversification of computing devices.
In the 20th century, we were forced to reflect on the role of technology in our lives and the paradox of being connected but often alone.
Today, we have ubiquitous computing: machines are part of our daily lives and are everywhere. When performing exams, making appointments, in cars, in appliances, in our homes, when buying clothes, or paying bills.
A more holistic approach to design also appears, emphasizing complex interactions between people, spaces, and technologies. Entertainment, fun, and the curiosity to explore have become central design themes.
During this wave, the field of Human-Computer Interaction increasingly draws on philosophy and ethics to provide rhetoric about the consequences of technology on habit formation.
It is important to remember that professionals in the field have a social responsibility to users when creating products and interfaces.
As we advance in the digital age, Human-Computer Interaction (HCI) emerges not just as a field of study, but as a vital element in creating technologies that not only meet our needs but also enhance our capabilities.
By embracing the diverse disciplines that form the foundation of HCI, we are challenged to not only understand the complexity of the human mind but also to use this understanding to shape technological experiences that are intuitive, inclusive, and inspiring.
The journey of HCI is, therefore, a continuous dance of empathy and innovation, where each step forward is a movement towards a future where technology aligns harmoniously with the rhythm of humanity.
In conclusion, Human-Computer Interaction is not just about interfaces and algorithms; it's about understanding the human narrative and weaving this narrative into the fabric of technology.
A good interface takes time and care to mature. Similarly, HCI teaches us that patience, care, and a focus on the end user are essential ingredients for creating solutions that not only solve problems but also celebrate the essence of being human.
With HCI, we are writing the future of digital interaction, one in which every user is recognized, respected, and valued.