2 points par GN⁺ 2024-02-05 | 1 commentaires | Partager sur WhatsApp
  • Le curseur de souris incliné que nous connaissons aujourd’hui s’expliquerait par la fixation d’une forme qui, à l’époque de Xerox PARC, était plus facile à dessiner et plus reconnaissable sur des écrans basse résolution
  • Le curseur initial de Douglas Engelbart était une flèche vers le haut, et la réponse la mieux notée indique qu’il a évolué vers une flèche inclinée proche de la forme actuelle sur les machines de Xerox PARC
  • Sur les écrans pixelisés basse résolution, les lignes à 0 degré et 45 degrés paraissaient relativement lisses même sans anti-aliasing, ce qui facilitait la création d’un pointeur à extrémité bien nette plutôt qu’une flèche verticale droite
  • La posture consistant à pointer l’écran de la main droite, le contraste directionnel sur des écrans riches en éléments horizontaux et verticaux, ainsi que l’angle d’usage des véritables baguettes de pointage, sont aussi avancés comme raisons secondaires
  • Une explication affirme que l’origine du curseur a été alignée en haut à gauche afin de réduire les calculs de position du clic, mais les commentaires la contestent en s’appuyant sur les sources et sur le cas du Xerox Alto

Le curseur incliné fixé à l’époque de Xerox PARC

  • La souris et les premiers curseurs ont été créés par Douglas Engelbart, et leur forme initiale était une flèche pointant vers le haut
  • Par la suite, sur les machines de Xerox PARC, le curseur a évolué vers une flèche inclinée
  • Avec la faible résolution des écrans de l’époque, il était plus simple et plus lisible de dessiner un côté de la flèche en trait vertical et l’autre en diagonale à 45 degrés
  • Cette explication s’appuie sur des documents concernant la souris optique de Xerox PARC et sur des sources relatives à l’histoire des interfaces graphiques

Des angles qui se voient bien sur une grille de pixels

  • Sur des écrans fondés sur des pixels rectangulaires, il est difficile de représenter une pointe de flèche nette sans anti-aliasing
  • Les lignes horizontales, verticales à 0 degré et diagonales à 45 degrés comptent parmi les directions qui paraissent relativement lisses sur une grille de pixels
  • Beaucoup de curseurs en forme de flèche exploitent cette propriété en combinant un côté vertical et un autre à 45 degrés
  • Dans ce cas, la bissectrice centrale de la flèche se retrouve inclinée d’environ 22,5 degrés
  • L’identification de la pointe est plus importante que celle de la queue, d’où la priorité donnée à la netteté de la tête de flèche

Débat autour du point de clic et du calcul de l’origine

  • Une réponse avance que l’origine du bitmap du curseur se trouvait en haut à gauche, et qu’incliner la flèche vers la gauche permettait de réduire les calculs de position du clic
  • Cette explication cite un billet Reddit, mais les commentaires rétorquent que ce billet n’est qu’une copie d’un message Yahoo! Answers sans source
  • Des commentaires de réfutation soulignent que le Xerox Alto possédait aussi des curseurs dont le hotspot n’était pas (0,0)
    • Le curseur en croix dans un cercle et le curseur en flèche pointant vers la droite sont cités en exemple
  • Selon d’autres commentaires, l’implémentation des curseurs prévoit généralement un champ de hotspot, ce qui permet aussi des curseurs de type réticule
  • Il est également avancé que le coût de calcul restait suffisamment faible, même dans les années 1970, pour tenir dans l’intervalle entre deux mises à jour de la souris

L’idée qu’il rappelle une main ou un pointeur réel

  • Plusieurs réponses estiment que la flèche inclinée ressemble à la forme d’une main droite pointée vers l’écran
  • Cette interprétation est présentée davantage comme une expérience subjective que comme une explication historiquement étayée
  • Une autre réponse évoque un environnement pensé principalement pour les droitiers, avec l’idée qu’autrefois, si l’on inversait les boutons gauche et droit, la flèche pointait dans l’autre sens
  • Une autre encore explique que les véritables baguettes de pointage sont elles aussi généralement utilisées avec une inclinaison d’environ 30 à 45 degrés plutôt qu’à la verticale, ce qui guiderait naturellement le regard vers la pointe
  • Certains estiment aussi qu’une flèche verticale droite peut donner l’impression d’indiquer le haut de manière générale plutôt qu’un point précis

