Friction affects our productivity, it affects our creativity. It shapes the way we work, and not always in a good way.

When friction is increased it's like we get stuck in the mud. When it's lowered, the floodgates are opened. We're freed.

What does this mean in terms of tooling? Something that is difficult or time consuming to change is full of friction. Something that is easy to change, or play with, is low friction.

If experimentation or exploration is full of friction, we're less likely to break the mold and instead we'll continue with small, incremental changes. This is why I'm interested in concepts like computational and parametric design. It allows us to rapidly experiment and be creative.

Consider a common workflow for designing a button

We often start by determining what aesthetics in the button we want. There are a lot of decisions that need to be made.

If you have to manually conceptualize and create button designs in a traditional tool it can take 1-10 minutes to create each one. This will only allow you to try out 10-60 button variations in an hour. This is high friction.

What if our tools knew what a button was and variations were generated for us? What if our tools already have knowledge about branding and use that information to intelligently suggest button designs?

This would drastically lower friction and allow us to hone in on the button we're looking for. As humans we're very good at searching and curating, yet our tools make it time consuming to walk through variations. Manipulation of our canvas is too granular.

When it comes to designing and building webpages there is a lot of context we can infer from the user, and a lot of commonalities on the web in general, which we can leverage to make better predictions around what the user wants.

We can remove friction.

So we should.

This was a collection of thoughts I had after reading Jason Lengstorf's post: Get the results you want more often by reducing friction