Recherche textes 

Le Vrac Qui Craque 

... en vrac 
Fév. 08 25

Version imprimable L'interface est le produit

Salon de dé-coiffure

Supposons que, suite aux encouragements et réflexions prodigués sur ce blog de délicieuse cuisine, des gens (vous !) se mettent à élaborer quelques trucs améliorant l'utilisation de VB.

Aaah, direz vous, de nouveaux super-algorithmes, des astuces permettant avec un modèle VB de programmer un Skyblog, des super-machins automatisant la rédaction du blog (le blog se fait tout seul pendant que l'utilisateur se fait un café), des images 3D de la mort qui tue avec son spatial sur 17 haut-parleurs giga-génial. Bien sûr. Tout cela.

Avant de vous mettre à réaliser tout cela, respirez un grand coup, et passez une bonne heure (environ) à regarder cette vidéo Away from applications : the death of the desktop  : une conférence où il est question de design, d'utilisabilité, de cognitics ... Le genre de conférences que fréquentent des chercheurs et spécialistes de l'utilisabilité, pour réfléchir, se remettre en question, trouver des idées. Ça décoiffe. Vraiment, vraiment, avant de vous mettre à réaliser de super-astuces pour VB, allez prendre le vent et vous faire décoiffer, là ou ailleurs. L'interface est plus importante que l'application. Si.

Le conférencier, Aza Raskin, a l'air d'un gamin en gapette, bien qu'il soit président de la société Humanize (page de présentation de la société, et de sa philosophie, dont je vous recommande hautement la lecture. Ça commence par It's not your fault ...). Ce spécialiste depuis son plus jeune âge a de qui tenir, puisqu'il est le fils du célèbre Jeff Raskin (équipe de conception du premier Macintosh d'Apple).

Ci-dessous un début de transcription de la conférence. Si vous êtes vraiment pressés, lisez le résumé de la conférence sur le blog VirtualChaos. Si vous êtes encore plus pressés que ça (mais qu'avez vous donc ?), voici un résumé de résumé (mais vous perdez beaucoup du "sel" et de l'intérêt de la chose, qui est de vous décoiffer) :

The computer desktop metaphor is ubiquitous, but how much work do we get done there? None! … all Time is entirely wasted navigating or shuffling content to the application in which we can finally work. What lessons can we learn from designing interfaces without the desktop and without applications? Is it even possible? And how does this apply to the Web? Currently, Web applications are often more usable than their desktop-based counterparts because each one does one thing and does it well.


Prêt pour la transcription ? (mais le mieux est encore de regarder la vidéo ...) :

The interface is the product
. Donc ... commencez par là. Et mettez y les investissements nécessaires.
L'exemple de la pelle (shovel) est éclairant. La diapo "la pelle selon Microsoft" est à mourir de rire.

Begin with the manual. Exemple magnifique du manuel d'utilisation de la montre digitale, comparé à celui de la montre analogique. Syndrome "on a un chip pas cher et puissant, on va faire un produit autour".

It's too simple to put too many menus and options (exemple du téléphone portable). C'est effectivement plus "simple", pour le fabricant, que d'investir dans une interface simple et utilisable.

Aza Raskin n'épargne pas ses amis de Google et donne des exemples dans les services et marques Google : It's not because it is easy to program that it is easy to use for a human.