Explications complémentaires sur la perception visuelle et le masquage à l’écran

  • Une réponse avance qu’un curseur incliné pourrait aussi être avantageux du point de vue de la perception visuelle de bas niveau
  • Les aires visuelles V1 et V2 traitent des caractéristiques élémentaires comme la couleur, la luminosité, la taille et l’orientation
  • Comme les écrans contiennent beaucoup d’éléments horizontaux et verticaux, une ligne inclinée peut davantage ressortir grâce à un effet de saillance lié à son orientation différente de l’environnement
  • Cette réponse cite comme références l’étude de Treisman et Gormican de 1988 ainsi que Visual Thinking for Design de Colin Ware
  • Les commentaires notent que, même si cela n’explique peut-être pas la cause historique réelle, cela reste une raison complémentaire intéressante

Exemples de curseurs droits et d’autres formes

  • Certaines interfaces moins connues ont utilisé des curseurs en flèche droite
  • Les commentaires mentionnent aussi que le pointeur en forme de main utilisé sur les liens dans les navigateurs adopte une forme droite
  • Certains commentaires indiquent également que des applications modernes utilisent encore des flèches droites
  • Le curseur en forme de main figurant dans la question semble, lorsqu’il apparaît au-dessus d’un bouton, moins incliné qu’une flèche, mais les réponses se concentrent surtout sur l’histoire et la forme du curseur flèche par défaut

