Je suis tombé sur un chouette lecteur qui en plus faisait des belles illustrations, on a causé, et depuis, le chapitre est maintenant illustré par des illustrations de tagada johns et wtfpl (qui m'a pas laissé de moyen de le trouver facilement pour des commandes)
voilà les liens qui pointent vers ses chouettes illustrations :
Le sujet m'intéresse à deux titres : faire un antispam pour LinuxFr.org (bayésien ou liste de blocage) et pour le service share vers les réseaux sociaux (m'avait bien semblé aussi que la doc était cryptique/peu pédagogique.
La doc de bsky je sais pas si c'est une IA ou un humain qui l'a pondu, mais elle répond à des tas de questions sauf celles que je me pose.
J'ai pas bien dû comprendre les tutos que j'ai trouvé sur le filtrage bayésien car pour moi, la technique que j'ai implémentée n'est pas digne d'une probabilité bayésienne mais correspond à un bête cosinus similarité, que j'implémente nativement pour les dict avec archery.
Cette méthode est utilisée en dernier recours car elle présente moults faux positifs/faux négatifs (~5%, ~10%). Ce qui sur le nombre est beaucoup.
Situation actuelle : une liste de blocage utilisée a posteriori et manuellement d'une part (entrée de suivi quelque part que je ne retrouve pas), et un code pas mis en service d'autre part.
Le code BS à l'air bon au vu de mes (petites) connaissances. Je devrais dire «c'est pas bien d'être sur X», et que vu que t'es en logique de pousser et non de tirer du contenu comme je le fais tu te moques un peu du sporn.
Pour l'instant actuel, le spam est d'origine porn. Ce que je fais, c'est que j'attends que les modos BS l'étiquette porn et je fais la liste de blocage avec les alias bloqués. Ce qui m'oblige à temporairement corriger manuellement (d'où l'interface websocket de gestion).
Pour ton cas, ça nécessite de réagir à chaud, ce qui va à mon avis nécessité une interface d'étiquetage.
Un truc qui aide comme conseillé dans le précédent journal, c'est la détection de langue : un contenu tagué fr en anglais en général c'est pas bon signe. Et c'est pas mal de spam viré :)
Heureusement, les spammeurs varient pas trop leurs adresses d'envois et bien que notables sont faciles à bloquer (ma liste de blocage contient 243 entrées)
C'est l'outil que j'avais en tête, j'ai du l'utiliser par le passé. Et c'est effectivement un truc qu'il va falloir que j'utilise. +1, merci pour le lien.
Pour l'instant, j'essaie avant d'augmenter la complexité, de contrôler humainement les entrées et je tente de diminuer les degrés de libertés.
Je gravis les échelons de la complexité en shootant un problème après l'autre, là mon problème immédiat c'est :
1- de faire le word counter (compteur de mot) ;
2- me souvenir de comment faire un test de dépendance en Xhi2 et la page wikipedia me paraît plus obscure que mes souvenirs.
RIP = "rest in peace" (en) = "repose en paix" (fr)
Surtout que j'ai vécu la misère au Québec à cause des calques à l'anglais, genre y disent tu : prends ta chance (take a chance) quand nous on cause de tenter sa chance.
[^] # Re: développement de variable
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 3 (+2/-0).
merci, je vais voir si entre les fonctions inutiles j'ai pas oublié de "" une variable.
N'empêche que j'en apprends tous les jours, même en contournant le problème comme un … ostrogoth.
J'ai codé ça entre 2 sorties de mes femmes et j'ai peut être manqué un peu d'attention.
Ça fait du sens cette pratique de toujours double quotté les vars que je fais mécaniquement sans me souvenir pourquoi :D
ben vi, les bases. Faut les réviser souvent.
[^] # Re: Disciple de Mallarmé ?
Posté par Jul (site web personnel) . En réponse au journal mr_freeze.sh un utilitaire de capture de commandes paramétrée. Évalué à 2 (+1/-0).
Avec l'orthographe, je suis plus disciple des mals armés :D
[^] # Re: Bash méprisé
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 4 (+3/-0).
En fait, il y a un guide de programmation en bash fort bien fait et un analyseur de code statique* bien fait lui aussi qui reprend toutes les bonnes pratiques du susdit manuel.
et quand on suit les bonnes pratiques, c'est plus dur de se tirer une balle dans le pied.
[^] # Re: diag.dot
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 2 (+1/-0).
ici : je l'avais oublié
https://github.com/jul/FAIM/blob/main/img/diag.dot
[^] # Re: tss tss
Posté par Jul (site web personnel) . En réponse au journal FAIM : un système de monitoring en bash pour le fun à ne pas déployer en prod. Évalué à 3 (+2/-0).
sambaldap et ldaptools sont des cas à part :)
# ajout d'illustration
Posté par Jul (site web personnel) . En réponse au journal Vibe coding sous toutes ses formes (un nouveau chapitre de sherpa du code). Évalué à 2 (+1/-0).
Je suis tombé sur un chouette lecteur qui en plus faisait des belles illustrations, on a causé, et depuis, le chapitre est maintenant illustré par des illustrations de tagada johns et wtfpl (qui m'a pas laissé de moyen de le trouver facilement pour des commandes)
voilà les liens qui pointent vers ses chouettes illustrations :
vide coding sous opium
Intro
coder sous influence d'Alcool (et sexe)
coder sous influence de THC
[^] # Re: Génial ! J'en prends 3 ! (c'est pour offrir)
Posté par Jul (site web personnel) . En réponse au journal sqlramen un remplacement à sqlsoup. Évalué à 2.
tiens je te convertis cet exemple à l'utilisation de sqlramen
https://yahi.readthedocs.io/en/latest/misusing.html#graphing-data-from-a-database
Ça permet de faire un histogramme (top40), une série chronologique, et une heatmap.
Le lien vers la doc indique comment obtenir les graphs.
[^] # Re: typo ?
Posté par Jul (site web personnel) . En réponse au journal sqlramen un remplacement à sqlsoup. Évalué à 1.
Yep typo. Merci de la remonter.
Pour info une DB utilisable pour tester est celle ci (sqlite). C'est même celle que j'ai utilisée.
https://github.com/jul/scam/raw/refs/heads/main/aide
# plus court pour l'exemple 1
Posté par Jul (site web personnel) . En réponse au journal détourner yahi (grapheur de journaux web) pour faire des graphs de CSV. Évalué à 1. Dernière modification le 27 septembre 2025 à 20:17.
Y'avait quasiment un oneliner possible pour l'exemple 1
# oubli
Posté par Jul (site web personnel) . En réponse au journal détourner yahi (grapheur de journaux web) pour faire des graphs de CSV. Évalué à 2.
Pour l'exemple 1 il faut ajouter le fait que le fichier d'entrée est analysée comme suit ::
python test.py < ~/trollometre.csv
[^] # Re: Irremplaçable
Posté par Jul (site web personnel) . En réponse à la dépêche AWStats 8.0 est sorti. Évalué à 2.
J'ai écris un remplaçant (yahi) d'awstats.
Au moins, t'es sûr que le mainteneur existe, est en vie, et peut corriger les bugs, trololol.
En prime, il y a un livre du « making off » (l'envers du décors) : loser du logiciel libre
[^] # Re: Wut da fuk private licence
Posté par Jul (site web personnel) . En réponse au journal Faire son bot bluesky francophone. Évalué à 1.
Proposition acceptée, je te dédie ce commit. Tu veux un @ pour le texte de la licence ?
https://github.com/jul/trollometre/commit/960e3cdc7acb3a5cd1f7d41253ab80809397d579
[^] # Re: Wut da fuk private licence
Posté par Jul (site web personnel) . En réponse au journal Faire son bot bluesky francophone. Évalué à 2.
merci pour avoir écrit une licence libre que j'arrive à écrire de tête en convoyant tout ce que je souhaite convoyer :)
[^] # Re: .
Posté par Jul (site web personnel) . En réponse au journal la chronique du bot bluesky : rétrospective. Évalué à 3.
Évidemment.
[^] # Re: NB maj du README sous peu
Posté par Jul (site web personnel) . En réponse au journal J'ai niqué le p0rn : l'antispam qui marchait (étrangement). Évalué à 2.
J'ai trouvé des stats meilleures que les miennes en RRD et c'est là où l'on voit que je mesure uniquement les POSTS francophones.
[^] # Re: NB maj du README sous peu
Posté par Jul (site web personnel) . En réponse au journal J'ai niqué le p0rn : l'antispam qui marchait (étrangement). Évalué à 2.
La doc de bsky je sais pas si c'est une IA ou un humain qui l'a pondu, mais elle répond à des tas de questions sauf celles que je me pose.
J'ai pas bien dû comprendre les tutos que j'ai trouvé sur le filtrage bayésien car pour moi, la technique que j'ai implémentée n'est pas digne d'une probabilité bayésienne mais correspond à un bête cosinus similarité, que j'implémente nativement pour les dict avec archery.
Cette méthode est utilisée en dernier recours car elle présente moults faux positifs/faux négatifs (~5%, ~10%). Ce qui sur le nombre est beaucoup.
Le code BS à l'air bon au vu de mes (petites) connaissances. Je devrais dire «c'est pas bien d'être sur X», et que vu que t'es en logique de pousser et non de tirer du contenu comme je le fais tu te moques un peu du sporn.
Pour l'instant actuel, le spam est d'origine porn. Ce que je fais, c'est que j'attends que les modos BS l'étiquette porn et je fais la liste de blocage avec les alias bloqués. Ce qui m'oblige à temporairement corriger manuellement (d'où l'interface websocket de gestion).
Pour ton cas, ça nécessite de réagir à chaud, ce qui va à mon avis nécessité une interface d'étiquetage.
Un truc qui aide comme conseillé dans le précédent journal, c'est la détection de langue : un contenu tagué fr en anglais en général c'est pas bon signe. Et c'est pas mal de spam viré :)
Heureusement, les spammeurs varient pas trop leurs adresses d'envois et bien que notables sont faciles à bloquer (ma liste de blocage contient 243 entrées)
Graph d'activité sur le BS francophone
# NB maj du README sous peu
Posté par Jul (site web personnel) . En réponse au journal J'ai niqué le p0rn : l'antispam qui marchait (étrangement). Évalué à 3.
Salut,
le code manque de doc :)
La ligne avec l'antispam qui illustre ce journal est exactement ici
Mais, si personne n'est intéressé, j'ai pt'et pas besoin de mettre à jour le README ; c'est du travail :P
# antispam naïf
Posté par Jul (site web personnel) . En réponse au journal Sur le chemin de l'antispam bluesky. Évalué à 1.
Bon, je m'essaye avec les tutos du web à l'antispam (https://www.kdnuggets.com/2020/07/spam-filter-python-naive-bayes-scratch.html) sur ma base de connaissance et c'est pas fameux : https://gist.github.com/jul/0c9bc59c954bc5e9829599a6cd501b6b
Avec ou sans application des formules bayésiennes j’obtiens le même résultat
Autrement dit je tourne à entre 16 et 10% de faux positifs.
[^] # Re: Détection de langue
Posté par Jul (site web personnel) . En réponse au journal Sur le chemin de l'antispam bluesky. Évalué à 1.
C'est l'outil que j'avais en tête, j'ai du l'utiliser par le passé. Et c'est effectivement un truc qu'il va falloir que j'utilise. +1, merci pour le lien.
Pour l'instant, j'essaie avant d'augmenter la complexité, de contrôler humainement les entrées et je tente de diminuer les degrés de libertés.
Je gravis les échelons de la complexité en shootant un problème après l'autre, là mon problème immédiat c'est :
1- de faire le word counter (compteur de mot) ;
2- me souvenir de comment faire un test de dépendance en Xhi2 et la page wikipedia me paraît plus obscure que mes souvenirs.
[^] # Re: Faux ami
Posté par Jul (site web personnel) . En réponse au journal mon bot va mourir : RIP. Évalué à 3.
Surtout que j'ai vécu la misère au Québec à cause des calques à l'anglais, genre y disent tu : prends ta chance (take a chance) quand nous on cause de tenter sa chance.
Et c'est partout, insidieusement.
Sus aux faux amis !
[^] # Re: Bronsonisation
Posté par Jul (site web personnel) . En réponse au journal mon bot va mourir : RIP. Évalué à 4.
Il est bronsonisé :)
Il le méritait.
# bip .... biiiiiiiiip
Posté par Jul (site web personnel) . En réponse au journal mon bot va mourir : RIP. Évalué à 2.
Sa mort est effective.
Je le regretterais, autant que d'avoir rencontré une communauté -certes petites- que son histoire a pu un peu amusé.
Reste en paix, petit robot mort trop tôt (à l'âge de 1 mois) sans que j'ai eu le temps de faire mumuse avec toi.
[^] # Re: filtre bayésien
Posté par Jul (site web personnel) . En réponse au journal mon bot va mourir : RIP. Évalué à 1.
ça aussi c'est au dessus de mon niveau :)
Je suis une tanche.
[^] # Re: Bronsonisation
Posté par Jul (site web personnel) . En réponse au journal mon bot va mourir : RIP. Évalué à 2.
Raah, je ne saisis pas la ref :)
[^] # Re: yolo
Posté par Jul (site web personnel) . En réponse au journal C'est compliqué ; la vie avec mon bot. Évalué à 2.
trinquons :)
Je lève mon verre de thé glacé à l'argot et toutes ses nuances de mouises qui nous dessinent.