1 points par GN⁺ 2024-06-02 | 1 commentaires | Partager sur WhatsApp
  • Une notification de l’interface web d’Outlook 365 indique qu’un message qui n’existe plus ne peut pas être enregistré, mais peut être supprimé, ce qui crée une situation apparemment contradictoire
  • En désignant son objet par « this message » tout en affirmant simultanément qu’il n’existe pas, la notification met en évidence le problème de la référence à un objet inexistant
  • L’enregistrement est traité comme une action qui exige l’existence du message, alors que la suppression est présentée comme une action applicable même à un message déjà inexistant
  • La phrase « assurez-vous de copier le contenu avant de le supprimer » suggère qu’il resterait un contenu copiable même pour un message inexistant
  • Même si supprimer pouvait être un no-op sur le message lui-même, cela pourrait tout de même affecter l’existence du contenu ou l’accès à ce contenu

Les consignes contradictoires d’une notification Outlook 365

  • L’interface web de Microsoft Outlook 365 affiche la notification suivante
    • « This message can't be saved because it no longer exists. »
    • « It can only be discarded. »
    • « Make sure you copy the contents of the message before you discard if you want to use them later. »
  • La notification indique que le message ne peut pas être enregistré parce qu’il n’existe plus, qu’il ne peut qu’être supprimé, et que son contenu doit être copié avant suppression si l’on veut l’utiliser plus tard

La désignation par « ce message » et la non-existence

  • « This message can't be saved because it no longer exists » peut se comprendre comme l’idée qu’on ne peut enregistrer qu’un message existant, et qu’un message inexistant ne peut donc pas être enregistré
  • Le problème vient du démonstratif « this »
    • La notification désigne ce message tout en affirmant en même temps que ce message n’existe pas
    • Cela soulève la question de savoir si l’on peut référer à un objet inexistant

Un objet qu’on ne peut pas enregistrer mais qu’on peut supprimer

  • « It can only be discarded » ne se contente pas de mentionner un message inexistant, mais le traite comme un objet susceptible d’être supprimé
  • Enregistrer semble exiger l’existence du message, alors que supprimer paraît possible sans cette contrainte
  • Si l’on considère la suppression comme « l’action qui fait qu’un objet cesse d’exister », l’appliquer à un objet déjà inexistant peut s’interpréter comme un no-op
  • Dans cette interprétation, d’autres actions comme l’enregistrement exigent que l’objet existe, alors que la suppression pourrait s’appliquer même à un objet déjà inexistant

Le contenu d’un message inexistant

  • La phrase « copiez le contenu du message avant de le supprimer » complique davantage cette interprétation
  • Elle laisse entendre qu’un message inexistant possède tout de même un contenu, et que ce contenu peut être copié tant que le message n’a pas encore été supprimé
  • On peut donc distinguer un message inexistant mais pas encore supprimé, et un message inexistant déjà supprimé, selon que l’accès à son contenu reste possible ou non
  • Ainsi, même si supprimer pouvait être un no-op quant à l’existence du message, ce ne serait peut-être pas un no-op du point de vue du contenu

Deux interprétations possibles

  • L’action de supprimer un message inexistant peut être interprétée de deux façons
    • Faire en sorte que le contenu lui aussi cesse d’exister
    • Maintenir l’existence du contenu, mais rendre impossible l’appel d’une opération de copie sur ce contenu
  • Dans le second cas, le message n’existait déjà plus et le contenu continue d’exister, mais une fois supprimé il n’est plus possible d’y accéder ni de le copier
  • Cette notification montre une situation dans laquelle les conditions d’existence entre le message, le contenu, l’enregistrement, la suppression et la possibilité de copie paraissent incohérentes

