Software Performance and Thinking

  • when a tool is fast (very fast) it becomes extension of thinking
  • I suspect there's something similar happening here to how mind extends over the hammer/pencil held in hand, and the mind merges the two together
    • thinking by writing makes it easy to think, as there's very small latency to putting things on paper / in text buffer - you don't think about the tool/medium, you think thoughts and use the tools to put them in writing
  • that's why CLI/REPL interfaces usually feel better - they give immediate feedback (cli ux)
    • sidenote, but it's sad that we still can't build fast UIs in 2020
  • Andy Mathuschak mentions performance being important for digital reading:

    Skillful reading is generally non-linear, but digital reading experiences often make rapid scanning and referencing more painful simply by being slow.

    • I suspect this is relevant not only for reading
    • when is non-linearity needed in interacting with software?
      • timelines (audio/video) are one solution
      • history of changes is not tackled well - I want a graph with previews, not undo/redo stack
      • just being able to "scroll back" to see past result - possible in CLI, but not in UI
  • reference: slow software