Surmonter le manque général de compétences en conception d'interface utilisateur chez les développeurs [fermé]


17

On m'a dit, et j'ai découvert par moi-même, que beaucoup de développeurs ne sont pas bons en conception d'interface utilisateur (je ne sais pas si c'est vrai) mais c'est vrai pour moi au moins .

Dans le développement Web, de bonnes compétences en développement de code ne suffisent pas sans de grandes compétences en conception d'interface utilisateur pour les accompagner.

Donc pour moi, et beaucoup de développeurs comme moi, qui n'ont que la moitié de la chose (bonnes compétences en développement), comment devrions-nous compléter notre autre moitié à part payer pour un designer?

L'utilisation de modèles Web Open Source avec peu de modifications est-elle la meilleure solution pour cela, ou existe-t-il d'autres options?


12
"En tant que personne UX avec de faibles compétences en développement, comment dois-je développer un site, sans payer un développeur?"
Steven Evers

Vous devriez voir ce sur quoi je travaille maintenant - catastrophe de l'interface utilisateur. Je ne pense pas que quiconque travaillant sur le projet ait jamais consulté les guides de conception d'interface utilisateur. Il en va de même pour mon projet précédent, seulement sur celui-là, j'ai forcé le problème et impliqué le graphiste, mais certaines parties du code qui étaient hors de mon contrôle étaient vraiment horribles.
Skizz

7
Embauchez un designer. C'est le seul moyen d'en être sûr.
SF.

1
Cette question est problématique. Vous pourriez tout aussi bien parler de surmonter le manque général de compétences en programmation chez les concepteurs.
Alex Feinman

Réponses:


11

Je suis un développeur qui n'est pas très doué pour le design. J'essaie de mon mieux, lorsque je travaille sur un projet où je dois faire de la conception, de garder les choses aussi simples que possible. J'adopte une approche et une conception très logiques uniquement pour l'expérience utilisateur. Je ne peux pas le rendre vraiment beau, mais je peux le rendre convivial et relativement agréable à l'œil.

J'ai lu plusieurs de ces livres: http://www.uxbydesign.org/2009/06/24/20-user-experience-books-you-should-own/ et ils m'ont vraiment aidé.

modifier mon préféré sur cette liste est Don't Make Me Think: A Common Sense Approach to Web Ergonomie, 2nd Edition par Steve Krug


Je ne sais pas pourquoi les développeurs ont l'impression qu'ils doivent être tout le temps pour tout le monde. Je suis déjà développeur, designer, architecte, analyste métier, support à la production et QA. Ce n'est toujours pas suffisant et je dois être DBA maintenant aussi.
maple_shaft

3
Eh bien, en tant que pigiste, vous devez soit avoir toutes les compétences vous-même, soit être obligé d'externaliser des parties d'un projet. Si vous êtes totalement incapable de faire quelque chose, alors tant pis, vous devez trouver quelqu'un d'autre. Mais si vous pouvez apprendre les compétences, pourquoi pas, et vous rendre capable de gagner plus et de devenir un développeur plus attrayant du point de vue des clients potentiels.
Sydenam

2
Je sais et je suis d'accord avec vous, je suis juste dégoûté de ce que devient l'industrie. Je suis entouré de gens qui détestent leur travail et qui sont surmenés, et qui ont une idée stupide qu'ils espèrent être les prochains Angry Birds et ils me demandent s'ils peuvent payer un Indien 6 $ / heure pour faire TOUT LE TRAVAIL et juste ouvrir source pour tout sans contribuer car l'open source est après tout GRATUIT. Ensuite, ils espèrent gagner des millions et quitter leur emploi. Ces détenteurs de mauvaises idées attendent de plus en plus et puis plus encore pour presque pas d'argent. Ça me rend malade.
maple_shaft

5

Le design (de tout) est une négociation entre les besoins des différentes parties prenantes (client, développeur, utilisateurs). Aucune des parties prenantes n'est généralement en bonne position pour créer le meilleur design car elle a tendance à mieux comprendre ses propres besoins et à les placer au-dessus des besoins des autres parties prenantes. Un bon concepteur peut identifier les besoins des différentes parties prenantes - souvent des besoins que la partie prenante elle-même ne réalise pas - et trouver une solution qui fonctionne pour tout le monde.

