iens en vrac et à l'unité

Vous avez peut-être suivi mes billets de liens en vrac, sinon il suffit de savoir que je partage de temps en temps dans ces billets des liens vers des choses qui m'ont tellement plu que je veux les repartager. Une sorte de linklog, quoi.

Dans ce billet je vais décrire comment ces billets étaient construits et les changements que j'ai récemment déployés dans cette construction. Ce qui me permet d'annoncer la publication de nouveaux flux Atom, pour ceux qui voudraient suivre des étapes plus en amont de ces billets :

Mes sources

Historiquement, les liens les plus intéressants que j'ai rencontrés sont partagés sur canal IRC #gcu, que je hante avec bonheur depuis des années, et le reste vient d'abonnements RSS à des agrégateurs comme Slashdot et (beaucoup plus récemment) Lobsters.

C'est sur ce canal qu'iMil a partagé son utilisation de Twitter comme un gigantesque agrégateur de recommandations de liens, et c'est effectivement surtout dans cette optique que j'ai utilisé Twitter pendant des années, jusqu'à l'extinction des interfaces à mon goût.

Par un concours de circonstances fort opportun, la fin de mon passage sur Twitter correspond presque à la mise en place du canal #gcufeed, sur lequel un bot poste toutes les entrées des flux d'un jeu d'agrégateurs et de sites recommandés par les membres de #gcu : Hacker News, Phoronix, Ars Technica, OpenBSD journal, etc.

L'ancien système

Le fond du problème, c'est que les moments où je rencontre des liens vers des pages potentiellement intéressantes coïncident rarement avec les moments où j'ai le temps de lire des pages vraiment intéressantes.

Donc au début, le fonctionnement typique était de voir passer un lien dont le titre ou la description semble intéressant, l'ouvrir dans un onglet de mon navigateur préféré ou d'un autre, partir faire autre chose, l'oublier, et le perdre au redémarrage du navigateur ou de la machine.

Pour les liens tirés de flux RSS, j'avais tendance à garder en non-lus les liens à voir plus tard, ce qui les confond avec les liens non-lus parce qu'ils viennent d'arriver, et qui finissent souvent perdus quand le lien en question finit par sortir du flux avant que je le lise.

Pour palier ces pertes, et pour les fois où je rencontre des liens sur un ordinateur qui va bientôt redémarrer ou sur lesquels je ne vais pas les lire, j'ai commencé à recopier dans des fichiers textes des liens avec un petit morceau de contexte.

En pratique, mes ~/notes.txt sont des bazars innommables, ne sont pas synchronisés entre les différentes machines que j'utilise, et au lieu d'oublier les liens dans des onglets inactifs je les oublie dans des portions de fichiers qui ne sont pas affichées.

J'avais depuis un moment l'intuition que je ne suis pas assez sélective avec mes sauvegardes de liens. Ou dit autrement, que je garde pour plus tard plus de liens que je n'en suis capable de lire, et que ça pourrait s'accumuler indéfiniment si je ne réduisais pas le débit entrant.

D'un autre côté, un diablotin me chuchotait à l'oreille qu'en réalité ce n'est pas un problème de sélectivité, mais de rangement. Ou dit autrement, que j'aurais le temps de tout lire si j'avais une to-read list propre sous les yeux.

Et comme en plus l'un n'empêche pas l'autre, il faudrait faire des mesures de débits entrant et sortant pour s'attaquer au bon problème.

Enfin, j'ai eu le malheur de compter combien j'avais de liens stockés dans différents fichiers de texte temporaire, et dépasser deux mille avant d'avoir fait le tour de tous ces fichiers m'a donné le coup de pied aux fesses nécessaires pour développer un système plus propre.

Le gestionnaire de iens

Fin 2023 j'ai donc pris mon courage à deux mains et mon éditeur de texte préféré dans l'autre, et j'ai développé à l'arrache une bête appli' CRUD autour d'une base de données associant à chaque lien des notes pré-lecture, une description post-lecture, et des tags.

