Coding Is Designing

Code isn’t just a way to implement a design, it’s a way to find one.

With an interface, you have to use it, feel it, interact with it, and poke at it to see the relationships between things.

Change X, see Y react.

If it doesn’t feel right, tweak it.

Change X again, now Y reacts differently.

Better.

Keep tweaking — this here, that there, until the relationships of all the disparate elements fall into place as a single whole.

Balanced.

Design is “how it works” and code is the tool to specify how it works.