goals: runtime

Given other things equal, we'd like quick launch, perfect state reset, and resilience to bad or missing data.

Take time to plan the different parts:

Default state

What does a blank project look like?
How to reset to defaults?


sync and enhanced data underpin organized state capture, which in turn enables launch state, recovery from crash, and undo/redo.

ease of use

Minimal mouse travel, minimal keystrokes, minimal back-and-forth. This, like shorthand, is one of few objectively measurable quantities.

Also measurable is high screen-area utilization, though clear presentation is subjective.


Bim: I crashed my car.
Reader: Time for a reboot!

Software is more forgiving. Your system should give you a call stack, pointing you to short functions.

A controlled crash-landing via tests is even better. Time spent hunting should be spent fixing-- leave signposts. 2017 [171108]