Je n'ai pas de screenshot sous la main, mais c'est une bête ligne de commande, qui interprète les lignes commençant par une parenthèse comme du code Scheme à interpréter immédiatement, et les autres lignes comme des notes copiées-collées dont il faut extraire un lien.

Les commandes permettent de consulter la base de données, modifier la configuration ou les entrées, et générer des flux Atom basés sur des sélecteurs SQL.

Il n'y a aucune protection contre l'injection SQL, puisque de toute façon la ligne de commande donne accès directement aux primitives sqlite du langage, et l'utilisateur en ligne de commande a le pouvoir absolu sur la base de données. Ce programme n'interagit pas avec le grand méchant internet, il se contente de générer des fichiers qui sont censés être servis ensuite statiquement.

Bilan à court terme

Une fois n'est pas coutume, je vais donner mon avis après une relativement courte période d'utilisation : ce gestionnaire est en production depuis le 1ᵉʳ janvier 2024, soit presque deux mois.

Si j'ai pu très facilement remplacer mon fichier texte bordélique par cette appli', j'ai eu plus de mal à me contraindre à faire passer dans l'appli' les liens dont je commence la lecture immédiatement après les avoir découverts. Je soupçonne qu'une partie de cette « consommation sur place » ait été négligée dans mes considérations passées.

En tout cas, le confort des liens bien rangés est indéniable, et rien que pour ça je suis contente d'avoir passé un peu plus de vingt-et-une heures à développer cette appli'.

Je ne crois pas que le temps soit une bonne métrique pour juger du bénéfice de ce programme, puisque le but est de ne plus perdre de liens, et donc de passer plus de temps à les lire.

Et ce n'est pas non plus une super métrique pour juger du coût, puisqu'il y a une partie de fun, ou au moins de satisfaction intellectuelle à avoir appris quelque chose de nouveau, dans le fait de repousser mes limites en Scheme et en SQL.

Et je me demande vraiment ce que va donner le versant « flux » de cette application, et surtout dans le succès que ces flux vont rencontrer auprès de vous.

Statistiques

Assez tourné autour du pot, un des buts de cette appli' était ouvertement de faire des statistiques sur mon rapport avec les liens, il est temps de regarder ça de plus près, même si j'aurais aimé plus de données avant d'essayer de conclure.

J'ai commencé avec un backlog de 36 liens, composés des dix liens d'En vrac 10 et de vingt-six liens que j'avais mis de côté pendant le mois de décembre 2023.

Au cours du mois de janvier 2024, j'ai ajouté 64 liens, et j'en ai lus 46, Soit environ un débit moyen de 2 /j à l'entrée et 1.5 /j à la sortie. En février j'en ai ajouté 71 et lu 68, ce qui est plus équilibré autour de 2 /j.

Je m'attendais à ce que le débit entrant soit plus gros, probablement parce que je me souviens plus facilement des jours fastes que des jours vides. Et inversement, je m'attendais à ce le débit sortant soit plus petit, probablement parce que j'ai plus l'intuition du nombre de séances lecture que des articles individuels.

Cela dit, les statistiques journalières peignent une image un peu plus nuancée :

Graphe en barres du nombre total de liens chaque jour

J'ai essayé de lisser tout ça (avec une convolution gaussienne) sur ±2 jours et ±7 jours, mais je ne suis pas sûre que ce soit tellement plus parlant :

Graphe en courbes du nombre lissé de liens ajoutés ou lus

Pendant la première moitié de janvier et pendant le mois de février, les débits entrant et sortant sont à peu près équilibrés, mais pas tout à fait aux mêmes valeurs, et toute la croissance est concentrée dans la deuxième moitié de janvier.

Je n'ai pas tellement d'explication à ces phénomènes, et c'est pour ça qu'il me faudrait un intervalle d'observation plus long pour conclure des choses intéressantes.

D'un point de vue purement subjectif, j'ai pu remarquer que mon humeur, ou quelque chose comme ça, influence mon jugement a priori d'un lien, et module ainsi le débit entrant.

