Constraints Are The Best

We live in a fantastic time. We now have more processing power in our watches than we used to have on our desks or even in giant server rooms.

But the lack of constraints has made us lazy.

I’ve been an engineer for most of my career. When I first started coding, we had to learn how to code in a minimal amount of memory. We had to continually find new ways to sharpen our code, refactor it to run faster and tighter, in smaller and smaller spaces. We used to have competitions to write our software in the fewest lines possible, playing tricks with the code and honing it down as much as possible.

The memory and processing constraints forced us to learn how to code well, eliminating any extraneous code, and focus on the core of what the code was trying to accomplish. It was like parking an Escalade in a compact parking spot – we had to do it with precision.

A coder today does not have any of those constraints. Processing power, memory, and storage are practically infinite. You can slap-dash almost anything together code-wise, and it will work. Code has become fat and lazy, and extraneous stuff is just thrown in for “effect’.

It’s the same with books. Have you noticed that since writers have moved from typewriters to computers, the size of books has ballooned? One needs to look at the difference between the first Harry Potter book and the last, one likely written on a typewriter and proofed on paper, and the previous written on a powerful laptop with no constraints. Which story is better?

One could argue that constraints force you to be good. To be spare and lean in your creation process. If anything goes, then very little of quality is produced.

Did you submit better papers in college when you had two weeks to do it in one week or a day? I’ll bet its the latter.

The truth is: you need constraints to produce your best work. No matter what it is. If there are no real constraints – you create them.

Even though you’d think that with something like a design thinking brainstorming session, we’d be pretty free and open, we are, with the ideas. But the process is strict.

We enforce a ton of constraints in our design thinking ideation sessions. We keep a strict time for each section of the session. We allow both individual and group creativity. We don’t let people explain their ideas. We enforce the “one idea per sticky” rule. We don’t allow “minusing,” only “plussing.” We will kick people out who perform “adversarial ideation” and tell them to come back during the “test” module (where we put the prototypes through their paces).

In our view, constraints are essential to do your best work. Without restrictions, you don’t get the best solutions, just the laziest. Constraints force you to think through the actual how of getting through the maze to get to the prize because it’s never a straight line.