Amazon patented the "Buy Now with 1 click" button in 1999. This feature was game-changing. It eliminated steps between a user looking at a product and buying it. Meanwhile, the competition had a multi-step order process. The user finds a product and adds it to their cart. They hit checkout and fill in their credit card details along with the shipping info. Once that's done, they hit buy. With Amazon, it was just one button, and it was at their doorstep the next day.

Uber has its version of buy now with 1 click. They have one button to book a ride. The driver shows up at your doorstep to pick you up. They drop you exactly where you want to be. There's no middleman, no human interaction, or steps you need to take after pressing the button.

Eliminating steps to act reduces friction. It lowers to activation cost to act. If the user knows a particular action will take a long time, they won't do it. However, if they know it takes a few seconds, they are more likely to do it.

You want to design applications that reduce the number of steps a user has to take. If Google required 3 clicks to just search for something, then no one would use it. Searching is so easy these days, most browsers can do a google search from the address bar. You don't even need to go to google.com.

You might think this only applies to UIs. It's not. It needs to be done everywhere. Friction needs to be reduced when using any software whether it is a developer tool, public API, or even a CI build system. If using a tool makes your job harder, it is not a good tool.

Docker is a great tool because it's simple to use. The CLI is powerful, but most usage patterns involve a handful of commands. Setting up a build environment with docker-compose is at most one command. You have a docker-compose file with your application and all its dependencies like PostgresSQL, Redis, and Kafka. When you run it you get a production-like environment.

Design to reduce friction for the user. Because at the end of the day you are not the user of your software.

Thanks for reading the article. If you enjoyed this and would like to receive similar articles, please consider subscribing. It's free, and I won't ever spam your inbox. Share on Twitter.

Reduce Friction