FRANCE MEMES

FRANCE MEMES

Logo bannière de FRANCE MEMES

FRANCE MEMES est un réseau social de partage de memes sur Discord. C’est un serveur dans lequel j’ai investi énormément de temps, à la fois pour former une équipe formidable d’une dizaine de personnes (administrateurs, modérateurs, développeurs, créateurs, service qualité). C’est parallèlement l’une des architectures logiciel dont je suis le plus fier.

Étant plutôt polyvalent à mes débuts en gérant à la fois le coté technique et humain de la plateforme, aujourd’hui, c’est plus de 20 000 utilisateurs qui sont sur le serveur, qui peuvent utiliser un système de likes pour aimer les memes des autres, de les reposter, d’avoir des notifications et de suivre des utilisateurs directement à l’intérieur de l’application Discord.


Historique

En juin 2020, je lance mon tout premier serveur public par hasard et naïvement comme j’ai l’habitude de faire, pour partager des memes sur Discord. À l’époque, je galérais à en trouver moi-même avec une vraie communauté française. Je me suis dit que construire un petit groupe autour de l’humour des memes, ça pourrait être cool. Je terminais bientôt le lycée, j’étais à fond sur l’humour Twitter et Twitch, et j’avais envie de le partager, pour rencontrer des gens qui pourraient aimer ce délire autant que moi.

Très vite, une centaine de personnes nous ont rejoints en un mois. Puis 200 le deuxième mois. 500 le troisième. Et ça n’a fait que grimper. C’était à la fois grisant et un peu fou : les gens qui débarquaient sur le serveur avaient l’air de chercher, comme moi, un endroit pour partager et découvrir des memes.

Mais c’était aussi la première fois que je me retrouvais à gérer une vraie communauté. Et surtout une communauté jeune. Je n’avais aucune expérience en modération, à part sur mes streams Twitch, mais là ce n’était plus 2 heures pendant un live : sur Discord, la modération, c’est 24h/24.

La communauté n’était pas forcément celle à laquelle je m’attendais. À la rigueur, ce n’était pas bien grave, l’humour reste subjectif. Mais la modération me prenait un temps fou. C’est là que j’ai réalisé qu’il fallait changer de cap. Je devais faire évoluer le serveur pour qu’il ressemble plus à un réseau social qu’à une simple commu Discord. Il fallait que je construise une équipe.

En septembre 2020, je quitte le lycée et j’arrive dans un nouvel IUT, où je rencontre Benjos. À la base, je cherchais juste à squatter une machine à laver. On habitait à deux rues l’un de l’autre, il avait du temps libre, et il cherchait un projet à faire. J’avais justement l’idée de développer un système de likes pour les memes envoyés sur le serveur.

Ni une ni deux, on s’y met. Et petit à petit, je me détache un peu de la gestion communautaire pour me concentrer sur la création d’un vrai réseau social… à l’intérieur de Discord. Je demande à des membres actifs de la communauté s’ils souhaitent participer à la modération, et je forme donc ma première équipe de développeurs et modérateurs du serveur.


Transformation en réseau social

Sur le serveur, plusieurs bots tournent, tous reliés à l’API Discord. Ils gèrent différentes tâches. Les deux principaux sont FRANCE BOT, qui constitue le cœur du réseau social, et WhatThePhoqueBOT, qui gère l’administratif de FRANCE MEMES, en plus d’être un chatbot personnel fun et adaptable à d’autres serveurs.

Entre 2020 et 2023, on a recréé FRANCE BOT pas moins de cinq fois, et WhatThePhoqueBOT, trois fois. Pourquoi repartir de zéro au lieu de faire évoluer les anciennes versions ? Parce que l’architecture qu’on avait au départ était franchement nulle premier degré mdrrr.

On se marre encore en repensant au code de l’époque, surtout quand on le compare à celui qu’on écrit aujourd’hui. Mais c’est justement grâce à ces projets qu’on a appris à coder proprement, Benjamin et moi. Lui s’occupait surtout de FRANCE BOT, moi de WhatThePhoqueBOT. Et comme le serveur ne cessait de grossir, il fallait que ces bots assurent : ils étaient devenus la colonne vertébrale du serveur. Ce qui nous démarquait, c’était cette idée de transformer Discord en réseau social. Une idée originale, mais surtout ultra-technique. À l’époque, ça ne se faisait pas.