1 commentaires

 
GN⁺ 2024-02-05
Avis de Hacker News
  • C’est un peu effrayant de voir que l’une des réponses les mieux notées à cette question (188 points) est complètement fausse. Elle explique que le hotspot (0,0) simplifiait le calcul de mise à jour de la position du curseur, puisqu’il n’y avait pas besoin d’ajouter un décalage (X,Y)
    https://ux.stackexchange.com/a/52349/43259
    Mais le pointeur en forme de flèche n’a jamais été le seul curseur. Même le premier Macintosh avait de nombreux curseurs, comme le I-beam de texte, plusieurs sortes de réticules, etc., et l’on pouvait définir n’importe quel curseur en fournissant un bitmap, un masque de transparence et une position de hotspot
    On peut voir ces curseurs dans l’Inside Macintosh Volume I original et dans les travaux antérieurs du PARC
    https://web.archive.org/web/20230114223619/https://vintageap...
    La page 50 du PDF (page I-38 du document) montre des exemples de curseurs, et la page 158 du PDF (page I-146 du document) donne les détails en pixels et les positions de hotspot de plusieurs curseurs. Fait amusant : le hotspot du curseur en forme de flèche n’était pas (0,0), mais (1,1)
    Je me demande si quelqu’un peut expliquer pourquoi. J’ai l’impression de l’avoir su autrefois, mais c’était il y a longtemps et le souvenir s’est effacé
    Cette page contient aussi la définition de la structure Cursor : un enregistrement avec data, mask et hotSpot, et Point correspond à peu près à une paire de coordonnées verticale/horizontale, comme défini à la page I-139
    Ce qui est effrayant, ce n’est pas que quelqu’un ait eu l’idée que (0,0) économisait quelques instructions. Tant qu’on ne sait pas que différentes formes de curseurs ont besoin de hotspots différents, c’est une hypothèse assez plausible. Le vrai côté effrayant, c’est que 188 personnes aient recommandé cette réponse
    • Ça ne fait peur qu’au début, ensuite on s’y habitue. Sur tous les réseaux sociaux, HN compris, il y a des gens qui ne savent pas vraiment de quoi ils parlent et approuvent une réponse qui paraît plausible comme si elle était juste
      Un ami fiscaliste se fait voter contre quand il corrige des idées fausses sur le fonctionnement réel des impôts, et ma femme linguiste aussi quand elle explique que « les langues ne fonctionnent pas comme ça ». Ce n’est pas effrayant, c’est courant
    • On peut voir quelque chose de similaire dans le code source de l’Apple Lisa : https://info.computerhistory.org/apple-lisa-code
      La page Stack Overflow liée relève en fait presque de la pure spéculation
      L’histoire n’est pas une collection d’énigmes logiques, c’est un travail d’assemblage de documents et de preuves. Comme je n’ai pas vu, dans les documents de l’époque, de base permettant d’affirmer une intention, la question reste sans réponse
      Une preuve décisive serait par exemple une source majeure antérieure à environ 1988 (Microsoft/Xerox/Apple) avec un nom de fichier du type cursor.bitmap ou du code comme declare cursor_default = [ [ 1, 0 ... ] ];, accompagné d’un commentaire expliquant pourquoi ce style de curseur a été choisi. Des sources plus petites comme Acorn, Digital Research, Quarterdeck, NeWS, VisiOn ou MIT Athena(X) seraient aussi acceptables
      Retrouver une histoire de stylo optique puis s’en servir pour défendre ce style de curseur de souris, c’est raisonner à rebours à partir d’une hypothèse ; c’est faible et cela n’exclut pas les autres possibilités. Il faut être rigoureux
    • La flèche a un contour blanc, donc le hotspot se trouve à la pointe de la flèche noire, en (1,1)
    • Posy a une vidéo étonnante sur l’histoire des curseurs de souris, et propose aussi un pack de curseurs qu’il a créé
      https://www.youtube.com/watch?v=YThelfB2fvg
      http://www.michieldb.nl/other/cursors/
    • Je disais déjà la même chose il y a 10 ans : https://news.ycombinator.com/item?id=7253841
      Il y a de fortes chances que je redise encore la même chose dans 10 ans
  • Je n’ai pas tout lu sur le sujet, mais je suppose que la raison pour laquelle le curseur est incliné est la même que celle pour laquelle il penche vers la gauche
    Les humains fabriquent et utilisent des outils ; avec le temps, ces outils deviennent comme des extensions du corps. C’est vrai même si l’extrémité de l’outil est mécaniquement ou virtuellement séparée de la main, et celui-ci semble conçu comme un outil de droitier tenu dans la main droite et entrant dans l’écran
    Si ce n’est pas la raison de cette inclinaison, alors il n’y a pas de raison qu’il ne soit pas incliné dans l’autre sens. Si vous êtes droitier, essayez un curseur dont le côté droit est en avant. Il ne paraît pas simplement bizarre : il donne aussi une sensation étrange, comme un outil tenu dans la main gauche
    Je ne sais pas si cela a un effet sur les gauchers. Je suis gaucher, mais utiliser une souris de la main gauche m’a toujours paru étrange, et je ne sais pas si c’est à cause de l’inclinaison
    • Je suis gaucher et j’ai toujours utilisé la souris de la main gauche, mais je n’ai jamais trouvé que l’inclinaison du curseur était étrange ou incorrecte
      Comme j’utilise des souris d’ordinateur de différentes façons depuis plus de 30 ans, il est possible que j’y sois tellement habitué que l’étrangeté ait disparu. Les gauchers qui commencent à utiliser une souris trouveraient peut-être l’inclinaison du curseur bizarre
    • Ce qui compte, c’est la main avec laquelle on utilise la souris. J’écris et je fais la plupart des choses de la main gauche, mais j’utilise la souris de la main droite, et cela ne me paraît pas étrange
    • Plutôt que « sans avoir tout lu sur le sujet », dans ce cas il suffit de lire la deuxième réponse de la page liée. Cela dit, les deux semblent toucher quelque chose de juste
    • Personne ne demande pourquoi il pointe vers le haut, mais la raison est la même. En général, la main se trouve sous le niveau des yeux
      En théorie, le curseur le plus intuitif pourrait être un réticule, mais après l’avoir essayé, je n’ai pas aimé
    • Le fait qu’il ressemble à un outil tenu dans la main gauche ne paraît étrange qu’un court moment. Je suis droitier, mais après avoir développé une lésion due aux gestes répétitifs (RSI) au poignet en utilisant la souris de la main droite, je l’utilise de la main gauche depuis plus de dix ans, sans problème
      Le cerveau est extrêmement adaptable. Par exemple, nous nous adaptons très vite au fait de voir le monde à l’envers

