Comment les programmeurs peuvent-ils améliorer leurs compétences UX? [fermé]

17

En tant que programmeurs, nous pouvons résoudre des problèmes très complexes, mais lorsque nous devons concevoir une interface utilisateur, nous avons tendance à échouer à les rendre faciles à utiliser.

Dans les petites entreprises, ils ne peuvent pas se permettre d'avoir des concepteurs et des experts UX, les programmeurs doivent presque tout faire dans le logiciel. Mais ces interfaces sont rarement intuitives ( l'exemple classique ).

Quel est le problème? Comment les développeurs peuvent-ils améliorer leurs compétences dans la conception de bonnes expériences utilisateur?

jmservera
la source
7
Nous? Avez-vous une souris dans votre poche? Veuillez ne pas regrouper tous les développeurs dans cela, car franchement, ce n'est pas seulement faux, mais les développeurs sont certainement meilleurs pour créer des interfaces graphiques que votre non-développeur typique qui sort de la rue.
GrandmasterB
1
Je pense que vous constaterez que cette bande dessinée échoue à la comparaison avec de nombreux autres produits qui ne sont pas la recherche google.com ou l'iDevice. Les première et deuxième images de la bande dessinée représentent une communication à sens unique. Le troisième ne l'est pas. Tous les 3 sont exagérés.
Steven Evers
2
@GrandmasterB, ne le prenez pas si au sérieux. J'ai quand même édité le titre pour éviter une généralisation excessive.
jmservera
@SnOrfus, par exemple, l'interface adwords de Google est carrément pénible.
GrandmasterB
FYI: J'ai trouvé une question similaire sur le site de l'interface utilisateur: ui.stackexchange.com/questions/1863/…
jmservera

Réponses:

9

J'ai rencontré ce problème à plusieurs reprises au cours de ma carrière - l'astuce consiste d'abord à être conscient qu'il s'agit d'un problème et à le reconnaître. Une fois que vous avez fait cela, il est plus facile d'arrêter de créer des interfaces trop complexes.

L'interface utilisateur fait également partie de l'ingénierie logicielle, mais peut-être pas pour beaucoup d'ingénieurs logiciels autant intéressante. Cependant, il existe de nombreux défis intéressants liés à cela, et ils peuvent probablement être aussi intéressants que des défis plus techniques, selon mon expérience.

Convivialité, conception de l'expérience utilisateur (UX), interaction homme-machine (HCI) - ce n'est pas magique et cela fait partie du processus de développement logiciel.

Mon conseil est de:

  • reconnaître vos limites
  • demander et écouter les gens qui prétendent savoir ces choses
  • en cas de doute, recherchez-le sur Google et recherchez des réponses faisant autorité

En suivant ces principes simples au fil des ans, j'ai en fait accumulé des informations utiles sur la façon de créer des interfaces utilisateur, comment les gens interagissent avec les logiciels et comment ils pensent quand ils les utilisent. Je ne suis en aucun cas un expert, mais j'en sais probablement un peu plus que votre programmeur moyen.

Tl; dr: KISS

Vetle
la source
Certaines personnes se soucient naturellement de l'interface utilisateur simple; d'autres pourraient s'en moquer et ne veulent pas perdre leur temps.
Job
6

C'est biologique.

  • L'interface utilisateur et toutes les autres tâches liées à la conception impliquent le cerveau droit .
  • La tâche de programmation implique le cerveau gauche .

Ils ont des objectifs différents.

Il est très rare d'être bon dans les deux. Au moins en même temps.

cerveau

MISE À JOUR: J'ai récemment appris qu'il existe d'autres facteurs tels que l'expérience. En plus de certains facteurs héréditaires, vous développez des capacités mentales en fonction de la façon dont vous êtes déclenché dans votre enfance. Par exemple, les enfants maltraités sont en moyenne plus créatifs que le groupe témoin car ils apprennent à se déconnecter de leur horrible réalité dans les rêves.

