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:
Repeat!
home.