Question

Il est facile pour les gestionnaires et les clients d'apprécier ce qu'ils peuvent voir.

J'ai vu beaucoup de développeurs de l'interface graphique qui sont des programmeurs moyenne avec un minimum de connaissances des principes de conception ou d'autres idiomes de programmation. Cependant, ces défauts passent souvent inaperçues, en particulier par la direction et les clients, si le programmeur peut créer une interface utilisateur à la recherche impressionnante. Tant et si bien que beaucoup de développeurs de l'interface graphique que je connais passent des heures embellissant l'interface graphique au détriment de l'écriture mauvaise, le code ingérable.

D'autre part, les programmeurs de niveau intermédiaire qui développent des API ou des fonctionnalités d'entreprise ou le code de base de données (requêtes SQL, etc.) sont désavantagés car il n'y a rien de concret pour mettre en valeur. Peut-être un critique de code ou un architecte peut apprécier l'élégance, une bonne conception, l'évolutivité, etc. de code, mais cela ne signifie rien au monde extérieur. Votre code peut fonctionner pendant des années sans rupture, peut être très facile à entretenir et avoir de bonnes performances, mais il suscite jamais le « wow » qu'une interface graphique lisse recherche fait.

A mon avis, un corollaire est (et je vais me fortement downvoted pour cela, je sais) qu'il ya moins de motivation pour un programmeur graphique pour écrire du bon code propre.

EDIT :. Je dois expliquer ici que par un programmeur graphique, je ne veux pas une web à part entière / designer graphique mais un programmeur front-end par exemple, un programmeur java-swing

Le reste de la communauté d'accord?

Était-ce utile?

La solution

Je pense que je comprends votre point, mais je pense qu'il ya aussi un problème opposé à considérer.

Pour l'essentiel, je crois que vous suggérez que, parce que l'interface utilisateur est l'élément de l'application « face » des utilisateurs finaux, les développeurs de l'interface utilisateur bénéficient d'une plus grande visibilité que les membres de l'équipe qui travaillent dans des couches plus profondes de l'application.

