Friction is often an obstacle in computing. It stands in the way of a task or increases its difficulty. Many systems are designed to reduce or eradicate these obstacles. And these systems are right to do so, because the benefits are experienced by many people. However, friction can still be an important component of a system. In the physical sense of friction, a tire without friction also loses its traction, which is a necessary friction required to control a vehicle. This idea of traction can also be applied to computing. Friction in a digital system can surface information, increase transparency and honesty, and provide clarity. These characteristics help increase traction and provide guidance for a user of a system, so that they can control the decision they are making.
Providing information is one of the most important aspects of useful friction in computing. Certain decisions should not be made too easily, or without friction. Imagine a system that allows a person to purchase a home online in one click. In this system, the decision requires a lot of important information, including mortgage details, location, or property and title details. Making this task too simple could result in all kinds of serious mistakes for the user and the other parties involved. Someone could buy a house by accident, or without clear details about the house. From a UX perspective, a user would benefit from dialogs and confirmations that surface important information and guide the user before a decision is made. The system also benefits from this, because it creates transparency between the system and the user, which could help foster trust and integrity in the system. The added friction in the system can also guide a user to use the system for its intended purposes, rather than exploiting it or misunderstanding it. A great example of this is Nextdoor, which reduces racial profiling in its forum by adding some useful friction to its posting process. When posting about suspicious activity, Nextdoor has dialogs that detail their values and use language in their forms that explicitly tries to stop racial profiling. With useful friction, a process can become seamless, which does not imply that it is quick and easy, but instead is smooth, continuous, and easy to follow.
With clarity in mind, it is imperative that friction does not become too tedious. Too much friction means that the system creates the problem it was designed to solve. This reduces clarity and can result in confusion and frustration. If it took several hours to go through the dialogs required to buy the house, then maybe a potential user would become disinterested. They could easily talk to a realtor and see a house in person, which takes roughly the same amount of time. Friction should also not be used to artificially make a user spend more time using the system. Often times, certain applications are designed to trap the user with additional steps in order to expose them to more of that application’s content. This is a toxic practice that can lead to user frustration or addiction to the application. Adding friction in computing creates traction. It guides a user and allows them to control how the outcome might affect them, without giving too much power to the user. People benefit from things being made easy, but could easily experience a detriment if there is not enough thought involved. Friction seems to work the same way in nature. Too little friction, and the car and the driver slide around dangerously. Too much friction, and the car does not move at all.