C’est juste une liste de ce que j’attendais en termes de ressenti du site. Le thème « à la Reddit » de Discourse avait déjà la plupart de ces fonctionnalités intégrées.
Topic List Previews a été la toute première implémentation de cette fonctionnalité.
Ce qui ne sert à personne. Ce message porte sur ma tentative de voir ce que je peux accomplir avec l’aide d’autres membres, et j’espère qu’il aidera d’autres personnes si possible ![]()
J’ai essayé d’aider, mais vous n’avez fait que vous braquer.
Bonne chance.
Désolé, je ne cherche pas à me braquer. J’ai répondu à tes questions, tu m’as envoyé un lien vers Starzen, mais ce n’est pas ce que j’essaie d’accomplir ? Ensuite, j’ai répondu que j’avais vu les posts que tu as partagés et qu’ils parlent de construire quelque chose. Moi aussi, j’essaie de construire quelque chose. Désolé que tu aies l’impression que je me braque, mais ce n’est pas le cas. Franchement, je ne sais pas trop où tu veux en venir.
Je remercie simplement l’auteur du sujet pour son inspiration (qui avait gentiment répondu à ma question concernant le plugin utilisé dans sa barre de navigation il y a quelques semaines).
Mon intention n’est pas de reproduire l’interface des réseaux sociaux, mais plutôt d’offrir quelque chose de plus confortable pour nos utilisateurs, et j’y travaille. Je partagerai volontiers mes découvertes, le résultat final et le dépôt quand le moment sera venu ![]()
Au fait, je partage quelque chose qu’il est toujours bon de garder à l’esprit et que certains utilisateurs peuvent oublier lorsqu’ils répondent ou interagissent : Core Rules of Netiquette
C’est vrai, donc je soutiens également les nouvelles tentatives de l’auteur et de tout le monde !
J’ai réfléchi à la question et c’est un peu plus nuancé que cela. Oui, tout est centré sur la discussion, mais la lecture est un facteur très important. Nous reconnaissons qu’il existe un vaste public de lecteurs/consommateurs, et j’adore l’idée de rendre cette expérience sans friction. Je suis un fervent défenseur d’un flux facilement personnalisable depuis longtemps.
La conception initiale de la fonctionnalité « personnalisez votre fil » est terminée.
L’étape suivante consiste à insérer de nouvelles tables dans la base de données, comme suit :
| Champ | Rôle |
|---|---|
user_id |
Le membre concerné |
category_id |
Catégorie mesurée |
impressions |
Apparitions significatives |
opens |
Sujets ouverts |
likes |
Sujets aimés |
replies |
Réponses effectuées |
dwell_seconds |
Temps de lecture cumulé |
affinity_score |
Préférence calculée |
updated_at |
Dernière recalcul |
Pour la première version, seule la table des centres d’intérêt est requise. La table des comportements sera ajoutée plus tard, une fois que j’aurai déterminé quelle approche adopter.
Aujourd’hui, j’ai vu quelque chose de similaire sur le forum Nodeloc : NodeLoc
Je ne suis pas familier avec cette approche, mais j’ai hâte de voir où cela va nous mener !
C’est vraiment impressionnant. J’ai beaucoup réfléchi à la route /r, mais je l’ai écartée à cause des limitations de catégories. Je me demande comment cela a été implémenté.
La sélection initiale du flux a été ajoutée et fonctionne, sans mise en forme pour le moment, comme indiqué ci-dessus, en attendant la phase finale.
La sélection s’affiche lors de la première visite d’un utilisateur sur le flux et ne peut pas être fermée tant que l’utilisateur n’a pas sélectionné 3 catégories d’intérêt. Une option « Tout sélectionner » a également été ajoutée.
Un onglet « Modifier les intérêts » a également été ajouté.
Le flux de personnalisation initial est terminé et fonctionnel. Pour l’instant, aucun pic d’utilisation du CPU, il est rapide et fonctionne comme prévu.
Il permet désormais de :
- Noter les sujets en fonction de 55 % d’intérêts, 25 % de fraîcheur, 10 % de popularité et 10 % d’aléatoire.
- Privilégier un sujet de découverte toutes les six positions lorsque c’est possible.
- Éviter trois sujets consécutifs de la même catégorie lorsque des alternatives existent.
- Maintenir la pagination indépendante des éléments supprimés ou consultés.
- Recharger et réordonner le flux après un changement d’intérêts.
- Inclure la fenêtre contextuelle fonctionnelle et l’option Tout sélectionner.
et ensuite, lorsque vous modifiez votre flux :
Je pensais finir le style avant de continuer.
La prochaine étape consiste à :
Optimiser ce que nous avons construit avant d’ajouter le suivi du comportement :
-
Limiter les sessions de flux en cache par utilisateur afin que les rafraîchissements répétés n’accumulent pas six heures de listes en cache.
-
Améliorer le mélange des catégories pour réduire la charge CPU sur les grandes files d’attente.
-
Mesurer le temps de chargement du flux et l’utilisation du cache.
Ensuite viendra le suivi du comportement : l’enregistrement des impressions réelles, des ouvertures de sujets et du temps de lecture. Le préchargement ne doit pas être comptabilisé comme de la lecture.
Initialement, nous collecterons ces signaux sans modifier l’ordre. Une fois le suivi fiable, nous pourrons introduire progressivement un pondération de 15 % basée sur le comportement lorsque les utilisateurs verront 30 à 50 publications.
J’adore cette initiative !
On pourrait même dire que « la lecture est fondamentale », ce qui était un article de blog fondateur lorsque j’ai commencé en tant que gestionnaire de communauté :
@Damian_Boon comment ce système fonctionnerait-il s’il n’y a aucune image jointe à un sujet ?
La démo utilise des images d’en-tête générées par IA, ce que j’espère ne pas voir devenir la norme ? Une image de temps en temps, c’est bien, mais une fausse image après l’autre finit par agacer assez rapidement ![]()
Il y a aussi un petit bug sur Safari Desktop, où les liens vers les sujets liés ne s’ouvrent pas :
Exactement de la même manière, c’est uniquement le viewport des sujets qu’il utilise. Vous verriez donc ce que vous voyez actuellement, mais sans l’image.
C’est un site de démonstration où tout le contenu est généré par IA pour ce cas de test.
Merci pour l’information, je vais m’en occuper plus tard car cela utilise un cache de la page d’accueil.
Avec ce que j’ai créé jusqu’à présent, j’ai besoin de tester la charge du serveur. J’ai un compte OpenRouter et je souhaite tester 10 bots qui publient simultanément. Quelle est la meilleure approche pour tester, par exemple :
Bots :
-
nom d’utilisateur : wtf_gaming
catégorie : Gaming
personnalité : gaming-news
publications_par_heure : 30
réponses_par_heure : 15 -
nom d’utilisateur : wtf_tech
catégorie : Tech
personnalité : tech-news
publications_par_heure : 30
réponses_par_heure : 15
Ensuite, faire en sorte que 10 bots connectés rafraîchissent la page /feed toutes les 30 secondes, par exemple.
Ou créer un petit service Python autonome qui communique avec Discourse et OpenRouter, plutôt que de placer les requêtes IA directement dans le processus Rails de Discourse.
Quelle serait la meilleure façon de tester ?
Ça a l’air vraiment génial. Est-ce que cela aboutira finalement à un nouveau thème ?
Un composant Thème avec le flux du sélecteur de catégories serait génial !