J'ai aussi remarqué qu'avoir la pile à lire devant soi, avec une commande qui me donne directement sa taille, met une sorte de pression à ne pas la laisser croitre indéfiniment. J'ai du mal à évaluer dans quelle mesure je suis sensible à cette pression.

Je n'ai pas l'impression de décider quoi que ce soit en fonction de cette taille, mais je ne serais pas surprise qu'elle joue un rôle dans l'« humeur » qui influence mon choix de garder un article pour plus tard ou le laisser de côté définitivement.

Et il y a quelques séances de lecture que j'attribue directement à l'existence de cette appli' comme un pense-bête que j'ai une pile de trucs à lire.

La gestion des tags

Une autre révélation de cette appli' est que j'ai de gros progrès à faire dans l'attribution de tags à mes liens.

Comme en plus ces tags se retrouvent dans les flux Atom que j'annonce aujourd'hui, je ressens une espèce de devoir à taguer correctement, et je dois reconnaître que ce n'est pas encore le cas.

Donc soyez prévenus que ces « catégories » dans le flux vont être amenées à évoluer dans les temps qui viennent, même si je ne sais pas encore comment (toutes vos suggestions sont les bienvenues).

Au moment où j'écris ces lignes, j'ai trois sortes de tags :

Le but de ces tags à la fois de pouvoir retrouver un lien en se souvenant vaguement de ses caractéristiques (par exemple le tag reference pour une référence à reconsulter plus tard, éventuellement couplé avec un tag de thème), et de pouvoir filtrer les trucs qui vous intéressent (par exemple en se limitant à my-interest:5 pour les trucs qui m'intéressent le plus, ou en virant prog-lang si la programmation n'est pas votre truc).

Sauf que la mise en œuvre est très « organique », pour ne pas dire « bordélique » :

D'ailleurs pour l'instant tous mes liens pointent sur des ressources en anglais, d'où l'utilisation naturelle de tags en anglais, mais je mets quand même une description en français, comme pour mes liens en vrac.

Conclusion

Maintenant que vous savez comment je fais mes saucisses, vous allez peut-être être dégoûtés au point de ne plus jamais faire confiance à des liens que je pourrais faire tourner.

Si ce n'est pas le cas, vous êtes bienvenus dans ces nouveaux flux que je propose, pour rappel :

Encore une fois, tout ça est un premier jet assez expérimental, je vais probablement changer des trucs pour mon confort personnel, mais si vous avez des suggestions, aussi bien pour mon organisation que pour la vôtre, n'hésitez pas à m'en faire part.

En plus de ces petits réglages, je finirai peut-être par donner d'autres formes d'accès à ces liens, par exemple par ActivityPub (à l'exemple de inks) ou par AT.

Si vous avez lu jusqu'ici, vous avez droit à l'explication du L qui manque au début de certaines occurrences du mot « lien » : c'est le L de loser. Mais n'allez pas embêter @tedu, ce n'est pas de sa faute si je suis comme ça.

Puissent ces liens vous être aussi utiles qu'à moi.

Commentaires

Pas de commentaire pour le moment.

Poster un commentaire

Mise en forme historique : pour mettre en valeur un mot ou un groupe de mot, tapez une étoile de part et d'autre, sans mettre d'espace entre l'étoile et le mot, comme ceci : *mise en valeur*. Pour insérer un lien, mettez le entre crochets, comme ceci : [http://instinctive.eu/].

Mise en forme markdown : voir le guide détaillé, en résumé c'est le Markdown traditionnel, sans HTML ni titres, mais avec les tables PHP-Markdown-Extra.

Attention : les balises HTML entrées dans les commentaires seront affichées telles quelles, et non pas interprétées.

Autour de cette page

 

Autour de cet article

  • Publié le 29 février 2024 à 23h01
  • État de la bête : partageuse dans le désert
  • Pas de commentaire
  • Tag : Site

Derniers commentaires

Tags

Archives

Site-level navigation and features

 

Instinctive.eu

Contact

Sections

Validation

Copyright © 2008-2024 Natacha Kerensikova

Butterfly images are copyright © 2008 Shoofly