Attention post avec des idées en vrac :)

Dans les grandes entreprises, on travaille très souvent avec des technologies sérieuses : Java.

Lorsqu'il s'agit d'interagir avec un utilisateur, tout le monde a bien compris que l'époque du client lourd est révolue, on fait des applis web, on fournit des interfaces web ou des clients riches. Le seul souci c'est que souvent on sait bien concevoir une application à partir des requis, mais on ne sait pas concevoir une interface utilisateur.



Alors l'idée de base est d'encapsuler les éléments d'interface, dans une approche toolbox, de s'abstraire de l'interaction avec l'utilisateur le plus possible. On fait confiance a celui qui a conçu la toolbox, elle répond à la plupart des besoins, tout le monde l'utilise, elle est probablement très bien ! La plupart des frameworks java "pour le web" suivent cette démarche, par exemple JSF. Le problème c'est qu'on rencontre de grosses difficultés avec ce type d'abstraction à fournir des interfaces web de qualité. Elles ne sont pas faites pour cela de toute façon (code html pas valide, gestion de l'ajax biscornue, code javascript très lourd)

On est en présence d'une fuite d'abstraction dans le sens où cette abstraction peut devenir un réel problème pour l'utilisation de l'application.

Il y a longtemps on critiquait les générateurs de codes pour les interfaces de clients lourds (visual basic version 1997 ?) Ils généraient du code de mauvaise qualité, peu optimisé, et souvent les "Vrais Programmeurs" bypassaient l'éditeur graphique. Maintenant tous ces gens sont passés du côté serveur et on ne contourne plus les abstractions, elles sont là pour leur faciliter la vie, et les contourner est au minimum inconscient.

Reste les utilisateurs dans l'affaire. Comme d'habitude, on en a peur. L'utilisateur est toujours ingrat, c'est bien connu :) Si on peut éviter de le voir, c'est mieux. Cependant la meilleure façon à mon sens d'entretenir une bonne relation avec l'utilisateur, c'est tout de même de lui fournir une interface de qualité.

Je viens de lire ce très bon article chez Stéphane Deschamps : Pour une professionnalisation des métiers du web D'après Stéphane, il faut des réels professionnels du web pour créer les interfaces de ces applications d'entreprise. Cela simplifierait la vie de tout le monde, celle des développeurs serveur, celle des utilisateurs. Le problème est que la qualité ne se vend pas bien.

Comment faire ? faire du marketing autour de la qualité web ? mettre en avant les nouveaux outils permettant d'effectuer un travail correct sur l'interface utilisateur ?

J'irais même plus loin, autant l'intégrateur html devrait être un développeur web client, autant le graphiste doit pouvoir migrer vers l'ergonomie et la conception d'interaction.

Au final, dans l'entreprise, si on veut vraiment s'abstraire de quelque chose, ce n'est probablement pas de l'utilisateur, mais plutôt de la métaphore du formulaire papier.

PS: j'ai vu passer ce framework java qui m'a l'air des plus intéressant avec grails : play framework. A voir aussi le position paper qui va avec : Java a t’il encore un avenir pour le développement Web ?