Certes, je suis d'accord qu'il peut y avoir une plus grande visibilité. Par exemple, les développeurs travaillant sur les éléments de l'interface utilisateur peut obtenir d'interagir avec le plus souvent les utilisateurs finaux (sans doute, pour de bonnes raisons, car ils ne se concentrent sur l'aspect Interaction / humain).

Et pourtant, je pense que la plus grande visibilité est en jeu, même dans les cas où il y a un problème. Par exemple, les utilisateurs finaux sont très probablement des problèmes de rapport en tant que « GUI questions », même quand ils ne sont pas.

Il peut tout faire bouillir jusqu'à la perception, et une organisation mature devrait être en mesure de reconnaître les valeurs, les vertus et les faiblesses des différents membres de l'équipe indépendamment à partir de laquelle la couche de l'application ils travaillent. Une organisation mature peut aussi avoir dépassé les distinctions comme « développeur UI » et « développeur de la couche d'affaires », en reconnaissant qu'ils sont tous les membres de l'équipe de toute façon, avec des compétences différentes peut-être, mais toujours essayer d'éduquer les uns les autres sur les domaines d'expertise.

Autres conseils

Pour une personne qui ne traite pas avec les programmeurs tout, je peux dire avec confiance qu'ils croiraient ce genre de choses. Ils ne savent pas la quantité de travail qui va en arrière-plan, tout ce qu'ils voient est un tas de boutons / menus / zones de texte / [insérer élément graphique] et la vitesse qu'il faut pour accomplir ce que le bouton a commencé. Donc, d'abord, les gens GUI sont plus aimé.

Si la personne Finalité accord avec les programmeurs, puis son un peu différent. Comme vous l'avez dit qu'ils remarqueraient si vous l'avez fait évolutive, plus facile à entretenir, récrit un algorithme de sorte qu'il était plus logique, ou tout autre type de tâche de maintenance. Ce genre de personne examinerait tous les programmeurs aussi.

Au milieu, il dépend de ce que vous faites. La vitesse devient alors le facteur important. Si vous pouvez montrer avant et après les enregistrements de temps qu'il faut pour une forme à traiter et stocké et il y a une amélioration, vous êtes égaux. Si vous pouvez afficher l'application sous charge de 100 clients et leur montrer la fusion du serveur, puis leur montrer votre version où tout va bien, votre égal. Etc.


En bref, cela dépend de la personne et ce que vous faites.

En tant que « expert de l'interface utilisateur » à mon entreprise (le gars en charge de tout le développement de l'interface utilisateur, et pas seulement la conception), je pense que vous pourriez manquer une partie de l'histoire. Alors que je suis le gars en charge de l'interface utilisateur, je travaille aussi sur le back-end, sur les bases de données, etc. Je le fais tout (nous sommes une petite équipe). [Le développement C # et ASP.Net WebForms]

Tout d'abord, oui, il est beaucoup plus facile pour les personnes non-techniques pour apprécier le travail d'un développeur de l'interface graphique parce que est ce qui est dans le visage des gens. Pour les personnes non techniques, l'interface graphique est l'application . L'inconvénient est que l'interface graphique est aussi le premier à blâmer quand quelque chose va mal.

Deuxièmement, le développement de la fin de l'avant a été beaucoup plus difficile pour moi que l'arrière-plan a jamais été (algorithmes obscurs / complexes de côté). Il y a tellement plus à se prémunir contre, il est sans état (nos applications sont sur le Web), les navigateurs ne se comportent pas de manière cohérente (les bibliothèques JavaScript sont un don du ciel), etc. J'espère plus de cette complexité est due au cadre que j'ai à travailler avec (ASP.Net WebForms) et que toutes les choses difficiles ne sera pas un problème à l'avenir.

Dans l'ensemble, j'ai eu beaucoup plus de difficulté à résoudre les problèmes de l'interface utilisateur que les problèmes dorsaux.

Je déteste le développement GUI pour deux raisons,

  1. Je suis plus logique que graphiquement artistique et mon interface souffre toujours en conséquence.
  2. Comme l'interface utilisateur ne repose pas sur la logique, les tests unitaires sont presque impossible d'écrire avec un sens

A la fin de la journée, cependant, je pense que mon code sera mieux apprécié par l'utilisateur final (par opposition, peut-être à un promoteur du projet), que celui d'un développeur médiocre qui est un whiz à l'interface utilisateur, comme cela fonctionne en général.

Pour (peut-être) développer un peu sur @ la réponse de TheLQ, je pense que cela dépend aussi du « spectateur ».

J'ai eu une certaine expérience avec quelques gestionnaires de niveau supérieur / superviseurs qui ne disposent pas d'un arrière-plan de programmation. Certains apprécient qu'ils ne programment pas, mais comprendre que le chrome et sont hubcaps tout aussi important que le moteur et le châssis.

Et j'ai eu l'expérience avec certains gestionnaires de niveau supérieur / superviseurs qui ne se soucient pas des mesures autres que le grésillement de l'interface utilisateur. Même indiquant que les développeurs orientés plus importante interface utilisateur où.

à mon humble avis, nous savons tous que vous ne pouvez pas polir un étron et rapide, fiable application encore laid sera bien pire qu'une application que les deux semble bon et fonctionne bien. Tout est dans l'œil du spectateur et dans une certaine mesure, vous avez le pouvoir (quel que soit ce que vous faites) d'être vu à la lumière que vous voulez, en travaillant pour ceux qui apprécient les mêmes qualités que vous.

EDIT: Je pourrais ajouter, être quelqu'un qui se sent travailler plus à l'aise sur les articles de niveau inférieur, j'ai été blasé lorsque vous travaillez tout aussi dur que l'équipe de l'interface utilisateur et il est le vernis qui est loué dans la démo et non le fait que le système « juste travaillé ». Mais comme je l'ai dit, je sais que mon superviseur de connaître le travail est nécessaire dans tous les domaines.

Je pense qu'il ya une présomption générale là que les développeurs de l'interface utilisateur sont les développeurs « juniors ». Je ne peux penser à un cas où je suis tombé sur un gars de l'interface utilisateur a été considéré comme senior.

Cela dit, je pense que l'interface utilisateur est beaucoup plus difficile que toute autre partie de nos applications. Et je ne parle pas de la conception UX, je parle du codage. Combien d'autres domaines que nous ne code où nous devons compte des dizaines, voire des centaines, ou les scénarios possibles? redimensionnement juste un écran peut parfois devenir une douleur royale quand vous avez besoin de comprendre ce qui doit arriver avec quelques dizaines d'éléments. Cela vient surtout lorsque vous avez des lignes directrices qui disent « nous devons soutenir 800x600 » et puis UX designers qui utilisent jamais rien d'autre que les résolutions HD.

Alors, si elles obtiennent plus de bonté à cause d'une exposition plus, ils méritent probablement. En général, ils sont sur la mauvaise extrémité de réception plus souvent que la bonne extrémité de réception.

Il semble souvent être l'idée qu'un programmeur graphique est au bas de la chaîne de programmeurs. Comment peut-il être difficile de glisser-déposer un bouton dans VS à une forme? Qu'est-ce, il vous faudra une semaine pour programmer cela? Il dessine quelques bars. Donc, je ne suis pas surpris de voir l'idée que les programmeurs GUI, étant le bouton dragueurs car ils sont, doivent être l'écriture de code horribles aussi.

GUI programmation a quelques défis uniques. Multithreading pour maintenir l'interface graphique actif pendant le chargement de données. Cela conduit à un code thread-sûr et approprié. La performance est très important. Personne n'aime attendre deux minutes jusqu'à ce qu'ils obtiennent le contrôle de l'application. La réutilisation est aussi un gros problème. Si vous devez écrire dix écrans similaires, vous feriez mieux de bien structurer votre code. Cela conduit à un meilleur code. Et bien sûr, la création d'une bonne interface graphique est un défi en soi.

Mais pour certaines personnes, il sera simplement glisser un bouton sur votre application. De même que pour certaines personnes, la logique métier est rien de plus que « analyser un message et de le mettre dans le DB ».

Je pense qu'il est évident que ce qu'ils font. Peut-être des maisons haut de gamme dev sont exemptés, mais la plupart des autres ne sont pas.

Quand votre gestionnaire vous demande ce que vous avez fait au cours du dernier mois, il est facile de montrer une interface graphique de cool. Il est difficile de montrer une API cool. Très dur. sang-froid API est évident que par l'utilisation réelle -. il ne peut pas être apprécié un coup d'oeil

Vous pouvez vous en sortir avec toutes sortes de raccourcis et dans carriole les systèmes internes. Lorsque vous traitez avec l'interface graphique vous n'avez pas cette liberté. Votre api interne peut avoir incohérence et vous attendez que les codeurs pour y faire face parce que son trop difficile à fixer. Vous ne pouvez pas essayer et faire vos clients font la même chose. Donc, dans un certain sens, les personnes qui doivent faire face à l'utilisateur des composants visibles doivent suivre effectivement une norme plus élevée.

Je vais dire oui, pour une raison simple: l'iPhone. Tout le monde que j'ai jamais parlé à pense que c'est fantastique en raison de l'interface lisse, mais je ne peux imaginer le dessous de travail à faire que possible.

Cela dépend du public. Je travaille avec beaucoup d'analystes financiers et de leur idée d'une bonne conception de IUG est celui qui a autant de champs que vous pouvez éventuellement la confiture sur une forme. Sérieusement, je parle 75 - 100. Ils sont accros de données qui veulent toujours plus. J'ai récemment amélioré les performances sur quelques procédures stockées qui pourraient prendre 45 secondes à la charge (moyennes pondérées calculate depuis le début de choses de temps). Got it jusqu'à 30 secondes; Je pense wow, coupe un tiers du temps; il devrait être un élément de ligne sur mon CV. Personne ne remarqua même. A continué à travailler là-dessus et a à 15-20. changement notable. Tout le monde était très heureux. Je pense toujours que l'interface graphique est une abomination et si nous avons pris cette merde inutile, il chargerait en 2 secondes, mais quand il y a 15 différentes zones de texte multi-ligne (vous savez ceux qui ont toutes les capacités formating avec les paramètres de caractère MAX .), C'est sans espoir.

Donc, si vous voulez que les utilisateurs vous aiment vraiment, rappelez-vous que la meilleure interface utilisateur aucune interface du tout (aurais aimé me souvenir qui a dit que). Après avoir voulu voir toutes ces données, mes analystes se sont rendus compte qu'ils sont ceux à faire tout l'entrée de données -. L'horreur

parties de l'application de test UI est un cauchemar.

Toute personne se sent autour compétent pour donner un conseil ou pour une demande comment vous devriez le faire.

Une fois le système fonctionne bien, plus tard, même si quelqu'un se souvient peut-être par mégarde qui hes la vertu en elle, personne ne se souviendra de qui a fait quoi.

Mais si une erreur est visible ( certains toujours le cas), le premier homme à être condamné sera le programmeur graphique, l'utilisateur tout simplement jamais avait vu les autres!

Licencié sous: CC-BY-SA avec attribution
scroll top