On voulait offrir le meilleur service possible, c’était trop cool de voir le nombre de posts exploser, près de 30 000 memes par mois. Et franchement, c’était notre meilleur terrain d’apprentissage. On n’avait pas de plan d’avenir avec Benjamin, ptdr. L’IUT nous formait sur des technos datées (vive le DUT), alors on apprenait par nous-mêmes ce qui se faisait de mieux.

FRANCE BOT tournait à l’époque sur discord.py, et WhatThePhoqueBOT sur discord.js, jusqu’en 2022. Cette année-là, Rapptz, le seul mainteneur de discord.py, décide de dénoncer les pratiques de Discord envers les développeurs open-source et arrête le dev de sa librairie Python.

Gros coup dur pour nous. On venait de lancer la troisième version de l’architecture de FRANCE BOT, et on avait besoin de continuer à faire évoluer le truc. discord.py était la librairie la plus utilisée pour les bots Discord, mais elle s’est arrêtée à l’API v9, pile au moment où l’API v10 sortait… et on avait besoin de ces nouvelles features.

On s’est posé pas mal de questions : est-ce que des gens allaient reprendre discord.py ? Ou est-ce qu’on bascule tout sur discord.js, sachant qu’on maîtrisait déjà bien JS grâce à mon background ? On ne pouvait pas se permettre d’attendre plus longtemps, donc on est repartis sur une nouvelle base pour FRANCE BOT, la quatrième, en JavaScript.

Exemple de posts de memes sur le serveur FRANCE MEMES


Développement final de l’infrastructure

Jusqu’en décembre 2022, FRANCE BOT avait une architecture assez proche de celle de WhatThePhoqueBOT. Mais un autre problème s’est ajouté à la pile : MySQL pompait beaucoup trop de ressources sur notre serveur. Plus d’utilisateurs, plus de fonctionnalités… et pas un serveur énorme. On a tout tweaké, mais MySQL restait trop gourmand. On savait qu’on ne tiendrait pas comme ça.

Alors en décembre 2022, on a décidé de repartir pour une cinquième version de FRANCE BOT, avec plusieurs changements majeurs :

  • Passage de MySQL à MongoDB, parce que :
    1. MongoDB demande moins de ressources, c’est juste plus rapide.
    2. On n’avait pas tant de relations complexes à gérer.
  • Et quitte à tout refaire, on est passés en TypeScript pour une base plus solide.

Mais surtout, on avait en tête une architecture de plugins qu’on n’avait pas réussi à bien mettre en place sur la V4. C’était une super idée : discord.py la recommandait pour séparer les modules (c’était le cas en V3), mais discord.js préférait une approche plus monolithique. Résultat, avec toutes nos features, on se retrouvait avec une tonne de fichiers et c’était ingérable.

C’est là que ça devient stylé : on a appliqué la même archi plugin sur les deux bots. Marre de gérer les fonctionnalités à la main en supprimant des fichiers à droite et à gauche, avec le risque de foutre le bazar. Maintenant, tout est propre.

WhatThePhoqueBOT v3 est sorti en avril 2023, un mois avant FRANCE BOT v5, en mai 2023. Depuis, on n’a eu besoin de faire que des corrections mineures pour maintenir les deux bots. On a enfin une infra de confiance, solide et fiable, qui tourne pour nos 20 000 utilisateurs. Nos propres serveurs d’exécutions, backups, avec des démons.

Ça tourne tout seul !

Apprendre à savoir déléguer n’a pas été chose aisé au quotidien, mais aujourd’hui, avec 3 autres administrateurs (MaelysNath, Tériz et PozØr) et une belle équipe, je suis très bien entouré pour continuer le projet sans qu’il me prenne autant de temps qu’avant. J’ai réussi à mettre en place un réseau social ultra-automatisé directement dans Discord, en ce demandant si c’était possible, et on a réussi.

Le serveur s’auto-rémunérant pour permettre de payer les coûts d’utilisation et n’ayant pas de nouvelles grosses fonctionnalités techniques à ajouter. Je me permet de faire de la veille, des patchs et de la maintenance pour garantir la disponibilité, la sécurité et l’intégrité des données du service et de l’infrastructure. Tandis que les autres admins gèrent la modération, les événements et la gestion du contenu du serveur.


Un merci particulier à Benjos, pour m’avoir rafraîchi la mémoire et pour l’aide à la rédaction de cet article ! Et un grand merci à toute l’équipe de FRANCE MEMES ! 😁

Date d’écriture : 24/11/2024

Date de mise à jour : 16/04/2025