Donner aux gens quelque chose vers quoi créer un lien
(simonwillison.net)- Si vous voulez que les gens comprennent et partagent un projet ou une fonctionnalité produit, il faut d’abord une page web dédiée, plutôt que des explications répétées
- ChatGPT Code Interpreter est une fonctionnalité puissante, mais son nom et sa découvrabilité dans la documentation officielle ont été instables, si bien que les explications créées par d’autres sont devenues des liens plus utiles
- Les exemples de Claude Artifacts et de GitHub Codespaces·Copilot montrent que le partage et l’explication deviennent plus faciles quand une fonctionnalité devient un objet vers lequel on peut créer un lien
- Quand un concept est présenté sur une page distincte, comme Boring Technology de Dan McKinley, même une personne qui en entend parler pour la première fois peut rapidement en saisir le contexte avec un seul lien
- La valeur d’une page dédiée ne se limite pas à la visibilité dans les moteurs de recherche : elle évite aussi de répéter les mêmes explications dans les conversations sur le web
Pourquoi il faut des pages vers lesquelles créer un lien
- Pour tout ce que l’on souhaite voir compris et discuté par d’autres — projet, idée ou fonctionnalité produit — il faut une page vers laquelle créer un lien
- Les hyperliens sont le moyen de base pour prolonger les conversations sur le web : ils permettent de renvoyer vers une explication de référence plutôt que de réécrire la même chose à chaque fois
- Sans page dédiée, l’attention et le trafic de recherche peuvent partir vers des explications créées par d’autres, ou vers des pages qui se sont approprié les mots-clés
Le problème de découvrabilité de ChatGPT Code Interpreter
- ChatGPT Code Interpreter est une fonctionnalité qui permet à ChatGPT d’écrire et d’exécuter du code Python dans le cadre de ses réponses
- La fonctionnalité elle-même est puissante, mais si l’on ne sait pas comment l’activer via un prompt, il est difficile de se rendre compte qu’elle existe
- Quand on cherche Code Interpreter sur le site d’OpenAI, on tombe sur une documentation technique concernant une fonctionnalité d’API ou sur un ancien fil de forum, ce qui prête à confusion
- Pour présenter cette fonctionnalité, la page du tag code-interpreter sert de lien plus utile qu’une page officielle d’OpenAI
- Une vraie documentation a fini par être trouvée, mais son titre était Data analysis with ChatGPT et le terme « Code Interpreter » n’y figurait pas, ce qui la rendait difficile à trouver
- OpenAI a continuellement changé le nom de cette fonctionnalité : Code Interpreter, Advanced Data Analysis, puis Data analysis with ChatGPT
Des exemples de pages de fonctionnalités bien faites
- La fonctionnalité Artifacts de Claude dispose au moins d’une page d’aide facile à trouver
- En revanche, le billet d’annonce d’Artifacts a été partagé en même temps que l’annonce de Claude 3.5 Sonnet, ce qui rend plus difficile de le percevoir comme un point de référence clair propre à Artifacts
- GitHub propose des pages d’atterrissage séparées pour chaque fonctionnalité
- Quand une fonctionnalité dispose d’une page dédiée distincte, elle fournit un point de référence pour les liens et le partage
Boring Technology : quand un concept devient un site web
- Dan McKinley a forgé le terme Boring Technology dans son essai de 2015 Choose Boring Technology
- L’idée centrale est qu’une équipe de développement a une capacité limitée à résoudre de nouveaux problèmes, et qu’elle doit donc consacrer cette capacité aux aspects qui rendent le produit unique
- Pour le reste, il faut choisir les technologies les plus ennuyeuses et les mieux connues, dont les bugs et les limites sont compris et discutés en ligne depuis longtemps
- Cette idée est aussi présentée sur un site web, boringtechnology.club
- Quand quelqu’un ne connaît pas ce terme, partager un seul lien lui permet d’en comprendre le contexte en quelques minutes
Les idées personnelles aussi ont besoin de pages partageables
- Des idées comme baked data, git scraping ou prompt injection sont elles aussi présentées sur des pages que l’on peut partager facilement
- Cela dit, sans réserver un domaine distinct, le message « voici la page centrale vers laquelle créer un lien » peut être moins fort
- Une cible de lien claire améliore la capacité d’une idée à être partagée et discutée
Une valeur qui se manifeste davantage dans la conversation que dans le SEO
- L’un des objectifs évidents d’une page dédiée est le SEO
- Quand un utilisateur recherche une fonctionnalité produit, il doit arriver sur votre propre site plutôt que sur une page créée par quelqu’un d’autre
- Sa valeur la plus importante apparaît dans les conversations
- Pour expliquer un concept, plutôt que de réécrire un paragraphe, on peut partager un lien contenant l’explication de référence
- Si vous voulez que les gens comprennent et discutent une idée, un projet ou une fonctionnalité, vous devez créer la page web qui lui convient
1 commentaires
Commentaires sur Hacker News
rsync.net est un service qui sait bien faire ce genre de choses. Par exemple, je ne crois pas avoir déjà vu ailleurs une page du CEO.
Je ne sais pas si c’est vraiment utile, et je n’ai jamais eu besoin de transmettre quoi que ce soit au CEO, mais je ne suis même pas client et, dès que j’ai lu cet article, c’est cette page qui m’est venue en premier à l’esprit.
[1] : https://www.rsync.net/products/ceopage.html
Ce sont des pages conçues pour que le participant puisse les transmettre directement à son manager, sans avoir à inventer lui-même une justification professionnelle crédible.
À ce stade, on pourrait penser qu’OpenAI a embauché des rédacteurs techniques, mais d’après LinkedIn, il semble que non. Donc l’état de leur documentation n’est pas vraiment surprenant.
Je ne comprends pas pourquoi ils ne recrutent pas de profils dédiés à la documentation. Soit ils ne considèrent pas cela comme important, soit ils donnent froidement la priorité à la croissance plutôt qu’à la doc ; quelle qu’en soit la raison, ils se tirent une balle dans le pied.
L’article renvoie à https://boringtechnology.club/, un excellent jeu de slides sur le fait de réserver ses efforts d’innovation aux solutions réellement spécifiques.
Pour le reste, il faut aller autant que possible vers de la technologie ennuyeuse. Je vois trop souvent des équipes de développement essayer d’innover à tous les étages, puis perdre de vue la valeur qu’elles sont censées apporter. J’aimerais graver ce jeu de slides dans ma vision du monde.
Encore un bon article de Simon. Hier soir, j’ai intégré tel quel ce concept dans un nouveau projet. Je voulais montrer des éléments prouvant que la Google Gemini App censure yt-dlp alors que l’API Gemini ne le fait pas, tout en créant aussi un point d’entrée vers le projet et les raisons business dont parle Simon.
https://topicalsource.dev/chat/84a0d6dd-f66f-4f12-af17-5e99c...
J’ai aussi utilisé localStorage pour enregistrer la liste des chats publics visités. Quand on revient, on peut voir les autres chats qu’on avait lus, et c’est plus facile à retrouver que de fouiller son historique de messages pour se rappeler d’où venait le lien d’origine.
Les liens morts, c’est vraiment ce qu’il y a de pire. Quelqu’un ne pourrait pas faire une extension de navigateur qui hallucine avec GPT le site web correspondant à un lien mort ?
Les artistes se contentent souvent de lier des sites de réseaux sociaux, alors qu’un compte peut être suspendu et qu’un nom d’utilisateur peut changer. Les développeurs eux aussi « lient » des dépendances sans tenir compte du fait qu’un dépôt peut disparaître ; si personne ne l’a sauvegardé, le code source de cette version peut disparaître avec lui, une version de package peut être supprimée d’un registre, ou la documentation en ligne d’une dépendance peut s’évanouir.
[1] : simplement ajouter un nom + une version dans un fichier manifeste, puis l’oublier pour toujours. Même si on ajoute un cache, ce n’est pas un vrai miroir, et encore moins une manière de pouvoir reconstruire soi-même ses dépendances en cas de catastrophe.
Si les gens décrivaient un par un à quoi ressemblait la page autrefois, ou parcouraient le web à la recherche d’indices, ce serait une idée assez intéressante. On pourrait même faire revenir les bannières « en construction ».
J’aime le blog de Simonw. Depuis septembre dernier, je lis son blog en utilisant un interpréteur Python. Il a dit qu’il avait commencé à faire ça seul pour créer des applications complètes à la volée.
Mais je ne comprends toujours pas clairement comment faire. Je m’attendais à trouver une option ou un bouton simple, mais je n’ai rien trouvé. J’aurais pu faire davantage d’efforts pour comprendre, mais s’il y avait eu un lien pratique ou un tutoriel, j’aurais probablement continué à utiliser GPT au lieu de l’ignorer presque entièrement.
Dans le même esprit, le mème de réponse aux incidents de Square continue de vivre à l’adresse https://outage.party/.
J’ai vraiment détesté un bon nombre de produits Microsoft précisément pour cette raison. Les produits dont le nom changeait comme VSTS/VSO/Dev Ops, ou SharePoint, étaient particulièrement horribles. Un lien profond faisait 700 caractères, avec des dizaines de chaînes de requête en base64 et des chemins absurdes. Leur réponse du genre « Quel est le problème ? Utilisez un service de raccourcissement d’URL, non ? Les URL sont longues par nature, on n’y peut rien » me rendait fou.
En 2014, un outil interne de l’équipe affichait l’état des ressources système, et toutes les ressources et leurs états étaient dans une base de données SQL. Mais l’application web était une SPA d’avant l’apparition de trucs comme les routeurs : elle ne mettait pas à jour l’URL et ne prenait pas en charge les liens profonds. Pour envoyer par e-mail ou messagerie un problème concernant une ressource précise, il fallait expliquer : « va dans l’outil X, cherche Y, puis clique sur Z -> W -> M -> O -> K, et tu le verras là ». Ça m’énervait énormément de ne pas pouvoir simplement partager un état profondément imbriqué avec un lien comme https://X.com/Y/Z/W/M/O/K. Même après l’avoir signalé plusieurs fois, on me répondait seulement que « ce n’est pas une priorité et ce n’est pas si grave ».
Une fois, j’ai eu l’occasion de travailler pendant deux semaines sur quelque chose que je voulais corriger, et j’ai décidé de créer une alternative prenant en charge les liens profonds. J’ai aussi fait en sorte que tous les liens profonds renvoient leur contenu en JSON lorsqu’ils recevaient le préfixe
/api/. Ça a eu un énorme succès dans l’équipe et l’entreprise, et même si mon outil était beaucoup plus simple et moins riche en fonctionnalités, l’usage de l’outil X a chuté presque du jour au lendemain. Au fond, la plupart des gens voulaient un moyen de partager facilement des liens, plutôt qu’une « SPA puissante permettant de fouiller et d’enquêter en profondeur ».Un mois plus tard, l’équipe de l’outil X a annoncé en grande pompe par e-mail à toute l’entreprise qu’elle prenait en charge les liens profonds. Mais elle estimait que la simple fonctionnalité consistant à renvoyer des données JSON avec le préfixe
/api/n’était pas importante. Cinq ans plus tard, l’UI de mon outil était devenue vieillotte, mais le service lui-même a été promu service interne critique, car beaucoup d’équipes avaient construit de l’automatisation autour des URL avec le préfixe/api/. Au final, cette équipe a dû récupérer le code et en assurer la maintenance.En tant que fan de Simonw, je dirais un point que personne n’a encore relevé : les autres exemples où Simon fournit des choses auxquelles les gens peuvent faire des liens fonctionnent aussi très bien sur HN : https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
Simon résume souvent très rapidement des développements en cours dans l’IA que les personnes proches du sujet connaissent déjà, mais que le grand public ne connaît pas encore. En rendant rapidement les faits pertinents accessibles et faciles à citer par lien, il permet aussi aux personnes plus éloignées du sujet d’en discuter.
Je suis d’accord avec l’idée que « les hyperliens sont ce que le Web a de meilleur ». Plus précisément, ce sont les hyperliens et les URL.
L’URL est la pierre angulaire du Web. Elle permet de référencer des textes et d’autres ressources de manière précise, universelle — on l’espère — et durable. C’est toujours frustrant de voir que les gens ne perçoivent pas cette qualité. Par exemple, quand ils disent « cherche ça sur YouTube » au lieu de coller un lien dans un message. Donner à un texte une adresse Web permanente augmente aussi sa visibilité et réduit le besoin, pour l’auteur, de réécrire la même idée
Essai classique lié au sujet : Cool URIs don't change. [0][1]
[0] https://www.w3.org/Provider/Style/URI
[1] https://news.ycombinator.com/item?id=23865484
Concrètement, cela donne ceci. Si, pendant une conversation avec quelqu’un ou lors d’une séance de questions-réponses après une présentation, vous voulez dire : « oui, nous y avons aussi réfléchi, et des informations à ce sujet se trouvent sur acmeinitiative.example.com/skub », même si vous n’avez pas encore écrit l’article
/skub, vous pouvez décider sur-le-champ que/skubsera l’identifiant attitré de cet article. Vous l’écrirez plus tard, il apparaîtra à cette adresse, et les personnes intéressées pourront toujours le retrouver via cette URL. C’est pareil pour un texte écrit par quelqu’un d’autre ou une ressource externe : vous pouvez créer à la volée une URL dans votre propre espace de noms, puis la rediriger vers le lien d’origine quand vous aurez le tempsJ’ai entendu trop d’enregistrements, de podcasts, etc., où des techniciens pourtant compétents, qui possèdent clairement leur propre domaine, n’utilisent pas cette méthode. Le plus souvent, ils marmonnent une description qu’on pourra peut-être retrouver, ou tentent de se souvenir d’un titre et se trompent à moitié. Résultat : chaque auditeur intéressé doit gaspiller son propre temps et son attention à chercher, et collectivement, cela laisse s’échapper une énorme quantité d’énergie
FB bloque de nombreux sites, jusqu’à des blogs au hasard, au motif du partage de contenus protégés par le droit d’auteur ; reddit bloque tous les
.ru, plusieurs sites d’archives, les liens Telegram, etc. Twitter a bloqué certaines plateformes de blogs, et des sites plus petits bloquent souvent Discord. Le blocage de Discord peut se justifier, mais j’espère que cette tendance finira par pousser les gens à quitter ces endroitsD’abord, elle déclenche immédiatement le même malaise qu’un AOL Keyword. Ensuite, elle ignore complètement la notion de bulle de recherche. Avec la même requête, vous et moi pouvons obtenir des résultats très différents. Enfin, alors que les URL et les hyperliens existent précisément pour ça, il n’y a aucune raison de me faire faire du travail supplémentaire. Avec un lien direct, je peux voir exactement à quoi vous faites référence, sans devoir errer parmi d’innombrables vidéos de réaction
Mais beaucoup de sites et de services n’aiment pas ça, car ils y voient une intrusion dans leur territoire d’attention. En tant qu’auteur, si je mets un lien vers une idée que j’ai déjà formulée avec soin dans un billet de blog ou un livre, mon commentaire est supprimé ou censuré au motif que ce serait de la « promotion ». Sur HN ces temps-ci, pour éviter les sanctions, il m’arrive plus souvent de simplement copier-coller le texte original que j’ai écrit, plutôt que de donner un lien permettant au lecteur d’explorer plus en profondeur. Il existe un écart manifeste entre la bonne méthode « académique » de diffusion de l’information que nous prônons et la réalité de systèmes qui contrôlent l’expression