1 commentaires

 
GN⁺ 2024-06-02
Avis sur Hacker News
  • Cela ressemble à un exemple du paradoxe du répondeur automatique, que les philosophes décrivent depuis les années 1970
    https://philpapers.org/rec/SIDTAM
    Selon la sémantique intuitive de « je », « ici » et « maintenant », l’énoncé « je ne suis pas ici maintenant » devrait toujours être faux lorsqu’il est prononcé, mais la phrase « je ne suis pas ici maintenant » enregistrée sur un répondeur semble vraie lorsque la personne qui parle n’est pas chez elle
    Si le sujet vous intéresse, cherchez “answering machine paradox” pour trouver davantage de discussions

    • Il semble y avoir ici beaucoup de réactions hostiles à la philosophie, mais cela ne devient un paradoxe que si l’on considère le langage comme un moyen de décrire un état statique de la réalité du monde
      Si l’on voit le langage comme quelque chose de pragmatique, qui oriente l’action, ce que la phrase doit transmettre est clair, donc il n’y a pas de paradoxe. Certains pensent qu’il existe, derrière les mots effectivement prononcés, un sens statique qui entre dans la conscience de l’auditeur ; d’autres estiment que le sens est généré par la personne qui écoute
      C’est une question très philosophique, âprement débattue même après Wittgenstein, et même les choses tenues pour acquises dans tous les domaines peuvent faire l’objet d’une réflexion rationnelle. Beaucoup d’ingénieurs semblent oublier, dans une vision du monde trop simpliste, qu’il n’y a rien d’évident ni de savoir absolu
    • Ne pas savoir distinguer la personne « je » de la voix enregistrée de cette personne n’en fait pas un problème philosophique. C’est plutôt de la pure bêtise
    • Rien à voir, mais cela me rappelle le film mexicain I Am No Longer Here que j’ai vu récemment. Je n’en avais jamais entendu parler, et il était étonnamment bon
      https://en.wikipedia.org/wiki/I%27m_No_Longer_Here
  • Un ordinateur peut arrêter le temps, puisqu’il n’est pas obligé d’exécuter des instructions. D’une certaine manière, cet exemple le montre
    Si l’on imagine un message physique écrit sur une feuille en train de brûler, les lettres peuvent encore être visibles alors qu’il est déjà trop tard pour éteindre le feu
    Si vous avez une bonne mémoire, vous pouvez figer ce moment métaphoriquement et mémoriser le contenu du papier. Sur un ordinateur, le message a déjà “brûlé” côté serveur, mais l’instant figé devant vos yeux peut être prolongé indéfiniment

    • Comme avec les conditions de concurrence, rendre quelque chose plus rapide ne change pas la situation : cela ne fait que révéler un problème préexistant. Ici, le problème existant est que la définition de l’existence du message est bancale
      Si l’on peut voir le message sur la feuille qui brûle, il faut considérer que ce message existe encore. C’est comme un message envoyé par signaux de fumée : il ne disparaît pas au moment où il est porté par la fumée
      Pour corriger cela, il ne faut pas dire que le message existe ou n’existe pas ; il faut dire qu’il est stocké dans X, ou qu’il a été supprimé de X
    • C’était possible à l’âge d’or des ordinateurs personnels, ou avec un Linux bien réglé. Mais les systèmes d’exploitation modernes tordent la nature même de la réalité pour redémarrer afin d’installer des mises à jour, vous faire changer un mot de passe vieux de déjà 120 secondes, ou vous déconnecter pour des raisons de sécurité parce que vous ne bougez pas la souris. Mieux vaut enregistrer ce message rapidement
  • Le problème, c’est que le message ne dit pas la vérité. Si vous pouvez lire le message, il doit manifestement exister. On ne peut pas lire un message qui n’existe pas, non ? Qui pourrait faire ça ? Est-ce que quelqu’un ici peut lire un message inexistant ?
    Le message aurait dû dire : « Ce message n’est pas stocké sur le serveur. Si vous ne copiez pas le texte pour le sauvegarder avant de fermer cette fenêtre, vous ne pourrez pas le récupérer depuis le serveur »

    • En général, on peut aussi considérer que la « non-existence » elle-même n’existe pas
      Cela me rappelle une conférence TEDx disant que l’univers, étant tout, n’existe pas. L’idée était que si l’on dressait la liste de toutes choses, cette liste elle-même ne ferait pas partie des éléments de la liste
    • C’est sans doute la formulation qui paraît la plus saine et logique, mais elle supprime l’ambiguïté philosophique de la notification originale. Cela dit, je préfère quand même la formulation initiale
    • Bien sûr qu’on peut lire un message qui n’existe pas. Par exemple un message halluciné par une IA, une capture d’écran trafiquée par quelqu’un dans Photoshop, ou encore le cas où l’on a copié le message dans un document texte avant de le supprimer
  • Ce message veut dire à peu près ceci : « Vous avez ouvert un fichier, mais ce fichier n’existe plus sur le disque, donc je ne peux pas le mettre à jour avec vos modifications. Vous pouvez jeter la copie chargée, mais envisagez d’abord de copier son contenu pour créer un nouveau fichier. Pour des raisons techniques, je ne peux pas le faire moi-même »

  • L’explication est vraiment excellente
    Si l’on devine ce qui s’est passé, cela semble désigner le message original sur le serveur et une copie locale. Les deux sont appelés “message”

    • Au fond, cela montre qu’une mauvaise habitude consistant à employer des termes imprécis peut conduire à une confusion totale
  • Enfin l’occasion d’utiliser mon diplôme de philosophie
    L’erreur dit que le “message” n’existe pas, mais un message n’est pas la même chose que du texte. Un message est un objet que l’on peut enregistrer ou jeter, et qui contient du texte
    Le texte existe encore et peut être copié, mais le message a disparu et ne peut plus être enregistré

    • L’auteur aborde aussi ce point. Il parle de contenu plutôt que de “texte”, mais c’est la même idée
      Cela revient à dire : « Un message inexistant possède du contenu que l’on peut copier, mais seulement tant que ce message n’a pas encore été écarté »
      Le message a disparu et ne peut plus être enregistré, mais on peut encore l’écarter. Peut-être même qu’on pourrait ne pas l’écarter
    • Il reste amusant que le texte d’un message puisse exister sans être le message lui-même. Dans un contexte précis d’Outlook, cela peut se tenir, mais cela montre que la conception conceptuelle du logiciel ne correspond pas à la manière dont nous pensons abstraitement le domaine
    • Dire que « le message n’est pas la même chose que le texte », c’est comme ces personnes dont le corps a disparu mais dont l’âme reste ? Je vois des messages morts…
      Cette distinction peut avoir de la valeur et elle est techniquement vraie. Mais le vrai problème est que “le message n’est pas la même chose que le message”. Si l’on parlait d’un seul message, ce serait devenu un excellent problème philosophique ; en réalité, c’est plutôt un problème plus ennuyeux où, parmi deux messages avec des textes différents, le texte de l’un appelle par hasard l’autre “ceci”
    • Ceci n’est pas un message ?
    • Si un message n’a pas reçu de forme physique, comme une impression, existe-t-il ?
      Si un message a cessé d’exister et que personne n’était là, la corbeille a-t-elle fait du bruit ?
  • Tout le monde ricane en voyant ça et se met à parler philosophie, mais en réalité il y a là, même indirectement, un point valable. Comment expliquer à un utilisateur non technique que les données du message ont été supprimées du serveur, mais qu’il existe encore une copie en cache côté client, qu’on peut donc récupérer d’une manière ou d’une autre ? C’est un problème assez difficile qui mérite qu’on s’y attarde sérieusement.

    • Et si on disait quelque chose comme : « Ce message a été supprimé du serveur de messagerie, mais Outlook le conserve encore dans le cache temporaire de cet appareil. Vous pouvez copier le contenu du message ou le supprimer du cache ; si vous le supprimez, il sera effacé définitivement. »
    • Il y a quelques bons libellés d’expérience utilisateur dans ce fil, mais dans cette app, mieux vaudrait ne pas essayer d’expliquer le mécanisme technique interne et formuler ça en se concentrant sur le résultat
      « Ce message a été supprimé, mais nous en avons encore une copie temporaire. Si vous avez besoin de son contenu, enregistrez-le avant de supprimer la copie temporaire. »
    • Expliquer ce qui s’est passé n’aide pas l’utilisateur. Il suffit d’expliquer les options dont il dispose
      « Désolé, ce message ne peut plus être enregistré. Si vous devez y accéder plus tard, copiez ce message avant de le supprimer. » suffit à peu près.
    • Plutôt qu’un message d’erreur, on pourrait le présenter sous forme de question à l’utilisateur : « Ce message a été supprimé du serveur. Que souhaitez-vous faire ? Le supprimer définitivement, enregistrer cette version sur le serveur, l’enregistrer comme fichier sur votre ordinateur »
    • La plupart des apps semblent finir par renoncer en essayant d’énumérer tous les cas où une incohérence peut se produire. J’ai déjà essayé de le faire « correctement », j’ai échoué, et j’ai compris que c’était vraiment difficile.
  • Il suffit d’ajouter sur le serveur dans la phrase pour corriger le problème
    Dire « Ce message n’existe plus sur le serveur et ne peut donc pas être enregistré » règle le problème.

  • Ce message est la colle qui relie le réel et l’irréel. Il existe, il a existé, il n’a jamais existé, et tout cela est vrai en même temps
    C’est le paradoxe de la création et de l’existence, de la dissolution et de la conscience.

  • C’est le message d’erreur le plus Microsoft que j’aie jamais vu.

    • SharePoint est censé être l’un des piliers de Microsoft, et pourtant la réponse à « comment trouver tous les sites SharePoint dont je suis membre ? » est celle-ci
      Rechercher SharePoint avec contentclass:STS_Site
      Je ne comprends pas comment c’est possible, ni comment des choses comme dans le post original peuvent arriver en production.
    • Ça ne durera que jusqu’à ce que quelqu’un le remplace par « Something went wrong ».
    • Pour être encore plus Microsoft, le message ne devrait-il pas dire que les produits concurrents n’existent pas ?
      J’ai déjà vu, dans Firefox et Safari, des messages Teams indiquant que certaines fonctionnalités n’existent pas et demandant de « télécharger l’app native Teams ».
    • Ce message se supprimera ensuite lui-même. Pour le conserver, enregistrez son contenu.
    • L’opération a échoué avec succès !