Stephen C
la source
1
Pouvez-vous soutenir "Il est très rare d'être bon dans les deux. Au moins en même temps." avec des études / articles qui le disent?
c_maker
6
"De larges généralisations sont souvent faites en psychologie populaire à propos d'un côté ou de l'autre ayant des étiquettes caractéristiques telles que" logique "ou" créatif ". Ces étiquettes doivent être traitées avec soin; bien qu'une dominance latérale soit mesurable, ces caractéristiques existent en fait dans les deux côtés, et les preuves expérimentales fournissent peu de soutien pour corréler les différences structurelles entre les côtés avec des différences fonctionnelles. " Tiré de l'article de wikipedia en.wikipedia.org/wiki/Lateralization_of_brain_function
c_maker
De plus, cela ne répond pas du tout à la question, à moins qu'il ne réponde «Quel est le problème?». Cette réponse suggère que vous ne pouvez pas être bon dans les deux, ce qui n'est pas vrai du tout. Ce peut être une ER difficile parce que les gens n'ont pas assez de pratique, mais ce n'est pas difficile.
c_maker
@c_maker: malheureusement, tous mes cours de psychologie sont en français. Mais je peux mentionner les études qui y sont mentionnées: Gazzaniga 1976, Sperry 1968, Zaidel 1975.
Bien que je respecte le fait que vous puissiez soutenir votre argument, je dois dire que ces dates remontent à très longtemps. Beaucoup a changé depuis. Nous en savons encore très peu sur notre cerveau, mais nous en savions beaucoup moins à l'époque.
c_maker
4

Je suppose que vous pourriez discuter de la façon dont les programmeurs et les concepteurs ont des mentalités différentes ou des personnalités différentes, ou discuter du cerveau gauche contre le cerveau droit et de la créativité contre la logique, mais en réalité, il y a trois problèmes fondamentaux:

  1. Le travail des programmeurs est leur logiciel. Ils s'en soucient; ils y consacrent leur attention; ils peuvent s’exciter. Le travail des utilisateurs est autre chose ; le logiciel est seulement un outil pour faciliter à faire autre chose, et ils veulent passer moins de temps que possible y prêter attention afin qu'ils puissent se concentrer plutôt sur ce qu'ils font se soucient. Tant que les programmeurs ne comprennent pas cela, ils vont faire les mauvais compromis dans la conception de l'interface utilisateur. (Pour en savoir plus sur ce sujet, voir «Contrôler votre environnement vous rend heureux» de Joel Spolsky ou «Lois fondamentales» de David S. Platt .)
  2. Les programmeurs connaissent intimement leur logiciel. Ils sont à l'aise avec ses détails et sa complexité; ils comprennent pourquoi il agit comme il le fait parce qu'ils en ont un modèle mental complet. Les utilisateurs n'ont pas l'occasion (ou l'intérêt; voir le point # 1) d'apprendre tous les détails, et il leur est impossible d'avoir un modèle mental complet car ils n'ont pas accès ou ne comprennent pas le code source. (Pour en savoir plus sur l'importance des modèles mentaux, vous pouvez peut-être lire Le design des choses de tous les jours de Donand Norman ; bien qu'il ne soit pas spécifique aux ordinateurs, c'est un bon livre sur la conception d'interfaces.)
  3. Les compromis des programmeurs sont différents de ceux des utilisateurs. Un programmeur peut facilement décider de laisser une fonctionnalité trop complexe ou seulement semi-automatisée ou autrement moins utilisable parce que pour le programmeur, il est plus facile de faire face au manque d'utilisation que de la coder correctement. L'utilisateur ne se soucie pas (beaucoup) des efforts qu'il faut au programmeur pour le coder correctement et préfère qu'il soit entièrement utilisable.

Le troisième problème peut être résolu en ayant suffisamment de discipline pour ne pas emprunter la voie facile. Je ne suis pas sûr que les deux premiers problèmes soient résolubles; plus vous êtes proche de votre travail, plus il est difficile de le voir comme un étranger. C'est pourquoi les tests d'utilisabilité - même des choses simples et informelles comme attraper quelqu'un dans le couloir et le placer devant votre application - sont si importants.

Josh Kelley
la source