Brian Wagner | Blog

The Cliff of Complexity

Apr 17, 2021 | Last edit: Apr 17, 2021

A great deal of effort is required to make something feel effortless. This is true in writing and the arts, as well as the space of computer technology.

In the technology landscape, we often talk about the user experience. That involves a broad set of interactions, from creating an account, checking messages, creating a thing, changing a thing, and on and on.

We often describe interactions as hard or easy, natural or unnatural confusing or self-evident, complicated or simple. Those may be easy distinctions for one person to make. But a whole group of people? That becomes a much harder task. You know this if you've ever asked a group of people which restaurant to order food from. You will get many different answers.

The challenge for the people who design and build things like web technology tools is to imagine the needs and expectations of all of these potential users. It is a big responsibility. And it's a task that can only be approached as a long series of revisions and refinements that aim to get closer and closer to the goal. Maybe a goal that's never reached.

Going back to our group of dinners: does everyone get their first choice? No. It may be pasta and not tacos. Does that mean their own preference was correct? No. But they shouldn't be made to felt like their wrong. And that can be one of the trickiest pieces to accomplish.

Back to the technology landscape: every new feature in a project brings with it a host of new choices and scenarios. Some will be embraced, and some will not. But we have to anticipate all of them.

I think this helps explain why some folks with many years in the field seem to have less confidence than those with fewer years about the ability to satisfy all the users and reach all the targets. Sometimes this sounds like: "computers were a mistake, it's all far too complicated." Other times it sounds like: "we'll do our best with the resources we have, but none of this comes for free without thought and consideration."

One is a bit jaded, the other hopeful yet guarded. I empathize with both. This plays out transparently in the field of video games. These hard-working, creative people literally create virtual worlds with virtual people that you control in amazing ways. The possibilities for the user are endless. For the developers and engineers, it's the potential work and refinement that seem endless.

But time is finite! And we have to say it's done enough and move on.

The team at CD Projekt Red did that with a game released last year called Cyberpunk 2077. By many accounts it was not done enough when it launched. Now they are preparing a big update to resolve a number of issues. I highlight this not to single them out -- any tech project of even modest sophistication could produce an update report like this one.

Fixed an issue where aiming while under the effect of the "Berserk" cyberware moved the crosshair with no input from the player.

Police vehicles will no longer immediately despawn after getting into Kerry's car during Rebel! Rebel!

Fixed an issue where grappled enemies played voice lines as if the player bumped into them.

"You failed to account for that?"

"That feature is totally broken in this scenario?"

I only mention this to put a spotlight on the level of sophistication involved in this game, and the team's attention to detail and commitment to making it better.