Ne faites pas perdre le travail à l'utilisateur.
C'est plus difficile que ça en a l'air ... le travail ne consiste pas seulement en "données dans un fichier" ... c'est tout le temps que l'utilisateur a consacré à votre logiciel.
Par exemple, si l'utilisateur remplit votre formulaire de 30 champs avec 29 éléments valides et un élément invalide, n'effacez pas toutes ses données valides pour se plaindre du 1 invalide (heck, n'effacez même pas l'invalide. peut-être est-il long et nécessite-t-il une correction mineure, ou l'utilisateur ne se souviendra plus de ce qu'il était avant si vous l'effacez)
Un exemple non évident mais important est ce que Windows et pratiquement tous les autres logiciels de "gestionnaire de fichiers" se trompent ... si je passais une demi-heure avec soin à appuyer sur Ctrl-clic pour sélectionner un ensemble de fichiers et que je cliquais accidentellement au lieu de Ctrl-Click, il ne devrait pas effacer tous mes fichiers précédemment sélectionnés, ce qui me fait recommencer.
Un autre problème auquel ils se sont trompés ... si je frappe accidentellement sur Ctrl-A (au lieu de Ctrl-S juste à côté), cela ne devrait pas perdre ma place dans le fichier et mettre le curseur au début ... j'appelle trouver le bon endroit dans le fichier "travail" que le programme a "perdu".
Encore un autre: le dialogue "commit" de TortoiseSVN a une longue liste de fichiers. Avant de cliquer sur "Commit", vous pouvez descendre dans la liste des fichiers, en double-cliquant sur chacun d'eux pour voir ses modifications dans une 2ème boîte de dialogue. Pour faire cela rapidement, j'utilise parfois uniquement le clavier, en appuyant sur <Esc>
pour fermer le deuxième dialogue et revenir au premier. Si je frappe accidentellement <Esc>
deux fois, la première boîte de dialogue se ferme, ce qui me fait oublier le fichier que je préparais.