Vous l'avez probablement déjà vu plusieurs fois. Les utilisateurs réfléchissent à la façon dont ils doivent interagir avec un système, généralement en termes d'un autre système qu'ils connaissent déjà. Les développeurs pensent principalement en termes de fonctionnement du système. Les clients veulent généralement quelque chose qui résoudra tous leurs problèmes, ou bien ils veulent résoudre un problème très spécifique au moindre coût.

Pour devenir un bon designer, vous devez apprendre à arrêter de penser à la façon dont vous allez mettre en œuvre quelque chose. Au lieu de cela, vous devez vous concentrer sur ce que les autres parties prenantes vous disent sur ce dont elles ont besoin et ce qu'elles veulent, et vous devez être capable de lire entre les lignes. Comme les développeurs, les clients et les utilisateurs ont souvent en tête une solution préconçue et ils ont tendance à décrire cette solution au lieu des exigences sous-jacentes. (Cela dit, il est important de réaliser que parfois un client veut dire ce qu'il dit quand il vous dit exactement ce qu'il veut; si vous n'êtes pas sûr, demandez.)

Plus superficiellement, la conception esthétique d'une interface utilisateur est également quelque chose qui pose problème à certains développeurs. Je pense que c'est en partie parce que les développeurs de logiciels n'ont souvent pas beaucoup de formation en esthétique - les étudiants CS peuvent ne pas avoir beaucoup de temps pour les cours d'art. C'est aussi en partie parce que nous sommes plus intéressés par le fonctionnement de quelque chose que par ce à quoi il ressemble; peu nous importe que les coins d'un bouton aient un rayon de 9 pixels ou un rayon de 10 pixels. Ces deux facteurs sont certainement liés. Parfois, vous pouvez surmonter cela en vous appuyant sur des solutions prédéfinies sous la forme de cadres d'interface utilisateur, et l'utilisation de composants préconçus a l'avantage d'unifier visuellement votre propre travail avec d'autres applications sur le même système. Vous pouvez améliorer vos compétences esthétiques en lisant, en regardant le travail des autres, et en accordant une attention particulière aux détails visuels que vous auriez pu ignorer dans le passé. Vous devez également essayer de comprendre la logique derrière les différences visuelles: les boutons carrés signifient-ils quelque chose de différent des boutons arrondis? Comment la couleur est-elle utilisée? etc.


1
merci pour la réponse gr8 y a-t-il des ressources, des livres, des sites qui parlent de ce sujet: "logique derrière les différences visuelles: les boutons carrés signifient-ils quelque chose de différent des boutons arrondis? Comment la couleur est-elle utilisée? etc."
Ali

Soit dit en passant et par pure curiosité, les boutons à coins carrés signifient-ils quelque chose de différent des boutons arrondis? Est-ce que cela a été résolu sur l'UX SE, je me demande?
Sean Hanley

La couleur et les boutons arrondis sont une préoccupation graphique et n'ont vraiment rien à voir avec l'UX. Une meilleure question pour UX serait "que pense notre utilisateur de notre site avec le schéma de couleurs x par rapport au schéma de couleurs y" et le placement desdits boutons.
Nic

@Yadyn, cela dépend du contexte. La géométrie des boutons peut donner à l'utilisateur une idée de la fonction et du comportement: les boutons à coins carrés forment des groupes attrayants et fonctionnent souvent bien pour sélectionner des options ou des modes. Les boutons arrondis ne s'empilent pas si bien et indiquent souvent des opérations distinctes. Mais ces types de repères visuels n'ont de sens que s'ils sont utilisés de manière cohérente dans une application ou (mieux) sur une interface graphique entière.
Caleb

@melee, j'y arrive du point de vue du développement d'applications. Les interfaces sur le Web ont tendance à être beaucoup plus variées, et je conviens qu'il est plus difficile de faire valoir ce point dans ce contexte. Mais si vous avez pris une application de bureau typique sur le Mac et que vous avez dit "Les boutons bleus sont superbes - faisons en sorte que tous les boutons soient bleus!" vous créeriez beaucoup de confusion pour les utilisateurs, car les utilisateurs attachent un sens à la couleur et à la forme d'un bouton. Exemples ici (Apple HIG): tinyurl.com/6agv54v
Caleb

3

