Humane Development Guide
from the PagodaCMS developers
As we developed Pagoda, we took notes on all the Humane features that we could describe and generalize. This is not an exhaustive list of the Humane features in Pagoda, this are just the ones we can generalize to other software. When creating this document, we discovered that for some of the Humane elements of Pagoda (like our color schemes) we weren't able to generalize. Please note that this guide only applies to the end-user interface. Installing Pagoda, creating sites, etc. counts as system administration, which this guide does not apply to.
Entice!
- "User Accounts" control panel text lists how many Users and Groups have been defined, subconsciously reminding people of what this feature does, and enticing them to click on it with these additional links that contain familiar text.
- Nice Big Buttons!
Use The Familiar
- No plugin system called "mambots", just call them "plugins" because people are familiar with the name.
- New features don't get included unless the concept and especially the name will intuitively make sense to people. In Pagoda, we have "Attachments" and "Placeholders" - we do not have "Portlets", "Mambots", "Snippets" etc.
Allow Shortcuts
- Let people publish things immediately, and skip the workflow if they have the permission to do so.
- Let people make new pages in just one or two clicks that don't require post-backs. Call the new page "untitled". This adds to the feeling of speed in the interface.
No Hidden Things
- No little 16px icons you have to hover-over to figure out their use
- No right-click menus (people have no reason to think something can be right-clicked on)
- No adaptive menus (menus that re-order based on how much you click them). Think they died with Microsoft's "live menus" or whatever they were called? Check out google docs - it reorders your docs into different sections based on when you last opened them. This freaks me out!
- Don't make a complex interface and then categorize actions into "Groups" so as to make it look less complex. Just design a simple interface!
Misc
- Don't try to merge the admin interface into the website (plone, phpnuke, mambo, others). It makes it harder to make templates, harder to go between different sites and find the management interface, etc.
- Don't use "are you sure" when you want "undo"
- Avoid "mode errors" - make sure people know when they're in Edit vs Live mode!
- No monolog / dialog boxes. People are too used to just making them go away, they don't get read!
