• # Anecdote sans pertinence

    Posté par (site web personnel) . En réponse à la dépêche Plaidoyer pour des interfaces temps réels. Évalué à 9.

    L'autre jour, j'appuie sur l'interrupteur pour allumer la lumière dans un escalier, j'ai eu le temps de me demander pourquoi ça restait noir et d'envisager de réappuyer, et la lumière est apparue. Je me suis dit « la lumière est lente ici ». Il y a fort à parier (ou alors pas mal d'argent à se faire) que l'électricité ou la lumière ne sont pas plus lents ou rapides que un autre escalier, mais que par contre l'ampoule à LED est une électronique plus lente...

    Il y a quelques situations où la patience est très réduite (l'éclairage me semble un bon cas pour ça) ou l'effet de latence assez visible (typiquement la voix et les collisions dans les échanges si on atteint les centaines de millisecondes de délai aller/retour). D'autres où la patience est limitée (classiquement une à quelques secondes quand on a cliqué sur un site web, avant qu'on re-clique comme encouragement au paquet réseau précédent pour lui dire vas-y mon champion accélère).

    Ça implique quand même un changement certain avec par exemple pour une GUI, au lieu d'avoir un bouton au repos, puis un bouton enfoncé, avec un présupposé d'instantanéité en réaction et enfin un bouton de nouveau au repos, il faut avoir un bouton au repos, puis un bouton enfoncé tendance c'est en cours, puis une transmission de l'action à faire çà qui de droit, et au bout d'un moment un retour pour dire ça a réussi / échoué / timeout, et enfin un bouton qui revient au repos. (bref plus de boulot pour les dév pour gérer plus de comportements et d'états et de transitions).

    Dernier point : la physique limite. S'il faut un tour de planète ou un aller-retour aux antipodes, la vitesse de la lumière donne un minimum nécessaire (sans compter que ce n'est pas en ligne droite et que les équipements intermédiaires ne sont pas sans introduire de latence). Il y a aussi des limites sur l'électricité ou le son évidemment ou le temps de remontée d'un bouton de radiocassette. Ou des cas où on bride volontairement (pas envie qu'un lecteur CD s'ouvre suffisamment vite pour briser/tordre un doigt, ou éjecte un DVD de manière cinétiquement dommageable, ou que le retour haptique d'une manette puisse faire de même...) -> ça veut dire que l'interface doit le prendre en compte (ie. ça ne va pas se résoudre tout seul) si on se retrouve dans les cas limites.