Voici certaines choses que je trouve m'aider:

  • Prenez note de ce que vous aimez / n'aimez pas dans d'autres logiciels. Nous sommes programmeurs, nous passons une grande partie de notre vie à l'ordinateur. Essayez de prendre note de ce que vous aimez / détestez lorsque vous utilisez un logiciel. Peu importe qu'il s'agisse de logiciels informatiques, de jeux vidéo, d'appareils mobiles, etc. essayez simplement de garder un œil sur ce qui est pratique et facile à utiliser, et ce qui ne l'est pas.

  • Trouvez un outil d'esquisse facile à utiliser pour esquisser l'interface utilisateur pour vous et vos utilisateurs. J'adore utiliser Balsamiq car il est rapide, simple et la version Web est gratuite.

  • N'oubliez pas que vous n'avez pas besoin de trouver quelqu'un qui se spécialise dans la conception de logiciels pour vous aider à concevoir quelque chose - n'importe quel utilisateur fera l'affaire. Je réalise souvent mes croquis par des personnes qui ne sont pas du tout liées au projet simplement parce que je sais qu'elles tournent autour des logiciels toute la journée et peuvent me dire si quelque chose semble correct ou convivial. Gardez à l'esprit qu'ils vous donneront souvent des idées folles sur ce qu'il faut faire, et vous devez savoir ce qui serait simplement «cool» à faire et ce qui améliorerait réellement la productivité.

  • N'hésitez pas à demander sur /ux// des questions détaillées


1
Bon conseil, bon outil
NoChance

2

Pour être honnête, la conception de l'interface utilisateur est tout ensemble une chose différente. Un développeur pense toujours à un design subtil et n'est pas trop créatif lorsqu'il s'agit de concevoir. Je pense que l'approche définitive est de garder un développeur différent pour la conception de l'interface utilisateur. Bien que cela augmente le coût, mais vous aidera certainement à obtenir de meilleurs résultats.

Pour quelqu'un qui fait les deux choses lui-même, ne donne jamais vraiment le meilleur résultat. Donc, à mon humble avis, ces deux aspects différents devraient être attribués à deux développeurs différents. Un peu de connaissance de HTML et CSS pour le skinning et le développement de thèmes est recommandé dans le cas de CMS différents, mais lorsque vous avez besoin de développer une conception entièrement nouvelle, consultez un concepteur d'interface utilisateur.



2

La conception de l'interface utilisateur n'est pas quelque chose de naturel pour beaucoup de gens. Cependant, je me suis récemment beaucoup amélioré en suivant quelques principes simples.

  1. Ne paniquez pas, ce n'est pas aussi difficile que vous le pensez.

  2. Modélisez d'abord la structure des données et votre moteur. Créez des modèles clairs et correspondant au monde réel. Évidemment, cela suppose que vous avez pris le temps de comprendre ce dont le client a besoin.

  3. Maintenant, avec une feuille de papier et un crayon, asseyez-vous et commencez à dessiner la disposition logique des écrans. Cela présente normalement simplement votre modèle de données à l'utilisateur de manière organisée. Votre objectif doit être simplement:

    une. Imitez l'environnement dans lequel l'application sera déployée. Par exemple, s'il s'agit d'une application Windows, elle doit se comporter comme une application Windows, si c'est une application Web, elle doit se comporter comme des applications Web similaires qui sont plus populaires que la vôtre.

    b. Votre objectif est de guider l'utilisateur à travers votre modèle de données d'une manière qu'ILS prédiraient. Une interface utilisateur est bien conçue lorsqu'un utilisateur fait quelque chose dans votre application et fait exactement ce qu'il attendait de lui.

    c. Cela prend du temps et c'est une courbe d'apprentissage, mais n'importe qui peut le faire.

  4. Ne vous souciez pas des graphiques, c'est-à-dire des boutons, des arrière-plans, etc ... votre seul objectif à ce stade est la mise en page logique de la page.

  5. Vous devez maîtriser la bibliothèque gui que vous utilisez, qu'elle soit html, gtk, cacoa, android, Windows.Forms et ainsi de suite dans la mesure où vous comprenez les mécanismes de gestion des événements, le moteur de mise en page et la récupération des entrées et de l'affichage Les données. Tout développeur devrait être en mesure de faire au moins cela.

  6. Il n'y a aucune honte à faire en sorte qu'un graphiste prenne la relève d'ici. Mais vous devriez au moins pouvoir passer l'étape 5. C'est 95% de la charge de travail pour l'application entière.

Voici un article utile qui m'a fait passer d'un pauvre concepteur de GUI à un bien meilleur concepteur de GUI.

