Long journey of Ruby standard library at RubyConf AU 2024
Design rule 31
1. Design rule 3
•Allowing users to be in control of the
software
•Application of corollary 1
•User should control the software instead of
software controlling the user
2. Ways to put users in control
• Making the interface forgiving
• Make the interface visual
• Provide immediate feedback
• Avoid modes
• Make the interface consistent
3. Making the interface forgiving
• Users action must be reversible
– Physical(pointing to wrong command)
– Mental(wrongly deciding to select data or
command)
4. Make the interface visual
• Interface must provide list of items, instead of
users to remember all choices
6. Avoid modes
• Modes force the user to focus on the ways An
application works, instead of on the task they
want to complete
• Some of the modes
– Modal dialog
• Sometimes an application needs information to continue,
such as name of a file into which users want to save
something
– Spring loaded modes
• Users must take same action to remain in that mode
• Ex: dragging mouse
– Tool driven modes