The Daily Shaarli
Ça fait plusieurs années que j'avais envie de tester YaCy. C'est désormais chose faite. \o/
YaCy est un moteur de recherche pour le web (attention, y'a d'autres types de moteurs de recherche genre indexation de fichiers). Pas un proxy devant Google comme l'était StartPage (devenu depuis un métamoteur de recherche, apparemment) ou le défunt Scroogle. Pas un métamoteur qui agrège les résultats d'autres moteurs existants comme Seeks ou Searx. YaCy fait tout lui-même : parcourir (crawler) le web, indexer les contenus, chercher dans l'index.
Mieux que ça, YaCy fonctionne en pair à pair : chaque ordinateur sur lequel il est installé rejoint un même réseau et contribue à stocker une partie de l'index commun voire il parcourt le web pour le remplir. Le seul bout de point central que j'ai identifié à première vue, c'est que le code du soft contient l'adresse de quelques serveurs qui seront contactés au démarrage de l'instance YaCy pour récupérer rapidement une liste (incomplète, imparfaite, etc.) de nœuds YaCy. Car l'initialisation avec seulement la DHT, ça prend du temps. Un peu comme les trackers BitTorrent qui existent par commodité. Ils ne sont ni indispensables ni immuables.
Du coup, on retrouve les caractéristiques désirables habituelles : logiciel libre, sous le contrôle de l'utilisateur, P2P, pas censurable, etc.
Notons que la participation au réseau P2P est facultative : YaCy peut servir à indexer, en privé, un intranet. YaCy peut servir à proposer un moteur de recherche sur votre site web personnel en lieu et place d'un "applet" qui lance un « site:monsite.exemple mot-clé_saisi » sur Google.
Comme la plupart des applis en Java (on retrouve ça avec Kafka, Storm ou Zookeeper, par exemple), la verbosité est mal configurée par défaut, ce qui fait que YaCy consigne absolument tout dans ses logs : quel pair lui dit bonjour, envoi/réception de fragments de DHT, etc. Bref, ça bourrine bien le support de stockage. Et il n'y a aucune option dans l'interface web pour changer ce comportement. Ma méthode :
sudo sed -i 's/INFO/WARNING/' /var/lib/yacy/LOG/yacy.logging
sudo systemctl restart yacy
Quelques comportements difffèrent de ceux de Google :
Dans les résultats d'une recherche, je n'ai pas compris comment fonctionnent les boutons « recommander » / « supprimer ». Ça n'influe pas durablement (entre deux recherches successives des mêmes termes) l'ordre ou la présence des résultats. :/ C'est peut-être réservé au mode intranet / moteur de recherche pour un site web donné ?
Tout nœud YaCy est amené à stocker une petite partie de la DHT. Cela se fait en arrière-plan ainsi que lors des recherches, ce qui fait qu'un contenu ajouté dans l'index global par une machine n'est pas perdu lorsque cette machine disparaît du réseau YaCy. Testé et approuvé : 2 mois après le départ de ma machine du réseau YaCy, le contenu original qu'elle avait ajouté à l'index est encore présent. Chaque machine participante au réseau est aussi amenée à publier sa liste de pairs, ce qui permet de l'utiliser comme point d'entrée dans le réseau.
Le « .yacy » n'est pas un TLD au sens ordinaire du DNS, il n'y a pas de serveurs qui font autorité dessus. Pour les utiliser (genre nom_de_mon_nœud.yacy), il faut configurer votre navigateur pour utiliser votre instance YaCy comme un proxy HTTP (localhost:8090). Voir https://web.archive.org/web/20130325194934/http://yacy-forum.org/viewtopic.php?f=2&t=255 (oui, le forum a changé d'URL, c'pour ça que j'utilise archive.org).
La section « Index Deletion » de l'interface d'administration peut faire peur genre on peut croire à une possibilité de censure ou, en tout cas, à une possibilité pour quelqu'un qui a apporté du contenu au réseau, de le retirer, de gré ou de force. D'après mes tests, dans le mode "freeworld" (participation au réseau P2P YaCy), la suppression a bien lieu dans l'index local mais elle n'est pas propagée dans le réseau. Donc un résultat de recherche est ajouté à nouveau dans l'index à la prochaine recherche, quand le réseau sera a nouveau consulté. Je pense que cette fonctionnalité est utile dans les modes intranet / recherche privée.
Malgré ce que le projet raconte dans sa FAQ ( http://www.yacy-websearch.net/wiki/index.php/En:FAQ ), je pense qu'il faut prendre les devants et héberger des instances YaCy mutualisées, ce qui rendra le flicage inopérant.
Truc rigolo : YaCy peine vraiment à analyser la structure d'un shaarli et ne parvient pas à récupérer le permalink : il y ajoute toujours un « = » final, ce qui ruine forcément la validité de l'URL. :-
En résumé : je suis plutôt impressionné par la masse de taff abattue, par le fonctionnement P2P mais la pertinence des résultats rend un usage au quotidien vraiment difficile à envisager. Le problème, ce n'est pas de crawler toujours plus de contenus puisque même avec du bon contenu indexé, les résultats ne sont pas pertinents. Le problème c'est l'algo de construction et d'enrichissement de l'index et de tri des résultats. N'est pas Google qui veut. :(
Héhé :)
Jeter un disque défaillant ? Nan jeter toute la machine. Nan, jeter toute la baie. Nan, remplacer toute la salle. Nan, tout le datacenter.
Pale Moon est un navigateur web open source dérivé de Mozilla Firefox. Il dérivait à l'origine de celui-ci en proposant des optimisations de compilation pour améliorer les performances, mais s'en détache depuis progressivement en réintroduisant des fonctions retirées par Mozilla comme la barre d'état et en refusant d'adopter des changements introduits en vue de la nouvelle interface dite Australis ou les DRM HTML5, au point de pouvoir être qualifié de fork.
Suite à mon avis sur IceCat, Dudorino ( http://dukeart.netlib.re/shaarli/ ) m'a signalé l'existence de Pale Moon.
C'est vrai qu'il correspond plus à ce que je recherche : les fonctionnalités craignos (social API, visionneuse PDF, webRTC, etc.) ne sont pas dans le code. Voir https://www.palemoon.org/technical.shtml . Pour l'instant, le site web du projet n'évoque pas EME ou la publicité à l'ouverture d'un onglet, seules des entrevues du dev' principal en parlent.
Après, forker le moteur de rendu (Gecko), je ne suis pas convaincu. Genre implémenter toutes les nouveautés permanentes du monde web, ça prend du temps.
Toutes les extensions existantes sont compatibles.
Vu les releases notes, il y a visiblement un suivi de la sécurité. Ce n'est pas packagé dans Debian mais il y'a un dépôt Debian.
Y'a une petite 60aine de contributeur-rice-s dont 6 vraiment actifs/actives ( voir https://github.com/MoonchildProductions/Pale-Moon/graphs/contributors ).
D'après https://www.palemoon.org/redist.shtml , y'a quelques esbroufes autour de la licence de redistribution des binaires (pas d'usage commercial, usages restreints, attention à la marque, pas d'altération, pas de bundle, etc.).
Rumor: "Pale Moon has redirected search engine revenue to its developer"
TRUE
Developing Pale Moon is a full-time job (and then some). It is not a hobby; it is a profession. The browser is free for anyone to download and use, and keeping development up, keeping myself supplied with food, paying rent, etc., and paying for the more than a few servers to provide all additional services needed for its presence on the internet (like the website server, release download mirrors, blocklist server, Pale Moon Sync, the forum, automatic update server, ftp, mail server, CDN) all costs money. This money has to come from somewhere besides donations, because donations simply do not cut it. There has to be enough on the other side of the equal sign. What did you expect; that I would continue to fund the Mozilla Corporation from an independent browser by keeping the search parameters to their Mozilla ones?
In addition, every single other alternative browser out there does this to pay for itself, as well.