http://www.joelonsoftware.com/uibook/fog0000000249.html


Bon conseil, mais je ne suis pas d'accord avec le point 2. J'impliquerais également davantage l'utilisateur dans les étapes ci-dessus.
NoChance

1
@Emmad Si vous considérez votre application comme une série d'opérations exécutées sur des données, le seul objectif de l'interface utilisateur est de fournir un moyen organisé de recevoir des entrées dans le modèle de données et d'afficher le modèle de données. La raison pour laquelle j'en ai mis 2 est parce que je trouve qu'après la modélisation des données, l'interface utilisateur se met en place. Je fais des entretiens approfondis avec l'utilisateur final pour savoir avec quel type de données ils veulent faire quoi? Telle est l'application. J'ai ensuite mis les trucs sur la page et je demande maintenant, comment voulez-vous que cela ressemble? Cela ne m'a jamais fait de mal.
Jonathan Henson

1
De plus, lorsque je laisse les graphistes dessiner le gui, cela se termine toujours par un désastre. Ils ne savent pas comment les données doivent être organisées et ils ne savent presque jamais ce qui est et ce qui n'est pas possible.
Jonathan Henson

Merci d'avoir expliqué, je suis d'accord avec vous que les graphistes ne sont pas chargés de la gestion de l'information.
NoChance

1

Vous pouvez également rechercher des exemples réussis de sites "similaires" pour obtenir des idées de mises en page, de graphiques et de conceptions. Avec un peu de peaufinage dans votre programme de peinture préféré, vous pouvez emprunter beaucoup d'idées et les faire vôtre. Ne copiez pas purement et simplement - ce n'est pas seulement de mauvaises manières, c'est probablement aussi illégal dans la plupart des cas.

Une fois que vous aurez emprunté plusieurs fois, vous commencerez à avoir une meilleure idée des conceptions de sites réussis, et vous connaîtrez également les outils pour créer ces conceptions (avec vos petits ajustements).


1

Avec l'introduction du HTML, créer un site simple et non laid est devenu un défi. Bien que vous ayez le concept, il faut plusieurs astuces, outils, graphiques prêts à l'emploi et connaissances CSS pour bien faire les choses. En outre, des techniques d'utilisation et d'autres facteurs humains influençant le processus de conception sont nécessaires pour produire des pages à l'aspect net.

Les développeurs passent la plupart de leur temps à se battre pour apprendre des langages complexes, POO, ORM, SQL, T-SQL, etc. Ils investissent également rarement dans des outils pour créer des sites Web (la plupart sont chers).

En conséquence, de nombreux développeurs souffrent de leur incapacité à produire de superbes pages Web. Je crois que si vous apprenez les outils nécessaires, vous pourrez également créer de bonnes pages.

Il est également important de connaître votre rôle dans le processus de développement d'applications. Vous trouverez peut-être que la conception de sites Web est agréable d'avoir des compétences plutôt que d'être une compétence obligatoire. Dans les grands projets, cela ne devrait pas être une tâche de programmeur pour les raisons mentionnées ci-dessus au moins.

J'ai trouvé que cet outil est un excellent outil, il peut vous aider:

Artisteer

Jetez-y un œil et essayez la démo, c'est vraiment bien.


1

encore en développement web de bonnes compétences en développement ne suffisent pas sans de grandes compétences en conception

Je ne sais pas si cette affirmation est vraie, je pense que cela dépend de l'endroit où vous travaillez.

Par exemple, une petite entreprise vous demandera probablement d'être plus flexible avec vos compétences, tandis qu'une grande entreprise pourrait ne pas avoir les mêmes attentes et vous pourriez en fait passer tout votre temps à développer pendant qu'une équipe de conception travaille sur la conception.

Microsoft a en fait mis à jour son ensemble d'outils pour mettre en évidence la nette séparation entre les développeurs et les concepteurs. Ils ont introduit Expression Blend avec WPF, ce qui signifie maintenant que le développeur peut travailler sur les fonctionnalités d'un logiciel et que quelqu'un d'autre peut en faire la conception. Ils utilisent tous deux des outils différents, ils peuvent tous les deux travailler sur le projet en même temps mais l'un fait la fonctionnalité et l'autre la conception.

Le développeur spécifie les points de données et le concepteur les affiche.


merci, j'y pensais en le faisant sans équipe tout en le faisant en freelance seul!
Ali

