Photo by Adi Goldstein on Unsplash

Carlos’ Law

Engineering Insights

Talin
Published in
5 min readAug 27, 2021

--

Part of the reason I became a software engineer is because of an interest in electronic music as a teenager. I built a number of hobby synthesizers in the mid-70s, and that got me into electronics, and eventually, programming.

In this, I was inspired by many of the early pioneers of electronic music — Larry Fast, Jean-Michel Jarre and Wendy Carlos, whose debut album Switched-On Bach album was a turning point in the history of electronic music, topping the Billboard charts at number 10 and winning several Grammy awards, at a time when almost no one knew what a synthesizer was, or had ever heard the term “electronic music”.

However, these days when I think of Wendy Carlos, I tend to think of another of her useful inventions, a succinct and witty little aphorism known as Carlos’ Law:

Whatever parameter you can control, you must control.

What does this mean? Well, imagine for a moment your are behind the wheel of a car. There are a number of controls available to you — “parameters” that you can adjust. You have a steering wheel to control direction, accelerator pedals and brakes, an ignition switch, turn signals, and gear shift control. You also have various controls for air conditioning and heat, radio frequency and volume, windshield wipers and so on.

Now, imagine what happens if you fail to adjust any of these controls in the proper way. If you let go of the steering wheel, the car may careen off the road and crash; if you press on the brake or accelerator pedal at the wrong time, the consequences may be equally catastrophic.

Of course, not all of the controls are quite so critical, but there are still negative consequences for having them adjusted improperly — the music can be too loud or too soft, the air conditioning too hot or too cold, the windshield wipers going when there’s no rain and so on.

Thus, in order to have an optimal or even mildly pleasant experience driving, each of the parameters under your control must be set properly. Failure to control any of these parameters will lead to undesirable outcomes of varying severity.

The same is even more true for a complex instrument such as a Moog synthesizer, which has hundreds of knobs and switches, as well as patch cables connecting modules together. These too must be configured properly in order to get a desirable sound output.

(Of course, in a modular synth, not every knob or switch is wired into the current patch. Some knobs may have no effect if they are not connected, but the general principle still holds — a knob which is not connected to an active circuit is effectively a parameter that you can’t control. Alternatively, the “control” is the decision whether or not to connect it in the first place. In either case, this does not disprove the rule.)

Or take for example a 747 cockpit, which has a daunting number of controls:

How comfortable would you feel flying in a 747 where the pilot only checked the state of half, or even a quarter of those settings? I certainly wouldn’t.

When we look at these kinds of “user interfaces” and apply Carlos’s Law, we quickly come to a realization — the more parameters that we offer to the user, the greater burden becomes for setting those parameters correctly.

Obviously, we want to give users some control — reducing the number of parameters to zero (in other words, making everything automatic) has its own set of frustrations. But finding the right balance can be difficult, and is often a problem of art rather than science.

I tend to think of the Apple iPod as the polar opposite of the 747 cockpit:

I don’t need to point how how simple and clean this design is. And while it only has 5 physical “buttons” (6 if you count the touch wheel), those control more than 5 “parameters” because the function of the buttons alters based on where you are in the navigation hierarchy.

The point here, though, is that not many people can operate a 747. But just about anyone can use an iPod with little or no training.

Now, here’s a trick question: we know which of these devices (747 and iPod) is easier to use. But which is easier to design?

I can only tell you what I have observed in my years of experience, which is that simple user interfaces are much more difficult to design than complex ones. It’s less work to design something like 747 cockpit than it is to design something like an iPod.

After all, it’s pretty easy to add yet another gauge or lever to an already complex design. Just make some room on the side and stick it in there. (I’m reminded of those TV remote controls with 50 buttons!)

But making something as simple as an iPod requires some serious brain work. It means thinking about the problem in entirely new ways, combining concepts, forging new abstractions and testing, testing, testing…to make sure that your “simplification” doesn’t go over users’ heads.

When I see an overly-complex user interface design, I tend to think that there’s a designer out there that simply didn’t try hard enough — or wasn’t given enough time. And I also tend to think that, by virtue of Carlos’ Law, the designer is doing their customers a great disservice by burdening them with a lot of unnecessary choices.

A similar sentiment was expressed by the French writer Antoine de Saint-Exupery, who once said that in producing a creative work:

Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.

Make no mistake, “taking away” is not a trivial undertaking! Although we often say that “it’s easier to destroy than create”, to remove elements from a design without destroying it is often much harder than either!

In any case, I hope you enjoyed this rather lengthy essay — if I’d had more time, I would have written you a shorter one!

See Also

--

--

Talin
Machine Words

I’m not a mad scientist. I’m a mad natural philosopher.