En 2016, j’ai fabriqué à la main une version artisanale d’un mode de défaillance d’automatisation.
L’une de mes premières expériences en ML.
À l’époque, j’utilisais un site d’annonces et de génération de leads assez connu pour trouver des contrats de consulting, et ils publiaient encore les adresses e-mail en clair.
Ça m’a semblé être une occasion en or de booster mon business à l’échelle mondiale !
J’ai donc construit un système qui utilisait un graphe de prédiction statistique pour contacter les gens qui semblaient chercher le genre de consulting que je voulais proposer.
Idée plutôt simple.
Construire un graphe d’intérêts à partir de l’annonce. Déduire la taille de l’entreprise et le budget via la catégorie, la description et la qualité de l’expression de l’auteur. Ensuite, générer un e-mail de prospection adapté à ces intérêts et invariants, un truc qui puisse plausibly passer pour une réponse légitime basée sur un modèle réfléchi.
Facile, non ?
J’ai testé ça sur mon propre compte sur environ 7 000 annonces mondiales. Bon échantillon. Tout semblait nickel.
Mieux que nickel, honnêtement. Les messages avaient l’air haut de gamme. Réfléchis. Crédibles. Exactement la vibe qu’il me fallait pour ce que je faisais à l’époque.
Je ne me rappelle plus exactement combien de temps ça a pris. Je dirais que c’était un projet de taille M ou L, donc selon mes propres métriques, moins de 13 story points. Probablement une dizaine de jours après l’entraînement du graphe.
Mais il y avait une faille dans ma méthode.
Elle était là à l’époque. Elle est toujours là.
Quand un projet m’excite, je ne dors plus. Je peux tenir des jours, parfois des semaines, en ne dormant que quelques heures par session parce que je suis totalement lancée.
Alors, naturellement, à 4h du matin, j’ai déployé.
L’outil a démarré, a commencé à indexer les annonces et à envoyer des e-mails.
Puis je suis allée dormir.
Je me suis réveillée 3 heures plus tard avec un incendie généralisé dans ma boîte mail.
Les gens étaient furieux.
Pas confus. Non. Putain. Furieux.
Il y avait aussi un message de mon hébergeur me demandant si je m’étais fait hacker.
Je n’en avais aucune idée.
J’ai donc coupé le système et j’ai vérifié les logs.
C’était la catastrophe.
Le système avait envoyé à chaque lead des centaines d’e-mails de prospection uniques, personnalisés et totalement différents.
Ils étaient magnifiques.
Mais bordel.
Il y avait deux problèmes majeurs.
D’abord, la partie du système censée vérifier si quelqu’un avait déjà été contacté avait une erreur SQL que je n’ai pas vue. En pratique, ça voulait dire qu’un prospect pouvait recevoir un nombre illimité d’e-mails.
Ensuite, comme j’ai déployé alors que j’étais crevée à 4h du mat', il y avait une faute de frappe dans le cron job.
Au lieu d’envoyer un message toutes les 4 heures, ça envoyait toutes les 4 secondes.
J’ai réparé le système, je me suis excusée auprès d’autant de gens que possible, puis j’ai passé les 2 semaines suivantes à me débattre avec la bureaucratie. J’avais été signalée à Spamhaus et compagnie, et j’ai dû me donner pas mal de mal pour être retirée de ces listes.
Je crois que c’est la seule fois de ma carrière où j’ai atterri sur des listes de spam et que je le méritais vraiment.
Pas parce que j’avais l’intention de spammer qui que ce soit.
Mais plutôt parce que j’avais construit une machine capable d’industrialiser mon incompétence.
Le comique de l’histoire, c’est qu’après tout ça, le système a super bien marché pendant environ 1 an.
Aucun problème majeur.
Mais j’ai appris quelques trucs de cette expérience :
1. Ne jamais donner à un système des capacités d’envoi d’e-mails illimitées.
2. Ne jamais déployer quand on est fatigué.
3. Toujours faire des tests unitaires sur son code.