Je suis concepteur UI/UX et je travaille pour une start-up créant une application Web au service d'un public cible spécifique. Bien que cela ne soit pas nécessaire pour mon travail, j'essaie de m'enseigner moi-même JavaScript et j'aimerais que certains des experts JS là-bas me disent comment la connaissance de JS pourrait aider un concepteur UX et à quel égard. De plus, je me demande à quel point il serait difficile de s'y familiariser étant donné que j'ai quelques connaissances de base en jQuery et ActionScript3.
La raison la plus importante pour apprendre Javascript est de pouvoir construire ce que vous concevez. De nombreux concepteurs d'interaction abordent leur travail d'un point de vue visuel, ce qui a bien fonctionné au cours de la dernière décennie, mais à mesure que nous entrons dans une ère d '"applications Web" où l'interactivité riche est de plus en plus importante, il est essentiel de pouvoir saisir quel type de le comportement est possible dans le navigateur.
Il est également fondamental que vous puissiez modéliser, dans les moindres détails, le fonctionnement de certaines interactions pour les utilisateurs. Cela ne sera pas possible si vous ne connaissez pas Javascript (ou une bibliothèque JS vous permettant de le faire, comme jQuery). Et vous ne voulez pas laisser les décisions d'interaction détaillées qui affectent fondamentalement l'expérience utilisateur à un développeur front-end qui est excellent en architecture javascript mais qui ne sait pas déterminer ce qui est important pour les utilisateurs.
Jusqu'où vous devez aller pour apprendre Javascript est à vous. Je ne pense pas que la plupart des tâches de l'interface utilisateur nécessitent que vous compreniez les fermetures ou les subtilités des prototypes, car la plupart des bibliothèques envelopperont ces fonctionnalités dans des abstractions pour vous. Tant que vous pouvez utiliser Javascript pour atteindre vos objectifs, ce qui est parfaitement possible avec des bibliothèques comme jQuery ou Mootools, tout devrait bien se passer.
C'est le même avantage que de savoir comment construire une maison aide un architecte. Comprendre le médium avec lequel on travaille est une bonne compétence.
Un architecte qui sait uniquement utiliser le stylo peut toujours être un bon architecte, mais celui qui sait également ramasser un marteau a généralement une meilleure idée des types de solutions de construction que l'on peut trouver.
Spécifique à JavaScript, je pense que le principal avantage pour un concepteur Web UX est qu'il vous permet de prototyper directement sur le support HTML/CSS et JS. Vous pouvez également mieux communiquer avec votre équipe de développement d'interface utilisateur.
D'après ma propre expérience, sachant que JS nous a permis d'appeler les mauvais fournisseurs qui n'avaient pas les compétences de base de l'interface utilisateur et qui prétendent "Cela ne peut pas être fait". Nous venions alors de construire l'interface utilisateur nous-mêmes et de l'envoyer, ne leur laissant aucune place pour se libérer de leurs incapacités.
Cela m'a également permis de concevoir en code, ce qui est une aubaine pour nos IA et les autres membres de l'équipe. Nous pouvons travailler beaucoup plus itérativement. Ils modifient leurs wireframes, je modifie le code, et nous pouvons aller et venir rapidement.
Enfin, je pense que savoir comment construire quelque chose vous aide en tant qu'UXer à comprendre tous les points d'interaction individuels auxquels vous devez penser. Je trouve qu'il est courant pour les utilisateurs UX sans compétences en code de créer des wireframes qui ont beaucoup de sens sur le papier, mais il manque au moins la moitié des spécifications d'interaction requises pour le construire.
Quant à jQuery vs JS, jQuery est JS - juste plus rapide à écrire. Je dis apprendre jQuery et au fur et à mesure que vous l'apprenez, vous constaterez que vous apprenez également beaucoup sur le fonctionnement de JS.
Avoir une connaissance de base de tout type de domaine technique est utile pour un concepteur, vous serez en mesure de penser à ce qui est possible/impossible, cher/bon marché lors de la conception. Pour cette raison, ce serait un outil utile. Il peut également vous aider à créer des prototypes de solutions pour la recherche d'utilisateurs (bien qu'il existe des moyens de le faire qui soient moins chers que l'apprentissage du javascript).
En termes de écriture du code de production, cela dépend vraiment de l'organisation dans laquelle vous êtes. Je connais des équipes où la personne UX s'arrêtera au wireframing, et d'autres où elle sera responsable du wireframing, du design visuel et HTML/Javascript frontal. Je dirais que le premier est plus courant. Je pense que les emplois où vous étiez requis pour faire les deux seraient minoritaires.
En termes d'apprentissage de Javascript? C'est en fait un langage intuitif vraiment bien conçu. Il y a une tonne de livres et de ressources communautaires, et un environnement de développement très simple (bloc-notes et navigateur). Donc, si vous avez le talent pour la programmation, ce serait relativement facile à comprendre. Bien qu'en termes de profondeur, un long chemin vers la maîtrise!
Si vous envisagiez de consacrer un temps significatif à l'apprentissage de la JS, je le comparerais à vos autres compétences. Par exemple, passer plus de temps à vous renseigner sur la recherche d'utilisateurs peut vous en coûter plus cher en termes de futurs travaux UX.
Lorsque vous tenez un marteau, tout ressemble à un clou.
Les personnes avec l'esthétique sont des designers. Les concepteurs ont tendance à connaître Photoshop. Les itérations de conception se déroulent sur Photoshop à une vitesse incroyable et avec une grande satisfaction du client. Le client n'a besoin que d'une visionneuse d'images pour regarder l'œuvre d'art. Les clients sont habitués à cela car leurs autres interactions de conception (publicités, bannières, logos, cartes de visite, image de marque) sont exactement comme ça. Pour le client, le site Web est un problème de conception. Mais regardez la difficulté de convertir PSD en HTML. Il existe un certain nombre d'agences spécialisées qui font exactement cela. Il suffit de google "psd en html". Si le concepteur ne tient pas compte de la complexité de la mise en œuvre de la conception, il est probable qu'une certaine fidélité sera perdue au stade de sa conversion en html. De plus, le psd aux gars html donnera le html, css, javascript et les images. Mettre cela dans une application de travail est une tâche à la troisième personne et nécessitera à nouveau un examen attentif.
Une autre façon de travailler est de créer des maquettes, en utilisant des outils comme balsamiq. Ceci est généralement utilisé pour les applications Web, lorsque les interactions sont développées. Encore une fois, toute la conception de balsamiq devra être portée manuellement au code. Et une fois mis en œuvre, il faudra à nouveau revoir.
Si la partie PSD est supprimée et que le concepteur travaille directement dans la plateforme cible (html, css, javascript et images), peu d'avantages sont immédiats. Tout d'abord, le design sera celui qui fonctionne dans les navigateurs. Les tests de navigateur croisés ne sont peut-être pas si importants maintenant qu'ils l'étaient il y a quelques années, mais quand même. Ce que le concepteur propose et montre au client serait exactement ce que le client recevra finalement. Un cycle d'examen est perdu et une chance potentielle de perte de fidélité est éliminée. Ce qui reste est pour un programmeur de prendre le html, le css, etc. et de l'implémenter dans un langage final. Cela permettrait également au concepteur de mettre en œuvre et au client de voir les interactions. Ce qui est bon. Enfin, cela permettrait au concepteur d'aider le développeur à la mise en œuvre. Qui est super.
Le type de javascript qu'un concepteur doit apprendre est simple par rapport à ce que le développeur pourrait ajouter plus tard. par exemple, le concepteur devra probablement apprendre à ajouter (pas à écrire, mais à ajouter) un carrousel. Le concepteur n'a pas besoin d'en savoir plus sur AJAX ou sur les validations. Je suppose que plus important que Javascript est que le concepteur devrait connaître le CSS, et j'entends par là le CSS sémantique. J'ai vu des gens créer des règles CSS comme ' homeheader "et" aboutusheader ", peut-être parce que l'en-tête de la page d'accueil devrait être plus grand que celui de la page à propos de nous ... c'est à mon avis une merde. Une meilleure façon serait une règle comme" en-tête "pour toutes les pages, et une autre règle comme "en-tête> grand" qui serait appliquée à l'en-tête de la page d'accueil. En outre, un concepteur qui connaît CSS pourra créer des images-objets au lieu de 50 à 100 petites images.
TL; DR Un concepteur qui connaît le javascript pertinent de l'interface utilisateur et les bibliothèques/frameworks javascript de l'interface utilisateur, et connaît également le CSS, cela réduirait le nombre d'approbations et améliorerait les chances que le client obtienne ce qui lui avait été promis. Tous les produits de travail créés par le concepteur sont immédiatement utiles au développeur, avec l'aide du concepteur.
J'utilise AngularJS pour construire ce que j'appelle des "maquettes fonctionnelles". AngularJS (et je pense que EmberJS) ajoute de nouveaux éléments HTML avec des fonctionnalités implicites. Il est très facile de créer des listes répétées, de rechercher et de synchroniser les valeurs des données entre les pages (saisissez du texte ici, faites-le apparaître ici). Il est très facile d'apprendre les bases de Angular si vous êtes juste un peu familier avec Javascript (la courbe d'apprentissage survient lorsque vous commencez à écrire plus de code personnalisé).
Si vous avez le temps de l'apprendre, cela en vaudrait la peine pour un concepteur UX. Vous pourrez montrer des fonctionnalités réelles à vos collègues et impressionner définitivement les personnes qui ne sont pas familières avec les frameworks.
D'autres ont répondu que vous pouvez construire ce que vous concevez - ou du moins que c'est une façon de le faire.
Cela ne s'applique pas seulement à la conception Web. J'ai vu un certain nombre de personnes UX dans différentes entreprises utilisant javascript pour aider à concevoir, construire et tester des prototypes interactifs de leurs conceptions de produits physiques de manière interactive avant de les pousser plus loin. Il arrive que dans chaque cas, ils utilisaient Raphael pour simuler l'affichage de leur appareil intégré (ce sont généralement des segments fixes LCD affichages). C'est un rapide, moyen peu coûteux et puissant de déterminer la viabilité initiale.
Javascript n'est qu'une des nombreuses options pour pouvoir créer quelque chose qui vous permet de vous impliquer dans votre concept, mais il se trouve qu'il existe de nombreux utilitaires et exemples facilement accessibles qui facilitent la tâche (et l'apprentissage).
Si vous voulez expérimenter, je recommande jsfiddle comme une ressource utile pour jouer avec javascript et divers frameworks.
Comme beaucoup l'ont souligné, cela vous aide à construire votre conception.
Je voudrais faire valoir que vous devriez pouvoir construire votre conception. Lorsque je fais un carrousel ou autre chose dans JS/jQuery, ce qui compte vraiment, c'est la vitesse à laquelle il tourne, la direction, le nombre d'images, s'il doit s'estomper, etc. Habituellement, ce ne sont que des paramètres et je préfère la personne avec l'idée jouer avec ces paramètres jusqu'à perfectionné plutôt que moi le programmeur.
C'est la même chose dans l'industrie des jeux. Le concepteur du jeu doit connaître suffisamment de code pour modifier les paramètres. C'est à dire. Le codeur crée une fonction de saut, le concepteur ajuste la hauteur et la vitesse. Etc.
De plus, au lieu de consacrer votre temps à expliquer quoi et comment vous le voulez - vous pouvez simplement le faire (ou au moins un prototype de celui-ci).
Il est utile pour vous d'apprendre ce que Javascript peut faire - par exemple.
Mais à moins que vous ne programmiez sérieusement en Javascript (ce que vous pourriez faire depuis son démarrage), je ne pense pas que vous tirerez beaucoup d'avantages UX de l'apprentissage des bases, vous finirez plus probablement frustré.
Développer une compréhension des principes fondamentaux de OOP dans JS est un aspect fondamental pour devenir un développeur d'interface utilisateur plus compétent. Comme la nature interactive du Web se développe dans le Web adaptatif, l'ubiquité de JavaScript dans Le développement de l'interface utilisateur sur les sites Web augmentera. Il est fondamental d'apprendre Javascript et de comprendre l'interactivité dynamique en ce qui concerne le flux de travail de l'interface utilisateur. Je recommande d'obtenir un "Manuel manquant" sur JS/jQuery pour mieux comprendre les avantages inhérents à la programmation de sites avec une interface intuitive et propre JavaScript ou jQuery