# CI/CD, Testing, Storybook & ChatGPT - Baptiste Jamin & Julien Le Coupanec Channel: SaaS Makers Video: https://www.youtube.com/watch?v=iTOlGZZ9-VI Duration: 59 min Language: French Words: 11674 Transcript page: https://viewrankai.com/tools/youtube-transcript/iTOlGZZ9-VI --- [0:00] salut à tous bienvenue dans un nouvel épisode de sasmaker aujourd'hui je suis en compagnie de Baptiste salut Baptiste bonjour Julien bonjour la communauté et on va parler d'un sujet intéressant qui est le CI tout ce qui est intégration continue tout ce qui est Sidi développement continu etc et donc j'ai une question pour toi Baptiste est-ce que tu es plutôt teen si ou team fuck le ciel fut une époque j'étais testé ces douter c'est plus vraiment le cas maintenant je pense que je suis rentré de l'autre côté et je suis plutôt en mode il testait c'est pas si mal ouais pour quelqu'un qui a jamais entendu parler ce terme bah le ciel c'est [0:33] continue aussi intégration je pense que pourquoi ça se nomme là c'est que enfin faut s'imaginer à l'époque les grandes entreprises par exemple j'ai bossé chez Orange le terme d'intégration continue c'est compliqué tu vois c'est-à-dire qu'en fait c'est des boîtes qui faisaient du logiciel pendant parfois un analyse et en fait il rédise un jour et en fait on se rend compte que ce qu'a été développé ça marche pas du tout en prod et en fait ce qui est génial aujourd'hui avec les outils modernes et c'est les principes aussi de développement continu d'intégration continue c'est qu'en fait tu peux boucher et t'assurer que ce que tu as fait c'est conforme à ce que attendu et [1:10] que ça doit vraiment marcher en prod d'accord donc c'est totalement compatible avec des modèles qui se veulent un peu agile où on va du coup déployer peut-être plusieurs fois par semaine et non plus faire les relises par jour après plusieurs fois par jour on doit développer enfin pousser dix fois par jour quelque chose en production et personne ne voit jamais rien pourquoi parce que tout ça on a pu tester en amont et on sait que le code qu'on envoie en prod et bah il fonctionne en fait donc ça veut dire que vous avez par exemple une sorte de stageging qui permettrait de pouvoir donc ça sera un événement qui serait [1:39] avant la production un empêcheur de serveur de test qui permettrait de pouvoir alors nous on n'a pas ce système là en fait on n'a pas de pseudo-prodes qui serait en fait un un staging par contre ce qu'on a c'est qu'on peut totalement développer en local comme c'était la prod et qu'en fait littéralement toute la prod elle est elle est simulée très très bien une manière hyper efficace en local on a vraiment accès à tout et il y a rien qui existe en prod qu'on puisse répliquer en local j'avais une question d'ailleurs parce que c'est quand j'étais tombé sur ces stratégies de si il y a aussi on [2:13] entend souvent parler de siaction continue se déploiement et tu définirais comment la différence entre les deux si il y a une différence il y a deux manières de voir le truc le de continuer aussi une sécurité le principe c'est vraiment de s'assurer que ce qui a été développé est conforme que la prod notamment et il y a un autre mécanisme on va dire qui est le le principe de développer en continu des fonctionnalités et pour moi c'est plutôt ce que tu disais qui se rapproche aux méthodes quoi ouais c'est vraiment c'est ce concept de pouvoir tester très vite pour pouvoir si quelque chose fonctionne et pouvoir réajuster le seul que toi [2:48] maintenant tu es proteste et que tu testes tout tout tout je pense que nous d'ailleurs on avait déjà parlé dans un épisode mais c'était que même plus loin maintenant dans les tests il y a différents types de tests je pense qu'on peut prendre limite pour répertorié on a tout ce qui est dans un premier temps les tests unitaires donc les tests unitaires ça va être des tests qu'on va faire sur des fonctions donc un bon exemple c'est imaginons qu'on est par exemple des packages qui contiendraient des helpers donc ça des fonctions de base on va définir des tests pour tester chacune de ces fonctions là et s'assurer [3:14] que quand on envoie tel information en entrée on va obtenir tel résultat en sortie on a ensuite derrière des tests d'intégration c'est une autre forme de test ça va être plutôt une un test qui va viser à tester un assemblement de fonction c'est souvent sur les api par exemple on va tester une route c'est à dire que cette route d'API qu'on va appeler on va vérifier qu'avec les bons paramètres elle retourne bien en réponse tel type d'information et du coup c'est une sorte d'implication de plusieurs fonctions tu vois donc parce que dans ta route dans ton API elle va appeler peut-être ton une fonction du modèle etc [3:43] donc c'est un deuxième type de test et on a effectivement un troisième type de texte qui serait les tests n to end qui sont des tests fait essentiellement avec des outils comme si presse comme bah poupée tire sélénium toute la ribambelle de Brothers qu'on peut voilà ça je trouve c'est absolument génial de les faire et les environnements de Cyril sont cools pour ça parce que du coup on peut imaginer un scénario ou va coucher du code sur GitHub ou même avant de déployer en production par exemple on va voir tous ces tests qui vont se faire donc d'abord les tests de screenshots alors ça c'est encore un autre type de [4:16] test tu parles de des modèles un peu la storybook ben nous on s'est rendu compte que on avait des petits soucis sur notre site c'est que en fait on a quand même des milliers de pages des problèmes de responsive des trucs qui marchent grand mais pas Firefox ou pire bah Safari et en fait du coup on utilise Percy qui a été racheté par brotherstack c'est un truc qui te permet de thé pendant 10 minutes de louer un device Android 4.4 et de tester ton site sur un ou ton app ton navigateur exactement dans un alligator qui est dans Cloud et ben en fait persy c'est le même principe mais [4:56] pour une app ou un notamment un site internet ou chez nous en fait le CIA il va automatiquement prendre plein de screenshots de pages qu'on a fait qu'on a défini et il va faire un DIF entre ce qu'on avait avant et ce qu'on avait non donc en fait tu vas dire bah là il y a une nouvelle zone changer la carte graphique qui existait pas avant est-ce que ça tendu ouais c'est attendu et ça nous permet de réduire les erreurs en prod en fait les mecs qui ont créé storybook qui est un librairie qui permettent de pouvoir tester des composants en fait d'aller devoir sous différentes formes j'ai oublié le nom de [5:30] leur boîte mais c'est exactement ce qu'ils font en fait et en gros ils sont tout un système où à chaque déploiement ils vont prendre des screenshots de chaque composant en fonction des propres que tu lui as fourni et derrière ils vont voir ils vont alerter en fait par zone rouge si patient intention là tu vois le c'est plus du tout la même chose c'est plutôt la même chose qu'avant est-ce que c'est volontaire alors je sais que toi tu es un gros fana de storybook est-ce que tu peux expliquer ce que c'est que story alors storybook c'est d'ailleurs un composant qui pourrait être intégré totalement dans un [5:56] système de d'intégration continue le concept storybook c'est de pouvoir avoir une sorte de catalogue qui inclurait tout un tas de composants à tous nos composants en fait de l'application donc ça va tous nos boutons etc et l'idée c'est de pouvoir facilement simuler ce composant là dans différents scénarios quand il a en fonction des propres qu'on lui envoie donc c'est très utile aussi pour le développement parce que on peut très facilement avoir une sorte de page où on va développer en fait c'est vraiment une philosophie où on va isoler un composant et on va travailler sur ce composant là et après derrière on va l'intégrer dans une page [6:25] avec sa marche j'imagine aussi bien que du réac du réac que du vu n'importe quel framework surtout même react toi tu avais plein de composants tu refais tes composants faut les ils sont compatibles storybook de base en fait c'est assez bien fichu parce que alors déjà c'est pour savoir c'est très compatible avec react et next JS donc un framework basé sur yacte mais survie aussi velt etc sur Next un peu moins bah du coup j'étais un peu merdé mais grosso modo c'est ça prend ton composant et toi tu as tu as une sorte de d'interface qui permet de pouvoir en code dialoguer avec et t'as rien fait en fait parce que il [7:01] comprend ton composant il arrive même à détecter les profs ce que tu lui as fourni etc tu peux voir alors je sais que ça ça existe en Android et maintenant sur Xcode Swifty je crois ou en fait tu peux coder et voir en live l'interface donc j'imagine que toi tu peux en live tu as des énigmes sur tes propres et tu veux dire en fait mon composant il est en mode small médium large tu vas voir ok ça c'est trop bien c'est des contrôles ils appellent ça des contrôles en fait et tu peux du coup définir et là c'est trop bien ouais parce que du coup [7:30] imagine tu as des scénarios je sais pas tu veux tester qui comment un composant il rentre dans un dans un scénario un petit peu complexe ou c'est un utilisateur payant qui n'a plus de crédit sur son compte etc tu vois bah là en fait automatiquement tu vas pouvoir le faire très facilement en jugeant les contrôles sans devoir dans ton interface en local créer un mec qui a un qui a plus de crédit car quelqu'un payant etc donc c'est c'est vraiment un petit où on m'a isolé un composant ou un groupe de composants et on va travailler dessus et l'avantage de ça c'est à plusieurs avantages c'est très utile [7:58] pour les front [8:04] [Musique] [8:48] [Musique] [8:56] [Musique] parce que tu as deux développeurs qui ont pris l'initiative en fait ils sont ils ont recodé le volume ça te permet de imaginons ce qui arrive tout le temps dans un sas qui grossit vous va crise par exemple vous avez un dashboard externe admin et vous avez une application et puis vous avez sûrement pas troll etc tous ces trucs là en fait tu pourrais très facilement et storybook créer une librairie qui fait que tu as tout tes composants qui sont codés dans un seul endroit et facilement en fait les intégrer dans le faire en faisant tes composants en tant que lib view reak mais là l'avantage et que c'est encore [9:30] plus portable j'imagine carrément tu utilises ce storybook depuis quand à peu près j'ai commencé au mois de juin parce qu'en fait j'étais dans une problématique où je devais faire une migration et on peut même parler de ça c'est très intéressant je pense c'est un sujet qui est tous les SAS passe par là je devais migrer de Next do NX3 et je savais que c'était un long travail parce qu'ils sont passés sur tapescript ils sont passés obligés de tout passer en tête ah franchement ouais c'est peut-être obligé en vrai [Musique] ou pas si elle Test pas test je pense qu'il y a la team aussi typescript et pas typescript je pense [10:03] que ça fait uneanimité maintenant de toute façon en vrai tu as pas le choix tu as pas le choix en fait plus tard dans le podcast mais on est dedans et si il y a le choix ok mais en gros le concept pour venir à cette problématique c'est que je devais tout migrer un axone X3 et c'était un sacré bordel parce que du coup j'avais beaucoup de choses qui cassait et qu'il fallait adapter donc j'ai profité du mois d'août et du me l'étape ou c'est plus calme pour pouvoir faire ce chantier là sachant que je pensais le finir en un mois mais en fait le la [10:29] vigilance ça fait deux mois et demi que je suis dessus et j'ai bientôt fini donc c'est les mis toujours des process longs les migrations d'ailleurs je pense même que un conseil pour faire n'importe que je me serais donné c'est quand tu as du cash il faut absolument dans ce genre de process ne pas hésiter à l'utiliser pour prendre des freelances pour céder sur des migrations parce que le problème de ces migration là c'est que souvent c'est bloquant donc tu as des clients supports qui peuvent te demander d'autres fissures etc et toi tu peux pas trop peut-être ta pas trop envie de démarrer une grosse feature sur quelque chose tu [10:57] sais que tu vas devoir la migrer derrière pour accélérer donc en général c'est plutôt des process où tu dis vas-y bah on migraphe et après derrière on refera des grosses fissures et du coup si c'est un process qui prend du temps c'est bloquant donc vaut mieux payer je sais pas des freelances qui soient quali qui leur dire ça va être intense on a tant de composants à migrer on migre mais je trouve ça chiant moi les frais moi qui casse tout d'un truc par exemple j'ai trouvé ça très très bien avec vue 3 ils avaient fait un truc qui s'appelait vu deux points 6 et non [11:26] il y avait vu trois mec un mode compact et en fait la en fait juste tu pouvais mettre du 3 activer le mode compact et c'est bon ça marche et petit à petit tu pouvais composant par composant migré et finalement ça allait quoi et mais par contre là le problème de vue c'est qu'ils sont mis tout en sur la composition Happy et donc tu as tout de suite beaucoup plus de travail quand tu veux respecter toute leur histoire de type script aussi j'imagine oui en fait la composition moi j'étais un très grand fan aussi l'option API avec les objets le problème de ça c'est que la [11:54] composition API de survu JS pour ceux qui l'utilisent c'est beaucoup plus complémentaire avec tapis en fait je suis pas anti tape script mais comme Saverne Microsoft il y a des trucs dans le top 7 qui me font penser beaucoup au s'échard je crois que c'est le mec qui a créé ces chars [Musique] et encore maintenant sur les dernières versions ça va ça ressemble plus à de le S6 mais chez nous on quand on a commencé crise pendant 2015 il y avait le S6 il y a encore c'était pas de le S6 comme maintenant que je supportais maintenant c'était de le S6 avec Babel en fait et donc bah on avait [12:38] eu comme la bonne idée à l'époque de mettre des JS docks partout donc les JS docks c'est un peu comme les commandes des blocs de commentaires en CPP etc qui te permettent d'expliquer ce que tu as fonction est fait ce qu'elle attend en paramètre et ce qui retourne et en fait la bonne nouvelle c'est que maintenant tipscript a une option qui s'appelle check JS et en fait du coup ça t'évite de recoder tout ton code en tête crypte mais il peut implicitement comprendre des à partir de les types des fonctions ou même les types des objets et donc tu as une Covage qui est beaucoup plus forte dans [13:13] le check et ben nous typiquement on a pu passer nos tapes notre back and etc avec ça et petit à petit en fait on peut pousser le typage nous on n'a pas envie de tout non plus sur TP ça va prendre un symbolement simple oui puis on n'a pas envie ça nous servira pas grand chose mais quand même au moins sur les Libes internes qu'on a on a des bons contrats d'interface on les avait déjà les contrats d'interface mais là c'est comme un écran au dessus et voilà donc il faut checker si vous avez une cote bye en js et que vous voulez petit à petit la [13:46] sécuriser la moderniser un peu mais je trouve que met tipscript mais juste en mode l'Inter et avec l'option check JS ça évite de tout reconnaître c'est juste des commentaires et ce qui est génial du coup c'est que tu prends ton fichier JavaScript existant et il marche pareil qu'avant c'est juste que il y a des commentaires dedans qui rendent le code de manière un peu plus expressive surtout en fait faut revenir aussi à la base du coup c'est que la migration que j'ai dû faire le truc c'est que j'ai du sorybook m'aider en fait à faire le à migrer chaque composant un par un donc en fait [14:22] au début j'ai juste me s'occuper d'adapter chaque composant dans storybook ce qui m'a permis après une fois que tous les composants étaient remigrés à NOX3 enfin du droit et compagnie de le reprendre et de construire ensuite après les pages directement [14:39] je pense que ce qui est assez important sur ça c'est c'est des process qui sont importants à mettre en place justement quand tu as peur un moment de tout casser je sais pas si enfin toi je sais que c'est des choses que tu as mis en place très tôt nous avec Valérian on a bossé sur un projet de respiratoire artificiel qui s'appelle le projet Macaire sur ce projet Macaire donc c'était des respirateurs artificiels fait pendant le covid Open Source etc le but c'est de pouvoir sauver des patients notamment dans les pays où il y avait pas assez de respirateurs on a produit plusieurs centaines et en fait une grande problématique de [15:16] ce monde là c'est le médical c'est quand même ce respirateur là avec 90% de software c'est-à-dire qu'en fait on imagine un respirateur c'est beaucoup de mécaniques etc il y en a mais en fait la vérité c'est que c'est beaucoup de logiciels et du coup comme c'est beaucoup de logiciels l'impact que les développeurs peuvent avoir sur une régression ça peut être fatal ça tue quelqu'un quoi ça un gros bug pour étudier quelqu'un en effet donc tu vas la régression à quel point elle peut être fatale et on avait ce problème là de régression et l'autre problème qu'on avait c'est que c'est quand même un device et dans un monde où on était on va dire [15:53] une dizaine de développeurs et il fallait quand même des grosses machines des machines qui est dans les specs évoluer et puis il fallait tous qu'on est un bon test une machine des procédures de tests qui étaient quand même assez longues la procédure de test pour tester toutes les tous les paramètres et ça mettait une demi-journée t'imagines une demi-journée voire une journée complète pour tester toutes les non régressions c'était affreusement long mais il y avait pas de vu que c'est du logiciel et pas justement ainsi avant qui permettait de tester enfin c'est comme des tests sur des paramètres physiques c'est-à-dire qu'en fait un respiratoire artificiel ça gonfle des poumons une certaine vitesse [16:37] etc il y a des mécanismes en fait si tu es les patients sont respiratoires artificiels ils sont anesthésiés mais parfois l'anesthésie elle serait elle se réduit légèrement le patient il se réveille un peu et il se passe des mécanismes ou en fait tu as des tu as des rebonds au niveau des poumons qui se font et donc le respirateur doit comprendre ça etc des compenser pour toujours est-il que en effet toi tu dis mais pourquoi il y a pas de signal en effet et en fait les on a des ingénieurs qui ont eu Gabriel notamment quand la moyenne idée de se dire mais puisque nous dans nos métiers [17:09] tous les jours on a des SCI aille partout pourquoi on apporterait pas ceci Aila dans le dans le médical et en fait ils ont réussi à faire un système qui est absolument fantastique c'est de virtualiser le respirateur c'est-à-dire qu'en fait le respirateur les propriétés mécaniques du respirateur les valves la turbine ou même il y avait même un modèle de patient en face qui était virtualisé et en fait on pouvait déjà c'était vachement cool ce que quand on développait on peut avoir une fausse machine en fait en face flasher la fausse machine donc tu avais plus besoin de te trimballer avec une machine de 30 kg partout [17:43] et puis surtout pour tester beaucoup plus vite et enfin le CIA est c'est-à-dire qu'en fait on pouvait à chaque fois qu'on poussait le code on avait je sais pas l'équivalent d'un mois de test en 10 secondes si on pouvait tester beaucoup plus vite beaucoup plus fort que tous les checks qu'on faisait à la main et pour dire que en fait dans n'importe quel industrie c'est système là peuvent aider notamment quand tu as un gros risque de 4 trucs casses et il y a rien de fin le moment où il faut mettre ce genre de process en place et justement quand à chaque fois que tu veux bouger quelque chose que [18:23] désolé de l'expression mais que ça pue la merde ça sent gros [Musique] caca en cow-boy enfin je dis ça ce que j'en ai entendu parler il y a pas longtemps que les banques notamment au moment où il y a eu la le rgpd qui est arrivé en place il fallait que des gens puissent supprimer leurs données etc et en fait des systèmes qui ont pas été prévus pour du coup c'était pas possible bah je pense qu'ils ont fait mais ça veut dire ça a été ça a été long comme c'est ça qui est génial quand même quand tu as des quand tu as des systèmes qui peuvent alors [19:05] sans être des nazis de tout tester etc je peux comprendre que notamment pour des startups faut quand même des produits un moment des fuites à des futurs tu vas supprimer tu as des qui vont évoluer tout mais bon il y a quand même des trucs où tu sais que ça c'est la base de ton produit que ça ça peut casser vite et que chez nous par exemple on a une librairie de Markdown ça c'était l'enfer sur terre vraiment on modifiait une petite reggaek c'est pas peut-être wikipé quoi bon maintenant tu en as marre tu te fais tu te fais choper tu te fais choper deux fois bon au [19:39] moment tu dis c'est fini on met un test là-dessus et voilà on en parle plus quoi en fait l'avantage aussi de d'avoir fait un test c'est que et d'avoir un bon si c'est qu'en fait quand tu vas devoir mettre à jour par exemple ton api par exemple de Adonis 5 vers à domicile bon c'est un framework javascript mais j'aurais pu dire rugby one etc en fait à partir du moment où tu vas en mettre à jour un ton API vers une version supérieure du framework tu es bien content quand même de pouvoir appuyer sur un bouton et de voir que le paiement est-ce que tout pète qu'un qui pète [20:06] parce que des fois en fait tu as pas confiance non plus tu dis je mets à jour ça ok donc je mets à jour certains paquets mais tu sais tu peux me le package mais tu te dis bon visiblement ça marche mais tu es content quand même de voir qu'effectivement là tu tu tu vois toutes les tests qui passe tu dis ok bon j'ai même pas le package j'ai mis genre package dans je vais pas avoir de gros problèmes quoi au pire ce sera peut-être des effets de bord mais je reste parce qu'il manque un test quelque part on retrouve l'article et que on le met dans tes commentaires de la vidéo [20:32] Youtube j'ai vu un très bon papier de Google qui expliquait comment bien tester et en fait que parfois il y a des dans la manière d'écrire notamment les tests unitaire il y a des choses qu'on ne voit pas et qu'en fait le test a l'impression que c'est un bon test s'il était codé ça ressemble vraiment à un test mais en fait ce qui est important c'est de vrai de mettre de la vraie donnée dedans voilà juste petit appartement je vous mettrai le je serai pas tout à fait expliqué l'article mais j'avoue que c'était quand même assez expressif comme et voilà c'est un article de chez Google [21:03] enfin livre blanc qui met pour leur développeur et je pense à le coup le mettre face à un mine d'or ce truc il faut on le met aussi et il y a aussi un truc qui est drôle ce que je me savoir si ce matin c'est que en fait j'avais une faille de sécurité à un endroit sur enfin mon gros on aurait pu aspirer pas mal de données qu'on n'aurait pas pu faire un kit qui était pas censé être accessible et le fait et le fait de mettre de m'en être rendu compte et d'avoir vu effectivement que en mettant le test que le test il passait pas du [21:31] coup j'ai fixé le truc et maintenant j'ai un test qui va sans tout le temps jusqu'à la fin du projet vérifier que ça se fait de sécurité elle est plus là sur ce même point donc il y a aussi fait une philosophie qui est absolument intéressantes après quand tu dis faut pas être nazi donc il y a plusieurs types de test les tests unitaires les tests d'intégration les tests antwin les tests aussi que tu m'as effectivement comme les divergences graphiques entre deux composants donc tu en as plein de types de ça comme ça et après derrière l'idée c'est d'avoir un Papeline si je comprends bien sur les séries où tu [21:58] testes tout ça avant de mettre en prod quoi alors chez nous on a mis en place un nouveau truc je trouve que c'est assez important que le code notamment dans une team soit homogène parce qu'en fait nous développons en copie colle vachement de trucs enfin je suis sûr que toi aussi tu fais ça mais c'est naturel ou tes composants ils ont à peu près tous la même structure le même header les mêmes les mêmes petites les petits commentaires etc ça à peu près les mêmes patterns souvent et du coup on a quand même une norme un code in style chez krisp mais ce code in style c'est quand même quelque chose qui [22:30] est assez unique qui est opinited et on perdait vachement de temps en fait pendant nos reviews etc vérifier que c'est juste c'est conforme au style et que il y a pas un espace en plus un espace en moins que les commentaires c'est tous les mêmes et en fait on s'est défini vraiment enfin je me servir ce chat j'ai pitié pour ça en fait j'ai pris plein de review chez nous qui ont été faites et qui sont pas passés en prenant des exemples qui étaient positifs et des exemples négatifs et en fait je dis mais pourquoi ça c'était pas bien bah parce que il y avait un espace [22:58] entre autres ok donc en fait aujourd'hui il existe S Line qui est très bien pour ça il y a beaucoup de règles qu'on a pu twiker enfin qu'ils sont existants juste qu'il faut paramétrer on va dire une cinquantaine et pour le reste on a écrit des règles chati pitting nous a écrit des règles qu'on a un petit peu réécrit mais en fait c'est des règles qui nous aurait mis deux heures à écrire à la main ok on peut on est capable de les écrire ça mais en fait imagine juste pour développer on va pas passer trois heures pour développer 60 règles custom nous a développé les règles de eskint [23:34] sur nos machines en fait on a pu entorse enfin désolé pour mais on a pu obliger tout un tas de règles de ligne les haiders le nommage des variables la structure des fichiers enfin tout un tas de trucs qu'on a défini que voilà un bon code doit avoir ça un bois un mauvais code ne doit pas avoir ça etc etc ça nous a fait aujourd'hui on a beaucoup de règles et en fait c'est génial parce que toutes ces petites erreurs cons etc on fait parfois même les fautes d'orthographe à quel point dans un code il y a beaucoup de packs dans les commentaires mais des parfois des [24:09] variables malnômes etc voilà au moins tout est tout est carré et c'est ça qui est génial c'est que maintenant avec la puissance de l'IA et ben en fait c'est comme si tu avais une équipe à perdre à faire ton Touring et que tu peux franchement nous sur les règles eslim enfin c'est c'est sublime quoi c'est trop marrant hier parce que nada du coup ma femme elle est en train de coder sur de fer je suis une huile une librairie ui pour vue 3 pourquoi justement partager des composants entre différents projets et puis je regarde son truc et puis attends là tu as suivi un tutoriel pour ça non mais comment tu as fait pour [24:42] savoir ça bah en fait j'utilise piti elle utilise chaque gipiti plus que Google et alors que moi j'étais enceinte quand même aller encore beaucoup sur ta Cover Flow et c'est impressionnant à quel point tu as dit pitty a changé l'usage en fait de certaines personnes sur la manière avec laquelle ils vont construire du code ouais après bah pour en revenir on a des livres communes chez Chris on va voir 5 allez il va dire 10 librairies internes on a beaucoup de micro service et tous ces microservices ils ont vraiment le même framework interne a la même structure et donc en fait c'est lib elles ont été tipé et en [25:12] fait le truc c'est que sur les projets parents fallait que on type ça aussi et comme tous les projets ils ont à peu près la même nom que là-dessus la même structure c'était du travail de enfin c'était hyper en fait ce qui est bien c'est que j'ai fait un prompte qui est sur un tchat dépiti ou voilà j'ai fait un projet à la main donc voilà donc notamment tout ce qui est les imports les fallait rajouter des notes des annotations pour que certaines classes puissent être inte que le Linder comprenne le type etc de des contrôleurs des helpers etc et en fait comme les projets ils ont à peu près [25:46] tout cette base là et ben en fait j'ai fait un exemple à chat gepetti et en fait après je fonctionnais que copier-coller voici mes anciens import je te les colle il me répond les nouveaux imports avec directement les alignements parfaits et tout je copie colle suivant non vraiment parfait en fait et ce qui était génial c'est que tu as uniquement quand tu répètes plein d'imports et que tu vas les retravailler et comme une forte chance que tu en oublies un et une typo quelque part là tu as pas ce problème là le seul problème c'est que parfois tu lui dis exactement comme un stagiaire ce qu'il [26:19] faut faire toutes les alignements il doit en fait on doit faire un trading avant le égal c'est qu'en fait on va faire Var ma variable et après quand tu as plein de variables qui ont pas la même longueur nous ce qu'on veut c'est que tu es un padding avant le égal comme ça tous les gars le sont alignés quoi exactement donc du coup bah on a collé des règles avec un pour valider ça ou après mettons que tu es un des indentations qui sont pas ok tu dis bah en fait mais moi je voudrais inventer comme ça tu lui montres l'exemple ok il te rendent tout et à la fin tu as juste [26:50] à faire un copier-coller et puis à force que de refaire cette même tâche tout le temps mais il a compris que ça en fait du coup pour des tâches hyper rébarbatives enfin nous ça nous a fait gagner un temps colossal en fait c'est moi différemment de vous j'utilise directement une la package US ligne de un mec qui s'appelle anfou antfu et elle est très cool donc en fait dans le fichier westlins j'étends tu vois et puis après je verrai de certains trucs qui me plaisent pas trop mais dans l'ensemble elle a ses clean et puis après donc du coup mais pour un projet qui a déjà des règles établies peut-être [27:24] que tu vois faire à l'époque ça n'existait pas déjà d'ailleurs j'ai même dégagé prière parce qu'en fait avant je disais à la fois prêtaire US Lindt j'aime pas du tout et franchement après hier il y a pas besoin de quand c'est bien câblé ça fait quasiment ce que fait ces paramètres tout ça c'est comme beaucoup mieux maintenant et surtout là où chat gepsi nous a été utile dans notre typage c'est que comme nos librairies internes je voulais fortement les typer comme tous ces projets héritent de ça c'est important que il y a pas de trucs qui qui pète quoi donc en fait définir les types de beaucoup de [27:59] choses comme extrêmement chronophage et surtout un script node tout simple ou en fait je lui je lui mets le 7 heures d'un paramètre donc je sais pas par exemple chez nous message pour un submit admettons mais c'est je vais c'est du pseudo code mais c'est à peu près l'idée il va me donner toutes les occurrences dans notre code base sachant que c'est on a que ça en fait c'est un terme en fait un dossier où j'ai tous mes projets tu vas aller voir de manière récursive dans tous mes projets dans le dossier SRC mais comment il a ça salut je veux qu'il me connaît ce script je veux qu'il me prenne en [28:49] paramètre une fonction ou un col de fonction donc chez nous on va dire admettons un elles peuvent un message point subito il va me mettre toutes les occurrences de ça après je paye ça je suis en voie je lui dis maintenant que tu as tous ces codes là ça serait quoi le type du paramètre message ok bon ben hop hop hop hop on pose tout en fait à partir de toutes les possibilités qu'il a eu le type message alors peut-être qu'il va en louper un peu mais franchement ça marche de manière miraculeusement 80% des boulots colossal c'est intéressant j'avoue que j'utilise pas trop ces techniques là et [29:31] que j'ai piqué sur fais-moi un script qui fait chier ça par contre ça m'est déjà arrivé de trouver des trucs assez surprenants sur des bugs en fait tu lui envoies un fichier tu lui dis tiens essaie de hacker cette fonction qu'est-ce que tu pourrais faire et il y a plusieurs fois il a essayé de me dire attention là tu as une boucle infinie par exemple ou si j'envoie tel paramètre normalement je suis récupéré une string et là en fait j'ai tu peux récupérer un chiffre du feedback il y a même un j'ai vu sur le twitter alors j'ai oublié le nom en fait c'est un éditeur qui est un [29:55] fort de VS code et qui est qui est totalement réactif qui est totalement passif et totalement pensé pour l'Aïd et du coup facilement balancer tout ton tes projets et par contre ça fonctionne par contre c'est un peu ce que tu viens de dire et c'est il disait que c'était assez bluffant parce qu'aujourd'hui lui il tapait juste dedans parce qu'il avait besoin et 80 % de boulot était fait en fait ouais après typiquement le truc c'est que parfois le code qui va t'écrire il suit pas du tout et conventions de style et cetera c'est pas pour ça que c'est bien d'avoir les screen d'avoir des des règles de [30:25] validation qui soit très très clair ce qui fait que la production qui a été fait par de Laya elle va matcher elle peut rentrer dans ton projet mais après sans aller jusque là tu peux sous-traiter je pense à l'IA des des trucs clairement et je pense même d'ailleurs qu'il y a même des ça à faire sur des sortes de briques qui pourraient se greffer dans les Siri des boîtes par exemple ce que je viens de dire là tu vois du code review vérifier les failles de sécurité etc tu jures juste un sas qui fait ça tu vois ça bien et il se passe-t-il en Plug and Play sur un sur [30:56] une sur dans guitare batchonne par exemple et derrière tout ce que tout nouveau code qui est nouveau il check il vient il fait des tests comme ça le problème c'est qu'il a pas les promptes sont quand même limités ils peuvent pas voir la vision de ne pas avoir la vision globale et ce qui est ce qui est logique ceci dit je trouve la manière dont tu l'utilises chez Chris pour vraiment créer des règles c'est des règles métiers à la papa on aurait déjà pu les coder comme ça il y a 10 ans c'est juste que c'est chronophage de les coder et donc bah en fait on peut [31:24] multiplier les procédures de tests les les checks grâce à ça et est-ce que tu as du coup vu que tu utilises pas mal ta gypties est-ce que tu as appris des choses intéressantes au niveau des promptes ce que tu lui donnes sur le code bah ouais comment parce que j'imagine que tu as tu as pu peaufiner tes promptes et apprendre en me disant ah tiens en fait c'est pas très compliqué les promptes que tu vas demander en code sont pas forcément très compliqué faut juste lui donner une bonne compréhension de ce que tu as besoin par exemple il y a pas longtemps j'avais un algorithme donc chez Chris qu'on est en train de [31:58] refaire notre système de bottes pour qu'il y ait un graphe en dragon qu'aujourd'hui on a un système de d'arbre donc c'est vraiment un manque la durée avec un une hiérarchie 1 2 3 etc et après c'est c'est un arbre aujourd'hui serait plutôt un graphe prime d'un graphe c'est que notamment ma législateur un moment ils vont faire de la du caca dans le graphe et bah tiens à organiser les trucs c'est un peu c'est pas facile pour tout le monde juste de faire un bouton tu appuies sur un bouton hop tout le graphe il est réorganisé de manière logique et ben typiquement je voulais faire plusieurs implémentations d'algorithmes [32:35] c'est comme des algorithmes c'est long implémenté j'ai pu très rapidement en expliquant à quoi ressemblait mon graphe les paramètres des objets etc il m'a suggéré des algorithmes on a testé et en fait rapidement je peux dire ok la nomenclature est bonne maintenant je voudrais que certains types de blogs dans le graphe soit décalés d'un cran etc mais pas tous et en fait il a fait et faite à force de feedback faut juste vraiment le challenger le feedback et donc par exemple et surtout être assez solide au niveau de en fait c'est un travail d'architecture c'est d'expliquer très compliqué mais en fait faut juste lui dire j'ai besoin d'une fonction qui fait [33:13] ça qui va prendre ça paramètres donc par exemple nous sur nos règles de Death Lind dit bah voici un code tu veux forcément que les lignes terminent admettons que les commentaires termine par un point voilà c'est nous on a pas ça mais admettons tu voudrais que tout tes commentaires ça finisse par un point tu dis bah voilà tel commentaire ça finit par je voudrais que ça finisse par un point ok bon on va faire une règle qui ressemble à ça tu vas dire ok mais comment je rajoute cette règle dans mon projet bah il faudrait mettre ça comme ça comme ça OK donc là tu vas exécuter ta règle donc là [33:45] tu vas admettons tu es plein de faux positifs qui mais pourquoi ça ça match alors ça devrait pas marcher ou l'inverse pourquoi c'est pas match ça ah ok c'est en fait tu m'as pas dit que quand c'était du multiligne admettons un commentaire de trois blocs tu voulais juste que ce soit le troisième bloc ils prennent le point à la fin tu fais par itération en fait à la fin à force de feedback d'exemple de contre-exemple il y a de faire une règle qui normalement est très bonne ok intéressant et que tu lisais non mais ça c'est pas comme ça qu'il faudrait le faire ça ce sera plutôt comme ça et en fait à la fin [34:20] tu devrais arriver à quelque chose de bien est-ce que tu as une idée aussi comme tu me disais tu parlais du ciel et du futur est-ce que tu comment tu tu définirais toi le SIA et du futur maintenant ça va quand même pas mal de bouteilles pour gérer des grosses des gros projets alors on va pas on va prendre deux exemples on va prendre une boîte qui démarre qui sont on va dire deux trois créateurs et une boîte un peu plus grosse comme qui a déjà la taille de crise par exemple ok donc déjà pour des boîtes qui démarrent je pense que les trois doivent coder pareil dès le départ on n'est pas [34:49] obligé de mettre du ciel directement je pense que faut être pragmatique quand même quand on débute et qu'à un moment faut chiper et que quand le projet va fonctionner qui va avoir des clients ma traction je pense que c'est là où un moment c'est bien de surtout si après tu commences à recruter de là comment ça mettre un petit coup de de vis de d'uniformité quoi de test sur les parties sensibles on va dire après on s'imagine que les grandes boîtes ont ça moi j'ai codé de la grande entreprise on en est loin on en est très très loin du coup le ciel du futur pour toi ce serait après pour [35:31] les déjà on imagine ainsi comme un truc je pousse sur GitHub et ça fait des actions avant ça je pense qu'il faut que ça marche sur chez toi ah oui avant de le faire des exactement je pense je suis d'accord avec ça ouais c'est d'ailleurs qu'on a toujours tendance à vouloir avoir des outils comme sémaphore ou guitare backson etc alors que déjà tu pourrais tu pourrais juste faire René chez toi et t'assurer autant de fois que tu veux chez toi qu'avant même le premier ou même pas précis y enfin juste que tu puisses lancer etc autant que toi tu veux par une commande et que tu es [36:02] pas comité quelque part pour pour lancer ça moi ça que c'est une culture j'ai fait l'école 42 et c'est une école qui question si ça te forme alors vraiment bien parce que déjà la piscine à 42 ton prof enfin le seul juge c'est ainsi ce qui est très perturbant c'est-à-dire que même moi j'ai commencé à coder très très tôt j'ai commencé à coder à 12 ans après j'ai fait des écoles et tout dans le code quand je suis arrivé à 42 je crois que mon premier jour c'était déprimant quoi c'est-à-dire qu'en fait le SIA il est il est con mais en même temps il est pas con dans le sens où [36:39] exactement un résultat que il y avait ça dans l'énoncé on t'a demandé de faire tout l'alphabet et à la fin que l'alphabet soit un backslash N et ben c'est ce qui a été demandé tu vois si t'as pas mis le backs la chaîne à la fin c'est zéro ah ouais en fait ça veut dire 42 tous leurs trucs c'est un siège qui fait à la fin alors au début toute la piscine et en fait admettons tes 8 exercices dans la journée on va dire je sais pas à chaque exercice on va dire à porte 20 points si tu veux avoir la totalité des points ça veut dire que l'exercice 1 doit être [37:12] parfait l'exercice de doit être parfait 3 4 5 6 7 jusqu'à 8 parfait si ton deuxième exercice il ne fait pas ce qui attendu ton taux de points mais du coup ce sera que 20 puisque le deuxième il a pas marché tu vois est-ce qu'il te oblige absolument une grande rigueur tout checker et tu as des fonctions comme ça ou donc après quand tu es sélectionné dans l'école tu as des projets qui s'appelle ftls je crois enfin tu as plein de projets tu dois refaire un shell tu dois refaire ls etc tu as les tests unitaires de en fait tu pousses ton code et en fait bah là ta note ce sera des tests [37:51] unitaires qui ont été faits et en fait tu peux avoir zéro juste parce que ton programme il a planté quoi et donc du coup vraiment dans l'école tu as une communauté où les étudiants ils font des tests ensemble pour que en fait gagner du temps quoi à 42 tu as des examens pour aller en stage fallait que tu passes au niveau 7 et pour arriver au niveau 7 tu as cinq examens à faire et en fait c'est le même principe les examens c'est que je crois que tu as cinq niveaux 5 niveaux tu peux avoir 20 points il faut avoir 80 donc ça veut dire que [38:19] niveau 1 tu vas tu peux espérer je puisse 20 ou 25 points au niveau 1 on va te demander un truc assez simple mais tout doit être bien limité donc à 42 et un truc qui s'appelle la norme et tu as une commande s'appelle nordinette qui en gros chaque fichier doit avoir le bon header pas plus de 5 fonctions par fichier pas plus de 25 lignes par fonction etc etc pas plus de 80 caractères par ligne donc ta fonction ce que tu vas faire pour l'exercice ça va être à la fois conforme à la norme sinon c'est zéro et à la fois conforme au niveau du ciao et en fait tu as le droit [38:55] qu'à un seul test c'est-à-dire qu'en fait tu vas comité en fait au moment où tu commites c'est bon c'est parti et ça mouline et tu attends peut-être 30 secondes et en fait là soit c'est vert et tu passes à l'exercice 2 soit c'est ça fail en fait tu es obligé de retrail l'exercice 1 mais du coup l'énoncé a changé c'est un autre énoncé ça te fait perdre beaucoup de temps parce que c'est un autre exo qui t'a demandé et tu vas perdre au lieu de passer de 25 points ça va être 15 points du coup si tu te replantes après ça va être 10 points si tu te plantes c'est 5 [39:28] points et du coup tu pourras jamais cette philosophie parce que en fait ça te permet de tu dois faire très attention et être rigoureux et surtout et surtout accepter de passer 10 minutes sur un projet pour résoudre pour le faire bien plutôt que de le faire en deux secondes en une minute ou en deux minutes et après de se revoir de te voir faire étalement et perdre du temps et je pense ça ça forme en fait parce que c'est vrai que un des conseils que je me suis donné plus jeune c'est que la vie c'est du long terme et que malheureusement on a tendance à être très impatient et à [39:57] vouloir tout fonctionne très vite et elle et à chercher toujours l'outil qui va parler plus vite mais il y a quand même toute une toute sur mindset à avoir quand on fait du SAS ou même n'importe quel projet qui est que ok je folle vite mais il faut quand même que ça fonctionne sur le long terme et du coup il faut accepter de perdre du temps au début pour en mettant la place de la rigueur en architecture en correctement les choses de manière à pouvoir ça peut être pas la tronche en fait pas mes trucs qu'on a fait c'est définir un contrat en une partie tout de suite [40:24] en microservice et définir un contrat d'arperface entre nos services une librairie commune etc j'étais surpris à quel point des projets on y a pas touché du tout depuis depuis 2015 quoi c'est toujours à jour et ça fonctionne et ça et ça en a vu passer du monde quoi donc intéressant moi le siège je le vois maintenant tu penses c'est très intéressant donc un parti une partie inter une partie test après chacun verra à midi à sa porte en fonction de du degré de granularité qui voudra tester une partie Antoine ce que je suis en train de mettre en place d'ailleurs avec si presse on va tester beaucoup [40:57] plus d'interface et après derrière toute une partie déploiement ou où on a on va déployé sur un serveur en fonction de ce qui me fait un peu peur moi c'est je sais que de plus en plus de ça aujourd'hui ou dev utilise du fonctionnement de services et en fait le truc c'est que tu vas mettre tes fonctions dans un truc qui est purement cloud mais tu vas pas pouvoir enfin tester à mon avis autant que tu veux tu vois tu as pas quand même un environnement qui est hyper applicable ah ça c'est un sujet je veux bien aborder parce que je me pose plein de questions sur ça tu as de l'expérience [41:30] sur les fonctions à deux services parce que moi j'ai vraiment très positive qui était du serveur à observice donc ça je ça fais mal passé au début ça allait après en fait il y avait des problèmes de perf ça peut coûter très vite très très cher moi j'aime bien en fait que le code que tu as un prod en fait tu peux l'exécuter chez toi c'est ton code et même les bases de données je déteste le principe des bases de données d'Amazon ou en fait ouais mais c'est un peu comme du maesql mais c'est pas ma SQL c'est plus calme tu vois ouais mais pourquoi j'aurais pas [42:04] mais est-ce que tu vois c'est un peu comme PG un peu comme Mongo mais non mais c'est je peux pas l'installer chez moi de consommer vos tapis pour faire ça tu vois ce que je n'aime pas cette philosophie ma personnellement ma seule approche avec du fonctionnement de serveil c'est avec les clones pour le coup maintenant c'est utilisé vraiment comme parfois comme des DB ou comme du cloud fonctionne moi ma seule approche avec ça c'est un script que j'ai développé une fois qui nous permet en cas de surcharge de l'Infra on active une on peut activer une claque faire fonctionner qui va rewright en live tous les Raiders [42:52] HTTP nos apps sans avoir à starter nos riverses proxy pourquoi parce qu'en fait admettons qu'on a une gros une grave panne qui implique ralentissement des services ça va être un tiédeur HTTP et en fait tous nos clients vont du coup quand ils font consommer les API quand ils vont consommer nos tap on se prend de ce labeur là et en fait la naturellement elle va se brider dans son fonctionnement en fait on a défini des fonctions qui font des [Musique] des fonctionnalités qui sont considérés comme pas très importantes par exemple chez nous on a un truc qui s'appelle Magic type qui permet de voir en live ce [43:31] que ton client il est en train d'écrire c'est Nice toif mais c'est pas un must have tu vois il y a plein de trucs comme ça par exemple tout ce qui est les types addicators dans du chat les systèmes de présence est-ce que la personne allait en ligne ou hors ligne ça on peut s'autoriser de se dire que quand un truc tout de suite maintenant une panne c'est pas très grave tu vois moi j'ai un avis un peu différent sur les les cloud fonctionne je pense que c'est comme tout c'est pas adapté à tous les types de projets par exemple moi tout ce qui est base de données déportés donc cloud il [44:03] est hors des questions que je dis ça parce que je gère des thérapeutes de Terra by de Data donc en fait ça me coûtait un os de d'utiliser ça donc je suis obligé d'avoir d'installation un serveur une base de données et puis travailler dessus ou un investisseur sinon ça va coûter des milliers d'euros au mois par contre sur certains types de projets je pense que ça peut permettre de gagner du temps de quand on sait qu'on va pas être amené à avoir beaucoup de Data de mettre ça quelque part par contre les avantages l'avantage c'est que tu as pu développe à faire et c'est pareil un peu sur les cloud fonctionne [44:28] j'ai pas cette expérience pour parler d'ailleurs je pense qu'on pourrait trouver des experts sur ça chaque Jocelyn il a monté en SAS il est énormément ça il de déportés sur les Google fonctions le seul problème de ça c'est qu'effectivement si tu sais que c'est une grosse migration quand tu veux passer d'un monolithme c'est que ils vont être obligé à faire des changements à un moment c'est une techno que tu maîtrises pas bien quoi tu as par contre en terme de on va dire de liberté ouais tu es pas tout moment de voir très vite allumer les warnings à temps faut qu'on change tout parce qu'il y a un truc à changer [45:00] etc et mais bon il y a des sécurités quand même sur ces services là maintenant pour éviter que tu payes trop et que tu es une boucle infinie par contre tu es très sujet aux attaques c'est à dire que si tu as un client qui veut te faire augmenter ta facture en général c'est pas très compliqué de pas de faire bombarder quoi c'est une forme de demi-service par l'argent ouais exactement avec plus douloureux d'ailleurs je pense nous on utilise du zapper notamment Antoine en marketing ou en fait c'est des trucs qu'on passe forcément de valeur qu'on va être compliqué ou lent me [ __ ] dans le corps de l'Infra là de [45:37] se dire bon en fait on a besoin d'exécuter quelques petites tâches qui vont synchroniser une donnée par exemple entre Google Ads et un système de métrique etc bon bah il y a pas de problème comme ça on peut itérer tu vois intéressant donc on peut voir on peut voir zappirent comme des clopes fonctionnent qu'on utilise l'ancêtre pour moi même c'est même la vision même des clients de fonctionne en fait carrément intéressant je sais pas si tu avais d'autres choses que tu voulais aborder des trucs intéressants que tu as pris cet été ou pas pour moi mon truc c'était c'est le machin mangement de vision sur comment l'IA peut nous aider [46:12] à coder et ça rejoint notamment le principe du ciae je pense pas que justement Valérian qui est pas là aujourd'hui il lui arrivait il y a un ou deux mois un bug sur du rust et je me souviens énormément de bureau est en train de grogner il fait chier ce qui il arrivait pas à résoudre un bug en russe parfois le reste fortement typé il est en train de migrer je sais plus un ORL ou tu es en train de dire un truc et bon à un moment je suis dit à aura il a il a résolu son problème il est passé du temps quand même je lui dis bon par [46:50] curiosité c'est quoi comme problème homme c'est compliqué et tout est-ce que tu pourrais pas mettre le log que tu as eu au début je mets ça dans je copie colle le truc c'était pas ça le problème et la solution et c'est ça ouais c'est à dire qu'il a perdu du temps et ça c'est pour ça tu vois que il faut être très méfiant envers les quand on a quand on a un peu de la bouteille des fois on a tendance à être un peu arrogant et à dire ouais c'est j'utilise pas toujours c'est un peu c'est les shiny objects tu vois alors qu'en fait et du coup en fait si je le fais comme [47:22] ça etc et j'ai besoin qu'on perd de la maîtrise faut pas qu'on perde la maîtrise l'intelligence notre métier en fait personnellement je considère ça comme un [Musique] un stagiaire qui est très capable qui peut faire des erreurs que peut parfois même un peu concombre mais qui fait ce qu'on lui demande tu vois une connaissance de malade quoi et il fait ce qu'on lui demande dès qu'en fait finalement un truc il fait il va essayer peut-être que ceux qui disent ouais mais c'est du code qui compile pas c'est faux ça a beaucoup changé par exemple sur la version gratuite de chat j'ai pitié et la version payante c'est comme très [48:01] différent [48:06] c'était parce que c'est facile ce que je lui demande mais non pour vraiment des tâches complexes d'accord bon c'est comme ça très différent il fait beaucoup moins d'erreurs franchement pour le le la quantité de trucs que je lui demande la valeur que ça m'apporte je sais pas comment c'est 20 balles pas moins je crois franchement quand tu vois le temps que tu gagnes alors c'est [48:42] français voulait faire un chat Gipsy enfin l'Union européenne mais en fait il avait déjà parce que tout était Open Source avec et c'est vrai que en fait c'est tu as tellement de choses aujourd'hui que tu peux faire maintenant ouais bah en plus surtout que maintenant que tu as Facebook a fait la MA2 tu as un Bulgare qui a fait un truc qui est génial qui s'appelle la map enfin ggml ou en fait il a trouvé un moyen pour compresser de manière très efficace des réseaux de neurones pour que ça tourne sur des des CPU et maintenant des GPU et donc en fait tu peux tourner sur un Mac architecture M1 [49:16] des modèles de langage faire des très bonnes tâches avec peut-être pas du code mais tu peux faire beaucoup de choses avec j'utilise pas toi qui te copilote alors ce que tu penses j'ai pété mais en fait je pense qu'il y a pas le truc qui marche bien je trouve qu'il est bon pour faire de l'autocomplétion mais en fait moi ce que je veux en fait déjà c'est assez lent je trouve qu'au pilote le temps que la roquette elle s'exécute fait parfois c'est juste plus rapide de taper d'avoir un bon écouteur etc plus vite d'écrire ton truc plus il est capable de faire qu'une ligne ou genre [49:49] les trois lignes suivantes etc moi je trouve ça plus rapide de demander à chat débit exactement ce que je veux il va me le faire par contre ils ont sorti un nouveau truc le mois dernier qui s'appelle GitHub copyot x exactement et du coup c'est en bêta une sorte de chat intégré directement dans le dans le dans ton code dans ton code ton éditeur en fait moi ce que j'aime bien c'est que moi j'ai la maîtrise et parfois je commençais à juste de manière inspirationnelle tu vois comment on aurait pu faire ce serait quoi la solution pour faire ça par exemple nous dans notre migration là avec du des JS [50:23] docs tu vois j'ai telle erreur mais je voudrais faire ça comme ça qu'elle ne monte là toujours je pourrais utiliser pour que ça marche et ben je pense que faudrait écrire ça comme ça hop tu copies colles tu testes et ah oui mais là j'ai ça comme erreur hop et tu le feedback et en fait normalement tu arrives à la solution et moi j'avoue que la solution du typage c'est pas du type page faible par endroit droite page fort par endroits avec à base de JS docks qu'on avait déjà bah c'est très convenable comme solution et je j'avoue que Jay nous a été hyper utile pour faire toutes ces règles c'est [51:00] comme si on avait une équipe peut-être pas d'évop en tout cas mais comment s'appelle les équipes de tout ligne interne dans les boîtes comme ça qui maintenant ont des des teams qui servent aux Dave enfin pour le tuning pour les autres mais nous c'est comme si on avait une équipe en interne mais en fait qui est faite par de Lia quoi et vraiment c'est pas tous les dev qui sont un peu réfractaires à ça je vraiment ça peut être très utile et que je fais des erreurs je fais des je fais des erreurs dans mon code mais au moins j'ai pu écrire des règles qui enfin tu as des erreurs de style [51:43] notamment des cahiers en espaces entre eux il y a une petite faute d'orthographe à tel endroit on peut définir des règles qui qui check ça tout le temps à ta place d'ailleurs je vais faire une aparté sur un truc et un peu de terminer sur ça si tu veux c'est que en gros j'ai formé ma femme du coup en code oui et ça a été une bonne expérience parce que ça je me suis rendu compte que c'était formé quelqu'un c'est ça demande beaucoup de c'est un processus qui est long en fait qui prend du temps surtout quand on parle de zéro et il y a eu un moment qui a été assez [52:16] exceptionnel c'est que on me posait des questions des fois sur certains sujets [53:04] et puis en fait si tu es juste de nature curieuse tu peux savoir enfin beaucoup de trucs en fait c'est fantastique tu peux vraiment aller creuser le fond des choses exactement bah d'ailleurs c'est ce que j'ai fait avec le setup tu vois là enfin je les je connaissais rien moi tout ce qui était calme je sais même pas c'était quoi qui accélère en fait j'ai posé une série de questions sur et à la fin il me dit ok bah tu prends ça ça et ça et je lui demander mais c'est quoi un Kabyle sceller c'est quoi ça sert à quoi une carte son pourquoi je peux pas [53:30] directement brancher son ordinateur quels sont les failles dans ce type system et en fait par par conversation tu apprends mais tellement plus vite quand tu apprends dans Google je suis musicien à côté et un truc qui m'intéressait c'est que j'ai une [ __ ] d'effet chez moi qui s'appelle une [ __ ] ouami ou en fait tu appuies sur la [ __ ] et en fait ça va monter d'un Octave ou deux octaves donc ça a fait un oui enfin tu vois ça ça monte ça monte la tonalité du son JT curieux de se dire comment je pourrais logiciellement refaire le même effet et du coup il m'a expliqué il y a [54:03] plusieurs implémentations d'algorithmes tu as le tu as le décodage de phases tu as un algorithme qui s'appelle le sola le psola etc en fait il m'a fait l'implémentation des algorithmes lancer j'ai pu compiler les algos mettre un mp3 en input et en fait tu vois ce qui se passe après j'ai pu faire des séquences un peu comme un arpégator enfin c'est un peu la Daft Punk un des effets un peu vocodeurs hop je mets les outputs et en fait après avec des systèmes de décoding de signal je lui dis mais ok mais quand tu changes l'octave et j'entends un petit glitch il me dit ah ça c'est un [54:39] problème connu c'est que on pourrait faire ce qu'on appelle une fonction de haming et en fait quand l'octave échange pendant un tout petit laps de temps on va fortement réduire le gain de l'audio [Musique] en fait moi j'ai pas écrit le code tu es seulement donné des feedbacks sur ce que j'entendais tu vois ça c'est bluffant quand même faire que comme lui il sait pas enfin il a pas de compréhension visuelle pas de compréhension sonore mais je pense il a été traîné sur des bouquins sur des Bitcoin et les implémentations de ces algorithmes là moi du coup j'écoute le son et je lui disais mais là [55:15] [Musique] là j'ai comme impression qu'un prime de buffering genre c'était pas du tout dans le tempo que je voulais ok je pense qu'on va essayer ça en fait à la fin je t'assure j'ai un algorithme qui fait la même chose que ma [ __ ] d'effet et qu'on a fait ça en une demi-heure enfin c'est j'ai compris comment ça marchait grâce à un lien de conversation avec avec un robot moi ça me c'est vrai que c'est tellement ce que je retiens cet épisode c'est à quel point le les systèmes d'AI en fait ils ont créé un et une autre manière en fait de enfin ils ont ils ont créé une manière [55:50] supplémentaire de de créer des choses et peut-être c'est peut-être il y a beaucoup de disciplines à avoir sur ça et de verger d'esprit à se forcer à regarder des vidéos sur voir comment les gens utilisent etc il y a toujours ces structures de c'est pas mal d'avoir des tests que ce soit en LinkedIn des tests fonctionnels pour que Unia qui va coder puisse se feedbacker elle-même savoir ce qui ne va pas tu vois d'ailleurs même quand pilote pour écrire des tests c'est must have genre c'est incroyable le truc il pense même des tests des fois tu es auto-complites des tests genre sur tiens tu as oublié celui-là en fait et enfin [56:23] il va il va te suggérer un test que tu avais pas pensé et ça a gagné tu fais tu te vois tu fais juste chez nous j'aimerais bien passer en IA ou peut-être utiliser l'IA pour modifier le système là c'est qu'on a une librairie une crise on fait du chat mais pas que du chat on peut aussi lire des mails tu vois genre tu utilises Chris en mode boîte mail en fait on des problèmes de ça c'est que il y a pas de standard de dans le mail pour définir ce que c'est qu'une signature et donc tu vois il y a parfois il y a des scènes [56:51] fromage iPhone mais ça existe aussi en français envoyer de mon iphone envoyer de ma boîte mail orange parfois il y a des pensées à la planète d'imprimer par sommeil tu as plein de formats de signatures différents avec des splitters de signatures différentes on a forqué une lib qui avait été faite à l'époque en rubis par GitHub ou en python enfin je sais plus en tout cas on a repris la même implémentation de libre puisque tu sais quand tu as une Michou guitare tu peux répondre à l'ici ou par mail et ça rentre dans les chiots voilà en fait on a repris ce même principe là pour nos [57:22] pour Christ mais en implémentant beaucoup plus de tests dedans beaucoup plus de formats de signature aujourd'hui on a un système qui est quasi parfait qui est très utilisé d'ailleurs mais en fait je me disais ouais on pourrait utiliser chat gepetty pour dans nos tests définir encore plus de tests de signature et du coup il y a encore plus de test de parcing de reggae etc et le futur en fait de à mon avis de ça et c'est ce que je sais google utilise déjà ça c'est utilisé de l'IA pour faire en fait quand tu reçois un mail définir ce que c'est que la zone utile d'email parce qu'en fait à coup de [57:58] reggaek sont on s'en sortira jamais il y aura toujours un cas qui marchera pas alors qu'en fait avec de l'IA tu pourrais naturellement reconnaître avec une assez simple reconnaître quelle est la zone utile et toi c'est pareil je sais que tu as des scrapper ou tu dois définir quels sont les dans une page que tu scrapes enfin je sais pas par exemple oui le LinkedIn mais parfois tu as le SIRET ils vont mettre des points des tirets des choses comme ça et ben là en fait tu pourrais faire une ya qui reconnaît vraiment à quoi ça ressemble aussi arrête tu vois et ça rabat les cartes tu peux tu peux [58:34] faire des tu vas faire ça sur un truc qui utilise juste avec un peu bifurqué du CIA ici on retrouvera les liens en tout cas n'hésitez pas aussi à nous dire en commentaire ce que vous en pensez normalement le son devrait être mieux on verra des nouvelles caméras nouveau son bon mais la prochaine fois il y aura deux micros comme ça ouais on verra on verra comme temporaire là et puis de toute façon c'est en forgeant qu'on devient forgeron et qu'on devient ça se maquette à bientôt allez bon ça salut --- About this transcript Read from YouTube's own caption track and laid out by ViewRank AI (https://viewrankai.com). ViewRank AI finds the videos already beating a creator's own average on Instagram, TikTok and YouTube Shorts, transcribes them from the audio itself in more than 60 languages, and turns what worked into new ideas and scripts. Free transcript tools, no account needed: https://viewrankai.com/tools How to read any video this way: https://viewrankai.com/llms.txt