Skip to content

Low cognitive burden and discoverability

Gracjan Polak edited this page Feb 21, 2016 · 1 revision

Historically Haskell Mode provided a lot of functionality that:

  1. Was hard to discover.
  2. Even if discovered was easy to forget.
  3. Was hard to remember how to use correctly.

There are rules of thumb to follow to make it easier for users to remember and use functionality provided:

  1. Use default Emacs mechanisms whenever possible. Those are given and do not need to be discovered.
  2. Follow well accepted written or unwritten conventions.
  3. Follow parallels. For example if there is a set of keybinding with similar functionality try to devise a variation of that so that users can use their prior knowledge to remember new functionality.
  4. Use hyperlinking in docstrings.
  5. Functionality must be described in official Haskell Mode manual.
  6. Add visual screen casts to manual.
  7. In error messages hint how to proceed.