v hyper.dev · dx - 1 - code crafting codex

A problem can have several solutions. A solution can have different implementations each of which with their own strengths and weakness in terms of space, time and generality.

The goal of a code experience design is to optimize the cognitive effort required to understand, learn and use. Otherwise said, code usability aim to improve ease.

While looking for ease, one might trade it over expressive power.

Crafting an experience requires to understand the cognitive load associated with the production. Cognitive load theory has been designed to provide guidelines intended to assist in the presentation of information in a manner that encourages learner activities that optimize intellectual performance.

Here is some of those guidelines:

  1. People learn more effectively when they can build on what they already understand;
  2. Take advantage of schemata;
  3. Take advantage of visual thinking and other non-verbal thought;
  4. The average person can retain only seven five chunks of information in short-term memory;