DEV Community

Discussion on: All Glory to the Principle of Least Astonishment! ❤

Collapse
 
phlash profile image
Phil Ashby • Edited

Yay! Thanks for the excellent advice! I used to apply PoLA a lot in my day job (now retired!), and had a nuance to relate, something that you allude to with the JS example - astonishment depends on the audience - it's not a facet of the behaviour itself but the observer's expectations. As such it's useful to identify the group(s) of people you are trying not to astonish, and what would surprise them, through user/UX testing, and working through stories / scenarios when forming behavioural (large scale) requirements. Frequently, a development team's idea of 'common sense' doesn't match the customers (cf: Javascript's designers vs. confused users!)

Clashes of expectations I have noticed:

  • the GIMP UI - almost universally hated
  • Many web forms that assume internal knowledge of abbreviations or formatting
  • 'Fancy' GUI programs that take over the system/window-manager owned controls (cf: Word, Chrome, etc.)
Collapse
 
atomicstan profile image
Stan Prokop

I've never actually thought about Word and Chrome this way, but thanks to you I realized that these are really great examples. In context of any operating systems and their look and feel they don't really fit into any system known to humanity.