Les tâches peuvent être complexes (pour l'utilisateur), parce qu'il a besoin de maîtriser trop d'outils. Exemple de la page Web : il faut un éditeur d'images, un éditeur HTML, un logiciel FTP, un logiciel de navigation ... Diagnostic : "The problem : Applications. Like isolated cities". Un concepteur d'applications, le plus souvent, (cf. votre Word habituel ...)  la fait "grossir"  pour qu'elle traite le plus de cas possibles. Au risque de  la rendre plus difficile à utiliser, moins maintenable, etc. L'application inclut de plus en plus de tâches "annexes". Par ex., Word a un spellchecker. Mais Photoshop et Mathematica aussi ... Chaque spellchecker a ses propres interfaces spécifiques, son propre vocabulaire ...

Une direction possible : untap the power of language (plutôt que d'apprendre et mémoriser des tas d'icônes, d'ailleurs différentes d'une application à l'autre). Les mots, meilleurs "traducteurs" de ce que nous pensons voulons ... Le retour de la ligne de commande ? Mais n'utilisons nous pas tous les jours des commandes "tapées", lorsque nous demandons (URL) au browser d'afficher un site Web ? Lorsque nous utilisons un système de recherche ?

Les services (services Web) doivent être accessibles depuis un universal access, par ex. une interface texte comme Enso (logiciel produit par la société du conférencier) qui "apprend" des commandes textuelles comme "va à", "calcule", "définis" "trouve une image", etc., et sert d'interface avec des applications. Bref, il est intéressant d'expérimenter des GUIs with CLIs (des interfaces graphiques pilotées à la ligne de commande). Oui, mais des CLIs with semantic language ... et un semantic language with services.

"Content is king". Les Lois des Interfaces de Raskin, adaptées avec humour des célèbres Lois de la Robotique d'Asimov :
1. An interface shall not harm your content or, through inaction, allow your content to come to harm.
2. An interface shall not waste your time or require you to do more work than is strictly necessary.
3. An interface shall not allow itself to get into a state where it cannot manipulate content.


... mmh ... déjà 43' 37" transcrites. J'espère vous avoir donné envie de regarder le truc en entier. Qui veut prendre la suite de la transcription ? Qui a envie de réaliser des trucs pour VB ? Qui, malgré son désir ardent de réaliser, là, tout de suite, prendra le temps de respirer et se faire décoiffer par le vent ?




Fév. 08 24

Version imprimable Laisser l'utilisateur faire des trucs et mashups

Donnez leur tout, ils vous le rendront au centuple


VB, c'est génial. Par exemple, avec les mots-clés, on donne la possibilité de présenter, rechercher ou explorer l'information (liste d'articles, etc.) de différentes façons. Il y a même des verbes ("formules gourou") très puissants pour manipuler les mots-clés.

Sur VdeV, plusieurs discussions portent sur l'extension du domaine d'applicabilité des mots-clés. On peut vouloir des mots-clés étiquetant les profils utilisateurs, des présentations graphiques (arborescences dépliables-repliables et annotables), on peut vouloir établir des proximités entre nuages de mots-clés de blogs VB, on peut désirer que les mots-clés s'appliquent aux images, aux commentaires (les comm' sont un "sous-objet" des discussions), ou, en restant dans le thème "granularité et sous-objet", à toute portion de page surlignée/annotée par un utilisateur. Etc. ...

Tout cela est très intéressant (et le paragraphe ci-dessus n'évoque que les mots-clés, il y a aussi tout le reste !) ... mais la mise en oeuvre, puis l'utilisation, se heurtent à deux obstacles principaux :
• Le temps disponible de l'équipe VB. Selon l'adage bien connu "ne seront effectués que des travaux intéressant une proportion 'notable' des utilisateurs et ne nécessitant que peu de travail".
• La richesse de VB est un obstacle pour beaucoup d'utilisateurs. Il est difficile de trouver "quels trucs sont intéressants" ou "comment faire pour les utiliser". Sont en cause, aussi bien l'UI (interface utilisateur, notamment dans les menus admin') que la documentation (ah, VdeV ...).

Pour contourner ces obstacles, plusieurs pistes :

• Manque de temps de l'équipe VB ?

• Développer "hors noyau Perl" (Perl est le langage utilisé pour fabriquer la plate-forme de blogs VB) des fonctionnalités en javascript  : c'est le sujet de ce blog. Autrement dit, ce que ne fait pas le serveur VB, le logiciel de navigation peut (dans certains cas) le faire.
• Développer (enfin !!!!!) et documenter (si, si !!!!!) des API (Application Programming Interface, interface de programmation) permettant de fabriquer des bibliothèques de plug-ins et extensions pour utilisation sur les sites VB ou encore des programmes et widgets à utiliser en dehors de VB : dès que Stéphane G. donnera le signal qu'il travaillera sur les API, ce pourrait être le sujet d'un autre blog .

• Simplifier l'utilisation ?
• Mettre sur des sites séparés (pas VdeV !) les trucs non basiques. Par ex. les bibiothèques de formules-gourou pour mots-clés, les bibliothèques de trucs javascript, etc.
• De même, dans l'UI (menu admin ...) proposer plusieurs niveaux de consultation (basique, avancé, super-expert, etc.).

Et si on donnait à l'utilisateur la possibilité de fabriquer lui-même, de façon simple, des "trucs" ? Cela augmenterait la quantité de "bibliothèques" disponibles, développerait  sans doute la responsabilité des utilisateurs (c'est bien gentil de mailer au support technique, ou d'inonder VdeV de billets et commentaires, mais faut pas abuser ...).

Cela suppose que ce soit simple de fabriquer ou adapter des "trucs". Ne pas transformer l'utilisateur en geek programmeur-bidouilleur. Imaginons, par ex., qu'il soit possible, avec une interface graphique drag & drop (AJAX) de construire simplement un modèle VB. Cela ne dispenserait pas l'utilisateur du travail indispensable (et long ...) de comprendre ce qu'il fait, et pourquoi il le fait. Mais que de temps gagné ! Et sans doute que de nouveaux et beaux modèles !

Le côté graphique d'un outil de construction de "trucs" fait partie de la simplicité (accessibilité) et de la qualité ("voir" ce qu'on fait, explorer facilement des alternatives) attendues d'un tel outil. Il peut d'ailleurs avoir plusieurs outils (un pour les modèles, un pour les mots-clés, etc.).

Pour réfléchir un peu, cet article (fichier PDF) :
Making Mashups with Marmite: Towards End-User Programming for the Web (je suis arrivé dessus en consultant le blog d'Alex Faaborg, membre de l'équipe "design & usability" du projet Mozilla. Des vues très intéressantes sur le browser comme plate-forme communiquant avec des applications, sur les micro-formats, sur le respect du design d'un site par le browser, sur la liberté de l'utilisateur ...).

(Mashup ou mash-up : application composite, combinant plusieurs tâches ou sources d'informations)

Marmite (tiens... on reste dans la cuisine chère à ce blog ) est un outil pour "bricoleurs du dimanche" (ce n'est pas péjoratif, bien au contraire). On "voit" comment relier différentes actions à partir de données situées sur des pages Web (Ex. : chercher une adresse dans une page Web, trouver avec Google Maps où ça se situe, mettre le tout dans un agenda, etc.) pour faire un "programme". L'article cité ci-dessus est une étude d'ergonomie : des utilisateurs ne connaissant pas Marmite (divisés en trois groupes : novices absolus en informatique, personnes ayant une expérience bureautique, personnes ayant une expérience de la programmation) peuvent-ils arriver au même résultat (un programme utilisable) que le programmeur professionnel d'un mashup ?

Ne serait-ce pas commode, pour VB, de disposer d'un outil analogue ? : partant des "données visibles" sur des pages  VB (y compris les pages admin') ou accessibles (variables VB, celles du modèle VB par ex.) les combiner par des "bouts de programme" pour faire un mashup. Cet outil serait (rêvons un peu ...) utilisable par tout utilisateur VB ... 

Pour terminer, à propos de VB : plus il y aurait de trucs simples, et d'utilisateurs qui s'en servent, plus le concepteur de VB, sans doute, serait incité à "ouvrir" VB (notamment par des API donnant accès à des structures de données, ou même des parties de l'application).

Bien évidemment, vous avez plein d'idées de mashups pour VB, et même de mashups combinant VB et d'autres sources sur le Web ...
 



 

Archives par mois