Je suis Charlie

Autres trucs

Accueil

Seulement les RFC

Seulement les fiches de lecture

Mon livre « Cyberstructure »

Ève

Petits conseils lorsqu'on pose une question sur un forum

Première rédaction de cet article le 30 mai 2011


Il existe déjà plusieurs documents expliquant comment poser intelligemment une question sur un forum ou une liste de diffusion. Je ne vais pas prétendre les concurrencer, juste mettre en avant quelques points que je trouve particulièrement importants. Il m'est arrivé de voir une question mal posée, et de ne pas réagir parce que je n'avais pas le courage de rédiger une critique argumentée. Désormais, je n'aurai qu'à donner l'URL de ce document. Les exemples sont presque tous tirés du monde TCP/IP et visent particulièrement les gens qui configurent des services Internet.

Le texte de référence est évidemment celui d'Eric Raymond, « How To Ask Questions The Smart Way » (qui dispose d'une bonne traduction en français). (Et je suis sûr que mes lecteurs vont suggérer d'autres textes.) Vous avez tout intérêt à lire le texte de Raymond à la place du mien. Si vous insistez, voici les conseils qui me semblent à la fois particulièrement importants et particulièrement souvent violés.

Donnez les vraies informations. Il n'existe pas de raison impérative de dissimuler les noms et les adresses IP utilisées. Au contraire, si vous indiquez les vraies adresses, les lecteurs pourront les essayer plus facilement. Une des particularités de l'Internet est son ouverture : tout le monde voit la même chose et peut donc tester pour les autres. Si vous donnez les vrais noms, les lecteurs du forum ou de la liste pourront tester avec dig sur leur machine, et résoudre ainsi vos problèmes DNS. Si vous donnez les vraies adresses IP, les lecteurs pourront déboguer votre problème de routage avec traceroute et avec les looking glasses. Autre raison d'utiliser les vrais identificateurs : vous risquez moins de vous tromper (combien de fois ai-je vu des descriptions du problème où deux machines ont la même adresse IP...) Quels sont les cas où il est acceptable de ne pas donner les vraies noms ou adresses ?

  • Si le problème est purement théorique. Auquel cas, il n'y a pas de vrais noms ou de vraies adresses. On voit parfois des gens utiliser alors des noms qu'ils croient clairs mais qui peuvent entrainer la confusion avec un vrai domaine (oui, toto.fr existe vraiment) ou bien des adresses IP privées, tirées du RFC 1918. Dans les deux cas, il vaut mieux utiliser les identificateurs conçus pour cela : les noms d'exemples du RFC 2606 (example.org, toto.example, etc), et les adresses IP de documentation des RFC 5737 et RFC 3849 (192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24 et 2001:db8::/32). Vous évitez ainsi toute confusion avec des identificateurs réels.
  • Si les exigences de sécurité sont spécialement fortes, ou s'il faut protéger la vie privée de quelqu'un (un client, par exemple). Attention, j'insiste sur le « spécialement fortes ». On voit souvent des gens mettre des faux noms « pour des raisons de sécurité » alors qu'ils sont incapables d'expliquer pourquoi cela poserait un problème de sécurité.
  • Steeve Ortuani me signale un autre cas amusant où l'utilisation des vrais noms a eu des conséquences imprévues : le forum où était posé la question était bien référencé et les requêtes ultérieures dans un moteur de recherche, pour ce nom de domaine, amenaient à la page « Problème DNS avec example.com ». Dans un tel cas, une bonne solution est de dupliquer la configuration du domaine en cause vers un domaine bidon, ne servant qu'aux tests.

Donnez le maximum de détails sur votre environnement : système d'exploitation utilisé, version, type de réseau (Ethernet ? 3G ?). N'oubliez pas que vos lecteurs ne sont pas dans votre tête : pour vous, il est évident que votre machine 192.0.2.34 est un routeur Extreme mais les autres ne le savent pas.

Faites des schémas. Un bon croquis vaut souvent mieux que bien des discours. Comme il n'existe pas de norme largement répandue pour transmettre des dessins (les faire sur sa machine est les distribuer avec un service d'hébergement d'images ?), le mieux est d'utiliser l'art ASCII. Avec le mode picture de l'éditeur Emacs, c'est assez facile. En voici un exemple, avec indication des noms des routeurs (ce qui facilite beaucoup les discussions ultérieures) et des interfaces :

          TO THE INTERNET
        +--------------------+         Management network 198.51.173.0/28
        |SuperNet            |         +-------------
        |(upstream provider) |         |      
        +--------------------+         |      
               |                       |      
               | Serial0               | eth1 (.1)  
        +---------------+             +----------------+        
        | nelson        |             |    steve       |        
        |(cisco router) |             | (linux router) |        
        +---------------+             +----------------+                
           / |  | Ethernet0 (.65)            | eth0  (.68)           
          /  |  +----------------------------------------------      
         /   |                    Backbone  198.51.173.64/26
        PtP links                                             
       to customers            
        198.51.173.32/27           

Voir aussi mon article « Faire des schémas avec un langage et pas avec la souris ».

Soyez factuel : donnez les commandes exactes que vous avez utilisées, les résultats exacts de ces commandes. Faites du copier/coller, pas de la traduction ou du résumé. Rien de plus frustrant que de passer dix minutes à chercher à comprendre un message d'erreur, avant de se rendre compte qu'il s'agissait simplement d'une mauvaise traduction faite par le demandeur. Quant aux résumés, ils sont en général encore pires car ils reflètent les suppositions (souvent erronées) du demandeur, pas les faits précis. Donc, dites « Je tape ping www.toto.example et j'ai une réponse ping: unknown host www.toto.example » et surtout pas « Je pingue la machine mais il ne veut pas » (oui, ça fait rire mais tous les jours, sur les forums et les listes de diffusion, on voit des messages à peine meilleurs). Et si le message est trop long (certaines commandes peuvent être très bavardes) ? Utilisez alors un pastebin. En tout cas, ne faites surtout pas de copie d'écran : elles sont difficiles à lire, on ne peut pas copier/coller ce qui y est affiché, elles ne sont pas indexées par les moteurs de recherche, donc d'autres personnes ne pourront pas tomber sur votre rapport. Et votre fond d'écran n'intéresse que vous.

Version PDF de cette page (mais vous pouvez aussi imprimer depuis votre navigateur, il y a une feuille de style prévue pour cela)

Source XML de cette page (cette page est distribuée sous les termes de la licence GFDL)