Certainement pas vrai avec une grande entreprise. Il a des équipes de conception et de développement distinctes, et les deux n'ont besoin que d'une connaissance minimale les unes des autres (savoir ce qui est possible, savoir ce qui est cassé).
SF.

1

N'oubliez pas que le design peut également être testé, pas seulement le code. Commencez simplement, essayez votre conception sur un petit groupe de personnes, enregistrez leurs commentaires et continuez à partir de là. Cela peut vous aider à identifier les problèmes avec votre conception et vous donner des idées sur ce qui pourrait / devrait être fait différemment. Révisez ensuite la conception et répétez.


0

Vous devrez juste le simuler et copier d'autres conceptions. Évitez tout ce qui est sophistiqué, à l'exception d'une ou deux fonctionnalités qui seront un avantage majeur pour les utilisateurs. Suivez quelques pratiques de base pour limiter les polices, les couleurs et l'encombrement.

N'ayez pas peur de poster des questions sur UI.stackexchange.com


+ 1- bon point sur la limitation des couleurs, etc. La marque de l'interface utilisateur d'un programmeur est généralement un fond bleu néon avec une étiquette clignotante autour de tous les boutons et une étiquette de marque autour de tout le reste. Les sites Web attrayants utilisent les valeurs par défaut (fond blanc, polices normales, etc.) à 90%, avec quelques écarts sympas.
Morgan Herlocker

0

Même si ce n'est pas votre domaine d'expertise, je pense qu'il est toujours intéressant d'étudier comment créer des interfaces utilisateur. De nos jours, la plupart des pages Web sont très dynamiques et la connaissance de certaines compétences de l'interface utilisateur serait certainement utile lors de la création de composants et de définir leurs interactions avec les éléments de votre page. Je viens d'un arrière-plan de développement uniquement backend et j'ai été surpris de voir à quel point la création d'interfaces est impliquée.

Il y a un très bon livre que j'ai lu sur la conception web et qui s'adresse aux développeurs:

Conception Web pour les développeurs: http://pragprog.com/book/bhgwad/web-design-for-developers

C'est un livre facile à lire qui touche toutes les phases lors de la création d'interfaces: de l'esquisse simple et du prototypage d'interfaces utilisateur à la création de conceptions avec HTML + CSS.

Pour améliorer davantage vos compétences d'interface utilisateur, je recommande également le dernier screencast de PeepCode avec Ryan Singer: http://peepcode.com/products/ryan-singer-ux


0

Je pense que prendre quelques notions de base en UX / UI / graphiques / typographie est certainement une entreprise précieuse. Bien sûr, vous ne pouvez pas toujours avoir une équipe de spécialistes "bien équilibrée". Souvent, les gens doivent porter plusieurs chapeaux. Un bon développeur verra la valeur de passer du temps à apprendre des choses en dehors de son domaine et devrait être en mesure de reconnaître au moins un bon travail dans la conception.

Cependant, il y a quelque chose à dire sur ce que font les designers. Un développeur ne peut que faire beaucoup dans le domaine du design (certes certains plus que d'autres). En particulier, les grands projets destinés au public qui dépassent un créneau étroit bénéficient grandement en employant de vrais professionnels de la conception. Et je ne parle pas simplement des gens qui peuvent se déplacer autour des codes de couleur CSS et HTML. Je veux dire des gens qui ont passé des ANNÉES à étudier des choses comme la typographie, qui ont lu et compris le livre de Josef Alber sur la couleur , qui peuvent faire de beaux croquis avec du charbon de bois en ruine sur du papier journal. Ce sont des compétences précieuses et les projets qui reconnaissent cela et qui peuvent mettre ces compétences à un usage ciblé ont un avantage certain sur la concurrence.

Cela dit, il existe certains domaines dans lesquels les concepteurs et les développeurs peuvent chevaucher leurs compétences. Surtout UX et son sous-domaine, UI. Je recommande ...


0

Embauchez un pro.

Sérieusement, les interfaces utilisateur des développeurs ont une terrible réputation. Ce n'est pas parce que les développeurs sont inférieurs à la moyenne lors de la conception, mais plutôt parce que les développeurs sont inférieurs à la moyenne lorsqu'ils demandent de l'aide.

Un développeur a tendance à relever tous les défis numériques qui se présentent à lui.

(J'ai été développeur professionnel pendant 10 ans et ma femme est designer d'interface utilisateur depuis 20 ans)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.