Permettez-moi de le dire directement:
L'amélioration sur ce ne commence pas par des lignes directrices. Il commence avec un recadrage de la façon dont vous pensez de vous logiciel.
Les plus hardcore développeurs ont pratiquement zéro empathie avec les utilisateurs de leur logiciel. Ils ont aucune idée de la façon de penser des utilisateurs, comment les utilisateurs à construire des modèles de logiciels qu'ils utilisent et comment ils utilisent un ordinateur en général.
C'est un problème typique quand un expert en collision avec une des laïcs: Comment sur terre pourrait une personne normale être si stupide de ne pas comprendre ce que l'expert entendu il y a 10 ans?
L'un des premiers faits de reconnaître qui est incroyablement difficile à saisir pour presque tous les développeurs expérimentés est ceci:
Les gens normaux ont une très différent du concept de logiciel que vous avez. Ils n'ont aucune idée que ce soit de la programmation. Aucun. Zéro. Et ils n'ont même pas de soins. Ils ne pense même pas qu'ils doivent prendre en charge. Si vous avez de la force, ils vont le supprimer de votre programme.
Maintenant que c'est incroyablement difficile pour un développeur. Il est fier de le logiciel qu'il produit. Il aime toutes les fonctionnalités. Il peut vous dire exactement comment le code derrière elle fonctionne. Peut-être qu'il a même inventé un incroyable algorithme intelligent qui fait travailler 50% de plus qu'avant.
Et l'utilisateur n'a pas de soins.
Quel idiot.
De nombreux développeurs peuvent pas supporter de travailler avec les utilisateurs normaux. Ils sont déprimés par leur non-connaissance actuelle de la technologie. Et c'est pourquoi la plupart des développeurs timide loin et pense que les utilisateurs doivent être des idiots.
Ils ne le sont pas.
Si un développeur de logiciel achète une voiture, il s'attend à ce que, sans heurts. D'habitude, il ne se soucie pas de la pression des pneus, de la mécanique fine-tuning, c'était important de le faire fonctionner de cette façon. Ici, il n'est pas l'expert. Et s'il achète une voiture qui n'a pas de réglage fin, il vous le donne en arrière et en achète un qui fait ce qu'il veut.
De nombreux développeurs de logiciels comme des films. Bien fait des films que de stimuler leur imagination. Mais ils ne sont pas des experts dans la production de films, dans la production d'effets visuels ou dans la rédaction d'un bon film de scripts. La plupart des nerds sont très, très, très mauvais à l'action parce que c'est à propos de l'affichage des émotions complexes et peu sur google analytics. Si un développeur montres un mauvais film, il vient d'avis qu'il est mauvais. Nerds ont même construit IMDB de recueillir des renseignements sur les bons et de mauvais films, de sorte qu'ils savent lesquels sont à regarder et qui à éviter. Mais ils ne sont pas des experts dans la création de films. Si un film est mauvais, ils vont pas aller au cinéma (ou de ne pas le télécharger via BitTorrent ;)
Donc ça revient à faire: Fuir les utilisateurs normaux comme un expert de l'ignorance. Parce que dans ces domaines (et il y en a tellement) où ils ne sont pas des experts, ils s'attendent à des experts d'autres domaines ont déjà pensé à des gens normaux qui utilisent leurs produits ou services.
Que pouvez-vous faire pour y remédier? Le plus hardcore que vous êtes en tant que programmeur, moins ouvert, vous serez à l'utilisateur normal de la pensée. Il sera exotiques et désemparés. Vous allez penser: je ne peux pas imaginer comment les gens pourraient jamais utiliser un ordinateur avec ce manque de connaissances. Mais ils peuvent. Pour chaque élément de l'INTERFACE utilisateur, penser: Est-il nécessaire? Correspond-il à la notion d'un utilisateur a de mon outil? Comment puis-je lui faire comprendre? Veuillez lire sur la convivialité pour cela, il y a beaucoup de bons livres. C'est tout un domaine de la science, trop.
Ah et avant de vous le dire, oui, je suis un fan d'Apple ;)