Per­sua­sive tech­nolo­gies are those which are designed to change the atti­tudes or behav­iours of users. Error­proof­ing, on the oth­er­hand, is con­cerned not with behav­ioural change, but in ensur­ing cer­tain behav­iours are met.

Error­proof tech­nolo­gies, then, are those which “[make] it eas­ier for users to work with­out mak­ing errors, or [that make] errors impos­si­ble in the first place”.

Dan Lock­ton of the excel­lent Design with Intent com­piles a list of eight design pat­terns for error­proof­ing a sys­tem:

  • Defaults
  • Inter­locks
  • Lock-in/out
  • Extra steps
  • Spe­cialised affordances
  • Par­tial self-correction
  • Por­tions
  • Con­di­tional warnings