https://theguardian.com/education/2012/nov/12/improbable-res...

  • Il manque, dans les réponses Stack Overflow, la mention d’Alan Kay. C’est Alan Kay qui a créé le curseur de souris incliné au PARC, et lorsqu’on lui a posé la question, il a répondu ceci :
    « J’ai créé la forme du curseur de souris du PARC. Sur la grille de pixels 16x16 1 bit que l’Alto du PARC utilisait pour le curseur, on obtenait une pointe de flèche correcte en faisant un côté vertical et l’autre incliné. J’ai aussi conçu et créé beaucoup des premières polices bitmap. Et ensuite, comme beaucoup de choses en informatique, c’est resté tel quel. »
    ¹ https://jameshk.com/mouse-cursor

  • C’est le moment de regarder ma vidéo YouTube préférée de Posy (Michiel de Boer), Mouse cursor history (and why I made my own)
    https://www.youtube.com/watch?v=YThelfB2fvg
    Elle parcourt l’histoire du curseur de souris et certains problèmes des curseurs standard, et montre aussi des curseurs historiques non inclinés
    C’est une excellente courte vidéo qui donne l’impression qu’Internet en vaut la peine, et c’est aussi une vidéo du créateur du Posy’s Cursor Pack : http://www.michieldb.nl/other/cursors/

    • Je ne suis pas sûr que ce soit exact. Par exemple, elle présente le curseur IIGS comme le curseur « Color mode » de Lisa
      Elle ne traite pas du tout de l’environnement NeXT, de DPS, des différences de DPI, de son propre curseur flèche noir et blanc, ni de la façon dont ce curseur est réellement arrivé dans Mac OS X, plutôt que du curseur postérieur au System 1
    • Sous Windows, j’utilise cet ensemble. Il est joli, et sous Ubuntu j’utilise le port Linux qui se trouve ici
      https://github.com/simtrami/posy-improved-cursor-linux
  • La vraie question est de savoir pourquoi le curseur Windows paraît imparfait
    https://mspoweruser.com/wp-content/uploads/2020/04/windows-c...

    • La page web[0] d’où vient cette image, et la page Reddit[1] dont elle provient à son tour, font vaguement référence, par analogie, au phénomène réel de l’équilibre optique[2], mais n’expliquent pas de manière convaincante pourquoi il s’applique à ce cas précis
      Une autre explication est que cette imperfection volontaire a été conservée pour correspondre aux imperfections inévitables apparues quand le graphisme original du curseur était dessiné sous forme de très petit pixel art basse résolution en 1 bit. Nous sommes habitués à cet aspect légèrement de travers, donc il nous paraît correct. À taille normale, la différence est de toute façon presque imperceptible
      [0] https://mspoweruser.com/why-windows-10s-asymmetrical-cursor-...
      [1] https://old.reddit.com/r/TIHI/comments/fwnep0/thanks_i_hate_...
      [2] Modifié, merci à jusuhi
    • Les curseurs haute résolution actuels ressemblent à des versions agrandies du curseur original. C’est peut-être pour des raisons de compatibilité, car beaucoup de moniteurs utilisent encore une mise à l’échelle de 100 %
    • Le problème des petites infobulles masquées sous le curseur, donc illisibles, et qui disparaissent lorsqu’on déplace le curseur, continue de m’agacer. C’est un problème qui pourrait effectivement être corrigé un jour
    • À mon avis, c’est parce que Windows manque d’attention aux détails et a été conçu sans sens esthétique. Par exemple, je me souviens très nettement qu’à la sortie de Windows XP, certaines icônes par défaut n’étaient pas correctement alignées sur la même ligne de base. Cela a été corrigé dans un service pack ultérieur
    • Une explication que j’ai vue quelque part disait que c’était pour que le curseur paraisse plus équilibré
  • Aux raisons que je trouve plausibles — ne pas masquer l’objet pointé et imiter le geste de pointer du doigt — j’en ajouterais une autre : presque tout ce qui est affiché à l’écran est perpendiculaire à l’axe x ou à l’axe y. Un curseur incliné ressort donc au milieu du reste du contenu
    À cela s’ajoute une singularité très Amiga : le premier curseur de souris Amiga était incliné à 45° par rapport à l’axe x, contrairement aux curseurs plus pointus des autres GUI populaires. Il y avait aussi un outil intégré pour créer des curseurs de souris personnalisés, que j’aimais beaucoup personnellement. On peut voir des exemples sur http://toastytech.com/guis/amiga12.html

    • Le style court et trapu du pointeur flèche Amiga d’origine venait peut-être du fait que les sprites matériels n’étaient possibles qu’en basse résolution, et qu’une ligne en escalier 2:1 ne rendait pas très bien
      Dans Amiga OS 2.0, il est passé à un style plus pointu, mais restait incliné à 45°. Il a fallu attendre l’AGA des Amiga 1200/4000 pour pouvoir utiliser un pointeur de souris haute résolution
    • Le réglage du hotspot était également inclus
      Comme pour le pointeur de souris Macintosh, le point de clic n’était pas (0,0) mais (1,1). Dans l’éditeur de la page liée, c’est le point orange dans la zone couleur chair
  • Une raison convaincante est d’éviter de masquer ce que l’on pointe avec le curseur. Si le curseur avait été inversé ou centré, il aurait recouvert une partie du bouton lorsqu’on le survole
    Cela suppose que l’utilisateur approche par le bas à droite, ce qui pourrait en soi découler de la forme du curseur. Mais je pense malgré tout que, pour expliquer pourquoi on a tendance à approcher par le bas à droite, la théorie liée au sens de lecture est plus solide

  • Au début, je pensais la même chose, mais en vérifiant la façon dont on utilise réellement la souris, ça ne me semble pas vraiment coller. Je me demande si je suis le seul
    D’abord, dans plus de 95 % des usages courants d’un ordinateur de bureau, l’élément sur lequel on va cliquer n’est pas encore sous la souris, donc il n’y a rien à masquer. On déplace la souris vers la cible, et au moment où elle arrive, la décision de cliquer est déjà prise ; ce qu’il y a dessous n’a donc pas d’importance
    Ensuite, si la souris se trouve au-dessus de quelque chose que je dois lire, j’ai tendance à déplacer le curseur. Même quand il se transforme en curseur vertical sur du texte. Quel que soit le curseur, son épaisseur de trait et sa hauteur sont généralement supérieures à celles des glyphes rendus en dessous, donc il masque toujours quelque chose. Autrement dit, même si le curseur n’était pas incliné, il masquerait simplement une surface similaire à un endroit légèrement différent, et dans l’usage réel la différence est quasi nulle
    L’angle d’approche dépend de l’endroit où se trouve le curseur et de l’endroit où se trouve la cible. Ce serait intéressant de transformer les données d’usage quotidien en carte de chaleur, mais si l’on regarde rapidement des éléments fréquemment utilisés comme la barre des tâches en bas et la barre d’onglets du navigateur en haut, les cibles de clic se trouvent aussi bien à gauche qu’à droite de l’écran, et le curseur peut être n’importe où. Certaines directions d’approche sont peut-être un peu plus fréquentes, mais je doute que l’écart soit important
    Enfin, les logiciels où l’occultation peut réellement compter, comme la CAO, utilisent généralement des curseurs personnalisés du type réticule d’un pixel, pas un curseur incliné

  • Ce ne serait pas une imitation du stylo-plume ? On le tient comme ça quand on écrit avec un stylo-plume, et le curseur est une pointe de stylo virtuelle
    https://youtu.be/U9mWKwXfF6s?t=155s

    • Dans ce cas, les personnes qui utilisent une souris pour gauchers ne devraient-elles pas avoir un curseur incliné dans l’autre sens ?
  • Encore Xerox PARC. J’ai l’impression que tout ce que nous avons aujourd’hui a été inventé là-bas. Comment ont-ils pu être aussi brillants et influents ?

  • L’essentiel d’un pointeur est qu’il doit se distinguer visuellement de ce qu’il pointe
    Une interface graphique classique a généralement des bords rectilignes et une certaine symétrie régulière. Un curseur lui aussi assez symétrique se fond plus facilement dans l’arrière-plan et se perd plus facilement visuellement
    Le sens de l’inclinaison est secondaire ; l’important, c’est l’irrégularité de l’inclinaison qui contraste avec le reste de l’interface

    • Je ne sais pas si c’est parce que je vieillis, ou à cause de mon nouvel écran HDR/5120 de résolution/avec des niveaux de blanc et de noir extrêmes, mais ces derniers temps je perds sans cesse le curseur sur les écrans blancs, au point d’avoir dû changer sa couleur de blanc à vert