Latest / Le Dernier Clic (avant la fin du monde) / 18 - Côté outils : Le portail du Dernier Clic, de la maquette au code
Transcript
- 0:13Bonjour et bienvenue dans le dernier clic,
- 0:14votre podcast tech,
- 0:15IA et no code.
- 0:16On se retrouve comme chaque semaine avec Lulu pour plonger dans les méandres de la technologie et essayer de clarifier un petit peu tout ça.
- 0:24Je vous préviens,
- 0:25on est un peu dissipé cette semaine,
- 0:27c'est la fin de journée,
- 0:29n'est-ce pas Lulu ?
- 0:30Oui,
- 0:30ça va,
- 0:30on va plonger dans les méandres de nos cerveaux aussi,
- 0:33je pense.
- 0:33J'espère qu'on trouvera des trucs intéressants.
- 0:36Oui,
- 0:37ça devrait le faire.
- 0:38Peut-être un peu plus le bazar que d'habitude,
- 0:42il faut voir.
- 0:44En tout cas,
- 0:45on se retrouve cette semaine pour continuer un petit peu notre triptyque sur le développement.
- 0:54Si vous ne nous avez pas suivis,
- 0:55ou même si vous nous avez suivis pour vous remettre un petit peu tout en tête,
- 1:00Il y a deux semaines,
- 1:00dans un épisode Côté Outils,
- 1:02on avait commencé à vous présenter notre portail.
- 1:06Enfin,
- 1:07en tout cas,
- 1:07comment on avait créé et développé un petit peu justement notre portail qu'on utilise nous pour le podcast.
- 1:13Donc en gros,
- 1:13notre outil logiciel qui nous permet de gérer la diffusion d'un épisode,
- 1:17enfin la préparation d'un épisode jusqu'à sa diffusion.
- 1:22Et on avait parlé notamment du fait qu'on l'a développé,
- 1:26assisté par IA,
- 1:27donc en bytecoding.
- 1:29Et on voulait vous montrer un peu qu'il y avait plein d'étapes avant,
- 1:32qu'il y avait plein de choses à faire,
- 1:34en tout cas dans notre vision.
- 1:36Et voilà,
- 1:36que le bytecoding,
- 1:37c'était très puissant.
- 1:38Mais il fallait quand même se creuser un petit peu la tête pour essayer de faire des choses intéressantes et surtout viables pour de la production derrière,
- 1:47pour que ce soit utilisé par des gens par la suite au quotidien et qu'il n'y ait pas tout qui explose dans tous les sens ou pour que vous puissiez par la suite le faire évoluer votre logiciel.
- 1:58La semaine dernière,
- 1:59on a essayé de faire un petit peu...
- 2:02Un petit peu,
- 2:02non.
- 2:04On a balancé un gros épisode par pain d'une heure 37,
- 2:0737 ou 38,
- 2:08sur le développement logiciel.
- 2:12La bonne nouvelle,
- 2:12c'est que ça va nous permettre d'aller plus rapidement sur certains passages aujourd'hui et de ne pas toujours détailler.
- 2:18On y fera sûrement référence quand on abordera certains sujets et si vous voulez le détail des grandes étapes qu'il y a dans un développement d'application,
- 2:26de manière générale dans les boîtes.
- 2:28On vous renvoie à l'épisode de la semaine dernière,
- 2:30qui est relativement assez pertinent pour vous donner une bonne idée du sujet des différents points.
- 2:41Et aujourd'hui,
- 2:42on reprend la suite sur notre portail et nous,
- 2:47et on va essayer d'avancer,
- 2:49d'aller un petit peu plus loin sur les étapes d'après,
- 2:53pour vous faire un mini récap'
- 2:56très court de ce qu'on s'était dit l'autre fois.
- 2:58C'est que le portail,
- 2:59à la base,
- 3:00nous on l'a fait parce qu'on utilisait plein d'outils qui étaient un peu éclatés.
- 3:03Et du coup,
- 3:04on avait des infos un peu partout.
- 3:06On avait besoin de centraliser tout ça en un seul endroit pour pouvoir bosser.
- 3:12Et pour pouvoir justement organiser nos podcasts et les amener à bon port.
- 3:16Et aussi,
- 3:16par rapport aux différents outils qu'on avait,
- 3:19on ne pouvait pas avoir des invités directement qui arrivent,
- 3:22qui interagissaient avec nous.
- 3:24Ça aurait été vraiment compliqué.
- 3:26Déjà qu'entre nous deux,
- 3:28on se dit si on doit rajouter une tierce personne là-dedans,
- 3:32on ne va pas lui faire vivre ça.
- 3:34C'est ça,
- 3:34c'est qu'il aurait fallu à chaque fois créer des trucs sur mesure pour chaque personne,
- 3:38en quelque sorte.
- 3:39Et faire comme malheureusement beaucoup de gens et beaucoup de boîtes font,
- 3:44de passer directement par du WhatsApp qui double avec du mail,
- 3:47qui triple avec du drive,
- 3:49qui enchaîne avec...
- 3:52Ou les pages de la chaîne partagées.
- 3:54plein de...
- 3:56Mais quand bien,
- 3:56même dans la page de la chaîne,
- 3:57il n'y a pas forcément tout,
- 3:58parce que les gens n'ont pas forcément le réflexe de venir voir les commentaires,
- 4:00etc.
- 4:02C'est ça,
- 4:02et on se dit,
- 4:04il y a des gens qui vont prendre le temps de venir discuter avec nous,
- 4:07donc c'est pour pas qu'on leur envole plus et que l'expérience soit aussi agréable que possible aussi.
- 4:14Oui,
- 4:15ce qui nous a amenés à nous dire qu'on avait besoin d'un portail,
- 4:18d'un outil pour nous,
- 4:19donc vraiment un outil collaboratif pour gérer tout ça,
- 4:21pour permettre d'avoir aussi nos invités.
- 4:24Donc il y a deux semaines,
- 4:25on avait fait un petit récap de la différence entre un site web et une application.
- 4:29On était revenu sur le fait que le cœur d'une application et la base de tout,
- 4:34c'est de définir un besoin,
- 4:36de comprendre le problème de départ et de bien cadrer en fait pourquoi on va faire un programme s'il n'y a pas déjà des solutions qui existent et à quoi notre logiciel doit répondre vraiment à terme.
- 4:48on avait aussi parlé du coup du...
- 4:53PRD,
- 4:54notamment,
- 4:55ce qui est l'équivalent d'un cahier des charges fonctionnel,
- 4:58dans lequel on va mettre...
- 5:00concrètement de quoi on a besoin après pour développer notre application.
- 5:03Et voilà,
- 5:04on avait convenu du fait,
- 5:06enfin on vous avait raconté un petit peu qu'en fait,
- 5:07une fois qu'on avait tout ça,
- 5:08on avait fait plein d'infos,
- 5:09on avait déblayé un peu le terrain,
- 5:11on avait assez de choses pour s'attaquer au maquettage.
- 5:15Donc vraiment au moment où on va réaliser le premier jet au final de l'application,
- 5:20mais sur sa partie vraiment design et interface,
- 5:22donc de mettre toutes les pages et à quoi va ressembler l'application.
- 5:26Donc là,
- 5:27c'est là que Lulu intervenait.
- 5:29et justement nous parler de comment elle avait pensé la maquette,
- 5:34comment elle l'avait faite et comment elle l'avait aussi...
- 5:37J'avais attaqué un peu cette recherche-là pendant que tu révisais le PRD de ton côté.
- 5:43Et c'est pour ça qu'on va reprendre,
- 5:46on en était arrivé la dernière fois,
- 5:48la confrontation de la maquette avec le
- 5:51PRD, on va dire,
- 5:52mis à jour.
- 5:54Parce que là,
- 5:55je ne sais pas si,
- 5:56par exemple...
- 5:57Pour une prochaine application,
- 5:58vu que maintenant,
- 5:59tu as trouvé un autre process pour faire ton PRD,
- 6:04je pense que la maquette va quand même moins différer.
- 6:06Et la confrontation dont on va parler là juste après,
- 6:09elle ne sera peut-être pas aussi importante.
- 6:11Ou je ne sais pas comment tu le vois.
- 6:14Ouais,
- 6:15alors,
- 6:16effectivement,
- 6:17là,
- 6:18en gros,
- 6:18le PRD,
- 6:18je l'avais fait avec une première méthode qui mélangeait la technique et le fonctionnel.
- 6:22Toi,
- 6:22tu t'étais basé là-dessus.
- 6:24tu as identifié des choses qui manquaient,
- 6:26tu les as rajoutées sur la maquette.
- 6:28Entre temps,
- 6:28moi j'ai repris du début en adaptant la méthode qui était dans le livre d'Alexis Kovalenko,
- 6:33le traité de vibe coding éclairé,
- 6:35et en remaniant un peu les différentes étapes à ma sauce.
- 6:39Et ce qui fait que quand tu m'as renvoyé la maquette,
- 6:40effectivement j'avais des choses qui différaient entre les deux,
- 6:45et notamment des choses en plus dans ta version.
- 6:50ou que je n'avais pas forcément pensé,
- 6:51ou que j'avais vu dans une deuxième version,
- 6:53et en fait,
- 6:53en les voyant à l'écran,
- 6:55je me suis tombé d'accord sur le fait que ce serait bien de les avoir dès le début.
- 6:59Il y avait quand même certaines choses que tu avais mises,
- 7:00je me suis dit,
- 7:01non,
- 7:01ça c'est quand même trop tôt,
- 7:02on le mettra plus tard.
- 7:03On va symboliser déjà notre...
- 7:05Quand on vous parle de V1 et V2,
- 7:07c'est vraiment la première version,
- 7:08l'essentiel de l'app.
- 7:10Et V2,
- 7:10c'est ce qui peut arriver dans un second temps et qui est moins critique pour les premières semaines ou les premiers mois d'utilisation.
- 7:21Et donc la confrontation,
- 7:22le principe c'est de se dire je vais prendre tout ce qu'il y a dans la maquette,
- 7:26je vais regarder ce que j'avais au départ,
- 7:28je vais faire le lien entre les deux,
- 7:30je vais voir ce qu'il y a en plus,
- 7:33ce que j'estime qu'on n'a pas besoin et on va démêler tout ça pour garder une version mise à jour du PRD et des
- 7:41User Stories qui reflète vraiment ce qu'on veut au niveau de l'application.
- 7:48Donc là effectivement c'était un cas où il y avait peut-être...
- 7:50plus de changements qu'il peut y avoir par la suite.
- 7:54Néanmoins,
- 7:55je pense que...
- 7:55au niveau fonctionnel aussi.
- 7:57Parce qu'il y avait des...
- 8:00Ça t'a rajouté un peu des user stories après,
- 8:03derrière ?
- 8:04Avec de nouvelles fonctionnalités ?
- 8:06Oui.
- 8:06Ok.
- 8:06Oui.
- 8:07Toutes nouvelles fonctionnalités que j'ai ajoutées passent par des user stories supplémentaires.
- 8:12Et là,
- 8:12c'est vrai que quand j'avais regardé dans le repo,
- 8:14tu avais fait un skill exprès pour la confrontation.
- 8:17Oui.
- 8:18Et ça,
- 8:19je ne sais pas,
- 8:20tu l'avais construit comment ?
- 8:21Tu étais parti avec le skill qui t'aide à construire les skills ou tu as fait autrement ?
- 8:29Je fais à ma méthode.
- 8:30Oui,
- 8:31ce n'était pas forcément dans le bouquin.
- 8:33C'était plus adapté à ce cas spécifique-là.
- 8:36De toute façon,
- 8:36même ce qui était dans le bouquin d'Alexis sur l'e-logique,
- 8:40en gros,
- 8:40à chaque fois que je fais un skill,
- 8:41je reprends la méthode que je veux déployer.
- 8:45Je la détaille.
- 8:47J'itère avec l'IA pour la clarifier et qu'on voit un peu où est-ce qu'il y a des manques et où est-ce qu'il y a trop de choses et qu'on en fasse quelque chose de cohérent.
- 8:54Et après,
- 8:55le skill d'anthropique.
- 8:57Pour rappel,
- 8:58les skills,
- 8:58c'est les compétences que vous pouvez mettre en place dans l'IA,
- 9:02qui sont des méthodes ou des process que vous pouvez intégrer à votre IA pour qu'elle déroule votre façon de bosser,
- 9:08globalement.
- 9:09Et donc,
- 9:10il y a un skill,
- 9:10il y a une compétence qui est disponible dans le cloud qui permet de créer ces fameux skills.
- 9:15d'une manière structurée avec plusieurs choses,
- 9:19parce qu'en fait,
- 9:20l'avantage des skills et des compétences,
- 9:22c'est qu'on peut les exporter pour les passer au point.
- 9:26Et aussi qu'on peut les construire de différentes manières,
- 9:28avec des références,
- 9:28pour en faire des choses plus ou moins détaillées,
- 9:30plus ou moins complexes,
- 9:32avec plus ou moins d'étapes.
- 9:34Et en fait,
- 9:35non,
- 9:35la confrontation,
- 9:36je me suis posé sur les méthodes,
- 9:38en me disant,
- 9:39je veux qu'on reprenne tel point par rapport au PRD,
- 9:41je veux qu'on challenge ça par rapport à la maquette,
- 9:44que tu identifies ces différents points.
- 9:45En fait,
- 9:46ce que je n'ai pas challengé dans la confrontation,
- 9:49c'est la partie design.
- 9:50Parce que la partie design,
- 9:52même le responsive et même des choses comme ça,
- 9:55le PRD n'est pas là pour ça.
- 9:56Il n'est là vraiment que pour la partie fonctionnelle.
- 9:58et dire qu'on a besoin que l'application permette de faire tout ça.
- 10:02Mais quant à savoir si la maquette est parfaitement adaptée au mobile,
- 10:07quant à savoir si elle répond bien à toutes les normes d'accessibilité,
- 10:10quant à savoir si ce bouton en Ausha droite ne serait pas le mieux en bas à gauche,
- 10:12on s'en fout.
- 10:13Ce n'est pas à ce moment-là qu'on va l'ajuster.
- 10:17Et donc j'ai construit mon skill pour qu'il a identifié tous les points qui sont importants pour moi et qu'on voit ce qui doit être ajusté et adapté.
- 10:28et ajouté et vu que j'ai fait mon skill,
- 10:32je savais que sur la prochaine maquette que j'aurais à récupérer avant le dev,
- 10:36je vais la confronter dans tous les cas.
- 10:39Ah oui,
- 10:39oui,
- 10:39complètement.
- 10:40Parce que maintenant que j'ai l'outil,
- 10:41au final,
- 10:44même s'il y a peu de choses à retoucher,
- 10:45il y en aura probablement quand même quelques...
- 10:47Enfin,
- 10:48il y a souvent moins des petits détails et des petites choses à remanier et c'est juste que ça ira beaucoup plus vite.
- 10:54Mais...
- 10:56En tout cas,
- 10:56à partir de là,
- 10:57en sortant de la confrontation,
- 10:58j'avais mes documents fonctionnels qui étaient tous à jour,
- 11:03prêts,
- 11:04raccords avec la maquette en termes de ce qu'on voulait.
- 11:07C'est vrai que moi,
- 11:07ce que j'avais bien aimé,
- 11:09parce que j'avais lu justement ce document de confrontation,
- 11:13et là,
- 11:14ce qui était bien,
- 11:15c'est que chaque élément qui différait entre la maquette et le PRD,
- 11:22c'est toi qui l'as arbitré.
- 11:23c'est toi qui as choisi oui,
- 11:25non,
- 11:25et c'est pas au regard du projet,
- 11:28Claude a choisi si ça partait en V1,
- 11:31V2,
- 11:32ou si c'était pas pertinent,
- 11:33ou qu'il fallait mieux garder la version maquette.
- 11:35Après,
- 11:36il y avait quand même de l'argumentation au regard du projet,
- 11:40mais tu avais quand même cette main où c'est toi qui décidais si on l'intégrait maintenant,
- 11:45si on l'intégrait pas,
- 11:46si ça restait au backlog pour la V2.
- 11:50Oui,
- 11:51ça,
- 11:51comment...
- 11:52On l'avait déjà dit dans les précédents épisodes,
- 11:55mais surtout celui où on vous a parlé de notre application.
- 11:59L'intérêt de l'IA,
- 12:00c'est qu'elle l'exécute pour vous,
- 12:02mais ça reste à vous de piloter,
- 12:04d'avoir la stratégie et la logique.
- 12:06Et quand vous ne comprenez pas des choses qu'elle vous raconte,
- 12:08vous demandez de clarifier,
- 12:11de détailler,
- 12:12d'expliquer.
- 12:12Mais ça peut arriver de laisser des choix à l'IA parce que sur le moment,
- 12:19on est fatigué,
- 12:19on ne comprend pas trop.
- 12:21vas-y parce que là j'ai pas trop suivi,
- 12:23fais-le à ta sauce.
- 12:24Et qu'on se rend compte plus tard en fait qu'on n'aurait pas dû,
- 12:28parce que le choix qu'elle a fait ne correspond pas à ce qu'on voulait,
- 12:31et qu'on s'en rend compte un peu plus tard et que du coup c'est galère et ça oblige à changer des choses et à se prendre un peu la tête parce que ce qui nous aurait pris une minute à la base à juste demander une explication plus claire et à choisir en étant plus conscient de la décision se
- 12:47traduit par beaucoup plus de temps à la fin.
- 12:51à la fin parce que ça a des implications techniques entre temps il y a des choses qui ont été développées et c'est exactement ce qu'on vous disait dans l'épisode dernier plus tard vous allez prendre conscience d'un problème et d'un besoin et de devoir le corriger,
- 13:04enfin plus tard non,
- 13:05c'est un cycle de développement d'applications,
- 13:08plus ça va vous coûter du temps,
- 13:09de l'énergie et des galères pour un résultat qui sera potentiellement moins bon parce qu'il y aura des compromis à faire quand même que si ça avait été pensé au départ ouais
- 13:23Et selon les cas,
- 13:24vous allez pouvoir faire mieux ou des fois être bloqué.
- 13:28C'est ce qu'on avait aussi évoqué en parlant de dette technique.
- 13:32Vous pouvez vous retrouver bloqué si vous avez fait une succession de mauvais choix ou de choix trop rapides pour aller vite à un objectif sans penser à ce qui pouvait arriver plus tard et qu'au moment où vous voulez aller plus loin,
- 13:47vous êtes obligé de casser tout un bout de votre application pour le reprendre de zéro.
- 13:52Et ça,
- 13:54c'est le bazar.
- 13:56Mais voilà,
- 13:58en tout cas,
- 13:59ça nous amène à la partie d'après,
- 14:01qui est le choix d'architecture.
- 14:04On s'en va le passer un peu rapidement,
- 14:05mais en fait,
- 14:06l'objet de cette étape-là,
- 14:08ça va être de définir exactement ce qu'on veut,
- 14:12techniquement parlant,
- 14:13pour développer notre application.
- 14:15C'est-à-dire,
- 14:17qu'est-ce qu'on veut pour le front-end ?
- 14:18Pour rappel,
- 14:19le front-end,
- 14:19c'est la partie interface.
- 14:21où est-ce qu'on va mettre le code qui va gérer ça et qu'est-ce qu'on va utiliser comme langage de programmation dessus c'est là où on va définir aussi le schéma de la base de données,
- 14:30donc se dire ok on va utiliser tel backend,
- 14:33pour rappel le backend c'est votre arrière boutique c'est là où vous avez la logique d'une application,
- 14:39où on va gérer les utilisateurs,
- 14:41on va gérer l'information comment c'est enregistré,
- 14:43comment c'est stocké on va avoir aussi toutes les règles qui vont se déclencher l'homme.
- 14:48vraiment quand vous allez travailler,
- 14:49de dire quand j'appuie sur un bouton il se passe plein de choses,
- 14:51mais en fait il se passe plein de choses parce que derrière c'est côté back-end.
- 14:54Donc ça là vous allez choisir en fait vraiment les technologies,
- 14:58les mots...
- 14:59les outils,
- 15:00les logiques,
- 15:01les langages que vous allez mettre en place et aussi comment vous allez penser la sécurité,
- 15:06par exemple.
- 15:07En fonction de tel ou tel backend,
- 15:10ça va être un choix stratégique ou pas.
- 15:12En fonction de où vous allez héberger aussi votre application,
- 15:17au niveau de la sécurité,
- 15:19ça va avoir plus ou moins d'incidence.
- 15:23À cet endroit-là,
- 15:24on ne va pas anticiper et planifier tout le...
- 15:29le code de l'application,
- 15:29ce n'est pas du tout l'objet.
- 15:31C'est juste de mettre,
- 15:32de définir tout le cadre technique sur lequel on va s'appuyer et sur lequel on va travailler.
- 15:38Parce que les migrations,
- 15:39c'est galère,
- 15:40Frédéric.
- 15:43Oui,
- 15:44ça dépend.
- 15:45Ça dépend à quel moment on est amené à faire une migration.
- 15:47Ça dépend.
- 15:49Et oui,
- 15:49effectivement,
- 15:50on parlera à la fin de...
- 15:51Peut-être pas aujourd'hui,
- 15:53ça dépendra.
- 15:54Mais on parlera de migration,
- 15:57effectivement.
- 15:58Parce que justement,
- 15:59j'ai fait un choix d'architecture sur du Supabase,
- 16:02qui est un outil très connu et très adapté pour le vibe coding,
- 16:06pour héberger les données et pour gérer tout ça.
- 16:09Et qui marche très bien dans la version que j'utilise aujourd'hui,
- 16:14qui est en cloud,
- 16:16mais qui est un outil américain,
- 16:19mais qui est aussi open source et donc qui permet de l'héberger sur ses propres serveurs où on veut et comme on veut.
- 16:25Et ce back-end,
- 16:26justement,
- 16:27là,
- 16:27je suis en train de commencer une migration pour essayer de l'amener sur une version hébergée,
- 16:35auto-hébergée.
- 16:37Je reviendrai plus tard dans le détail du pourquoi,
- 16:39comment,
- 16:40et du fait que ce n'est pas moi directement qui vais gérer l'infrastructure de ça.
- 16:44Je veux rester quand même sur quelque chose d'encadré.
- 16:47Mais le choix d'architecture,
- 16:49ça fait aussi partie des choses,
- 16:52des moments où vous allez vous...
- 16:53poser la question de est-ce que j'utilise quelque chose d'accessible comme du lovable ou comme des outils comme ça qui sont plus simples à prendre en main est ce que vous allez être dans du vibe coding on va dire plus avancé ou vous allez vraiment du
- 17:09coup gérer enfin gérer vous appuyez sur des outils d'infrastructures un front end un back end mais sur lesquels vous allez devoir quand même gérer beaucoup plus de choses à la main
- 17:22connaissance de cause en tout cas et sachant qu'il ya un autre niveau encore au dessus c'est les comme dire c'est les développeurs et développeuses qui vont créer eux mêmes leur backend et construire la base de données et tout gérer eux mêmes mais n'allez pas là dessus si on n'est pas déjà développeurs développeuses l'avantagent des outils entre deux comme du super base comme du xano comme
- 17:42du bah du coup il y a corvex aussi corvex il est plus ceux d'avant mais vous avez quelques outils comme ça qui vous permettent encore en tant que
- 17:51personnes un peu techniques mais pas complètement développeurs et qui enfin voilà vous pouvez comprendre de la pro de la programmation visuelle et vous êtes en mesure d'interagir et de savoir ce qui se passe et de vous former sur des outils comme ça en
- 18:08fait l'avantagé que ces outils là ils vont vous apporter une couche de sécurité supplémentaire ils vont héberger vos données ils vont mettre en place des sauvegardes automatiques tous les jours ils vont vous mettre énormément de facilité pour vous donner un cadre alors ça n'empêche pas de faire des bêtises au niveau de la sécurité
- 18:21Puisque derrière,
- 18:22c'est vous qui faites le code.
- 18:23Donc,
- 18:23si vous faites des trous dans le code,
- 18:25ils ne vont pas garantir ça.
- 18:27Mais en revanche,
- 18:29le serveur tourne chez eux,
- 18:31il est protégé déjà de base de pleine manière,
- 18:33il a des soccards.
- 18:35C'est quand même des assistances et des choses comme ça qui sont très importantes et très utiles.
- 18:41Et voilà,
- 18:41tout ça pour dire que le choix d'architecture,
- 18:43il se fait à ce moment-là.
- 18:44Oui,
- 18:44vraiment,
- 18:45avant de commencer à...
- 18:46coder,
- 18:46c'est pas au fil de l'eau où on va dire tiens,
- 18:49de quoi je vais avoir besoin même de voir en termes de compatibilité entre les différents architectures qu'on va choisir.
- 18:59Parce que par défaut,
- 19:00si on se lance dans du code,
- 19:03Claude il va faire un fichier JS et après il y a la question qui arrive,
- 19:07c'est quoi ton back-end ?
- 19:09Ça tourne sur mon PC.
- 19:11Mais ça c'est un bon point.
- 19:14justement,
- 19:14et Kata peut d'ailleurs parler de tes apps,
- 19:17parce qu'au moment du choix d'architecture,
- 19:19on n'est pas obligé d'aller sur du Superbase ou sur des outils comme ça en ligne pour que tout le monde y accède et tout.
- 19:27Tout dépend de votre app,
- 19:28en fait.
- 19:29Si ça correspond à un besoin juste pour vous au quotidien qui n'implique pas d'accès à Internet ou qui peut tourner que sur votre machine ou qui peut avoir besoin d'accès à Internet,
- 19:41etc.
- 19:42En tout cas,
- 19:42qui est que pour vous.
- 19:44vous pouvez faire des choses qui sont vachement plus douces,
- 19:47on va dire,
- 19:48moins dangereuses.
- 19:49Ça,
- 19:49mais par défaut,
- 19:49Claude,
- 19:50il ne va pas proposer,
- 19:52même selon l'application,
- 19:53parce que l'application à laquelle je pense,
- 19:57le but,
- 19:58c'était potentiellement de la...
- 20:00rattaché au portail,
- 20:03mais il n'y a pas eu ce questionnement de sur quel backend on part.
- 20:12Quand on lui demande c'est quoi le backend après pas mal d'itérations,
- 20:15c'est parfait cette question tombe à pic.
- 20:18Justement,
- 20:20il y a un fichier JS.
- 20:21C'est ça,
- 20:22j'ai un fichier,
- 20:23tu appelles dedans,
- 20:24j'ai tout foutu en vrac,
- 20:25et puis débrouille-toi.
- 20:29Et voilà,
- 20:29ça,
- 20:29ça passe sur un besoin,
- 20:32sur un usage,
- 20:34tout seul sur son ordi ou tout seul à aller justement faire des manips qui ne sont pas sensibles,
- 20:39qui ne sont pas graves,
- 20:40où vous n'avez pas forcément de données,
- 20:42quand même,
- 20:42il n'y a pas besoin de sauvegarde,
- 20:44il n'y a pas besoin de choses critiques.
- 20:46Il y a plein de cas,
- 20:47en fait,
- 20:47où ça ira très bien,
- 20:49tout simplement.
- 20:50D'ailleurs,
- 20:50c'est comme l'application dont tu nous avais parlé il y a un moment.
- 20:55Ah,
- 20:55de convertisseur ?
- 20:56Ouais.
- 20:57Oui,
- 20:57ça,
- 20:57c'était local.
- 21:00Et je n'avais pas besoin de plus.
- 21:01Mais ça,
- 21:02je le savais.
- 21:02Mais là,
- 21:03par exemple,
- 21:05l'éditeur pour générer les caroussels ou tout visuel lié au podcast à partir de la transcription d'un épisode,
- 21:15moi,
- 21:15dans l'idée,
- 21:16c'était de le faire pour gagner du temps,
- 21:19moi,
- 21:21sur mon PC.
- 21:22Et après,
- 21:23c'est de se dire...
- 21:24Ah,
- 21:24mais ça serait quand même vachement bien que si on appuie sur un bouton dans le portail,
- 21:28ça le fasse automatiquement.
- 21:30Et que je n'ai pas besoin d'avoir mon PC allumé pour le faire et que ça ne dépende pas que de moi non plus.
- 21:35Et pourquoi pas que les invités,
- 21:37quand ils viennent sur le portail,
- 21:38puissent aussi générer les visuels pour communiquer sur l'épisode dans lequel ils ont été invités.
- 21:43Et là,
- 21:44je sais que le projet,
- 21:47je le vois plus comme un prototype parce que ça sera impossible de revenir au départ pour le refaire proprement.
- 21:53partir presque de zéro dans ce cas-là.
- 21:57En tout cas,
- 21:57je pense.
- 21:58Ça sera mieux.
- 21:59Le backend,
- 22:00c'est sûr.
- 22:01Sur le frontend,
- 22:01non.
- 22:01Ça permettra de garder déjà toute l'interface,
- 22:05toute la partie visuelle,
- 22:06toute la logique.
- 22:08Mais oui,
- 22:08ce sera un proto.
- 22:09De là,
- 22:09on va pouvoir en déduire les fonctionnalités dont on a besoin.
- 22:12Le cycle dont on a parlé jusqu'à présent,
- 22:14on va le refaire,
- 22:15mais en ayant déjà la Mac à ta disposition parce qu'en fait,
- 22:17tu auras conceptualisé et itéré et développé.
- 22:22ce que tu voulais en termes de besoins,
- 22:24en termes de tout ça,
- 22:25tu l'as fait directement en codant.
- 22:27Oui,
- 22:28et puis en soi,
- 22:28ça marche sur mon PC.
- 22:30Je pense que je vais l'utiliser au début,
- 22:32moi de mon côté,
- 22:33pour l'affiner et qu'on puisse vraiment,
- 22:35quand on va commencer le vrai développement,
- 22:39pas vraiment notre faux et de vrai développement,
- 22:40mais quand ça sera en vue de l'intégrer au portail ou pour utilisation à plusieurs personnes,
- 22:48ça sera de...
- 22:50vraiment prendre en compte tout ça mais d'arriver avec quelque chose où je ne vais pas me dire ah bah tiens c'est vrai que ça serait mieux comme ça ou alors c'est vrai que des contrôles Z c'est pratique.
- 23:01Je ne sais pas comment ça va être fait en back-end,
- 23:03ça va être marrant.
- 23:07Il ne faut pas me laisser développer.
- 23:11Ça dépendra si ton contrôle Z a besoin qu'il affecte les autres ou pas.
- 23:15Aujourd'hui tu ne l'as que en front de toute façon,
- 23:18ce qui ne te concerne que toi.
- 23:20Je pense que ça peut suffire.
- 23:22Après,
- 23:22dans l'idée,
- 23:22ça serait même de presque plus avoir d'interface.
- 23:25Là,
- 23:25je m'en sers pour moi itérer et voir,
- 23:27mais d'arriver au maximum avec une automatisation et utiliser l'IA le moins possible.
- 23:34Mais là,
- 23:34pour la partie itération,
- 23:35c'est bien,
- 23:36mais après,
- 23:36d'arriver sur quelque chose de très déterministe,
- 23:39qui vient juste remplir des cases sur mon image.
- 23:44Il n'y a pas besoin de régénérer,
- 23:47d'utiliser de l'IA.
- 23:48et déjà le...
- 23:49En soi,
- 23:50le petit logiciel que j'ai fait,
- 23:52c'était pour ne pas avoir à utiliser de l'IA à chaque fois,
- 23:55pour refaire des visuels qui partagent un même template.
- 24:00Et là,
- 24:01ça peut déjà presque tourner sans l'IA et c'est trop,
- 24:03trop cool.
- 24:04Oui,
- 24:04parce que pour...
- 24:06Je j'en vois un peu.
- 24:07En gros,
- 24:08typiquement,
- 24:09quand on parle de template,
- 24:10on parle de modèle.
- 24:11Donc là,
- 24:11pour le coup,
- 24:12un modèle visuel.
- 24:13Donc,
- 24:14comme un...
- 24:16Un peu comme les images que vous avez quand on diffuse les épisodes du podcast que vous pouvez avoir sur YouTube ou sur votre lecteur de podcast.
- 24:23Et Lulu avait fait un carousel notamment sur LinkedIn justement avec plusieurs images,
- 24:27avec du texte,
- 24:29le carousel était très joli,
- 24:30avec plein de diapos différentes et des approches différentes.
- 24:33Et là le concept est temps de se dire,
- 24:36par exemple dans un outil comme Katva,
- 24:38j'ai ce modèle-là qui est disponible,
- 24:40mais je vais aller modifier à la mano chaque bout.
- 24:45changer du texte ou éventuellement choisir plutôt tel ou tel visuel ou tel ou tel effet.
- 24:51Et là,
- 24:53c'est qu'en gros,
- 24:53tu t'es fabriqué toi-même ta collection de modèles.
- 24:56Enfin,
- 24:56tu les as récupérés depuis Canva pour les mettre comme ça là-dedans.
- 24:59Ah,
- 25:00j'ai pas utilisé du tout Canva.
- 25:02pour le carousel.
- 25:03Oui,
- 25:04mais tu les avais créés avec quoi ?
- 25:05Avec Cloud
- 25:05Design ? Oui.
- 25:07D'accord.
- 25:08Enfin,
- 25:08à partir d'un spi,
- 25:11de trucs que j'avais presque dessinés à la main.
- 25:14C'était de me dire,
- 25:16tiens,
- 25:18je suis repartie pas mal du proto que j'avais fait pour le site web et presque utiliser différentes parties du site web,
- 25:24mais transformé en carousel pour avoir une certaine cohérence pour quand on fera le site web.
- 25:30Mais c'était dans Cloud Design.
- 25:32et ça avait été une purge pour avoir un PDF.
- 25:35Je me dis,
- 25:36OK,
- 25:36pour la première fois,
- 25:38pour faire mes itérations,
- 25:40pour me dire,
- 25:41tiens,
- 25:42là,
- 25:42j'ai effectivement trois transcriptions d'épisodes parce qu'en plus,
- 25:46on en a annoncé trois d'un coup.
- 25:48De me dire,
- 25:49là,
- 25:49j'aurais un bon panel de possibilités.
- 25:53Mais il y a des moments où j'aurais envie de changer le fond et je veux pouvoir l'éditer à la main parce que là,
- 25:58c'est trop coûteux en énergie,
- 26:00en token.
- 26:01Enfin,
- 26:01juste...
- 26:02pour changer et je me suis dit là je sais j'ai un exemple,
- 26:07à partir de cet exemple je vais générer différents templates et l'idée c'est de les modifier directement et de pourquoi pas avoir un format JSON à partir de la transcription d'un épisode et de se dire tiens
- 26:24pour telle citation c'est tel slide qui correspondra le mieux donc on remplit enfin voilà c'est...
- 26:32C'est un peu l'idée pour le moment.
- 26:36Pour finir sur la représentation visuelle que vous pouvez vous en faire,
- 26:39c'est de vous dire que vous avez plusieurs choix de diapos.
- 26:42Vous en choisissez une et après,
- 26:44vous avez juste des petites flèches qui vont vous permettre de cliquer pour changer d'une variante à l'autre,
- 26:48pour changer des logos,
- 26:52des bouts,
- 26:52des emplacements,
- 26:53changer de la couleur,
- 26:54changer de la profondeur.
- 26:55Mais vraiment personnaliser pour le dernier clic.
- 26:58Et comme ça,
- 26:59relâcher les couleurs.
- 26:59Et ce que j'aime bien,
- 27:01c'est que là,
- 27:01je sais que j'ai que ce qu'il me faut.
- 27:03Parce que sinon,
- 27:04dans Canva,
- 27:04on peut perdre énormément de temps à essayer plein de trucs.
- 27:09Là,
- 27:09au moins,
- 27:10ça me permet de me concentrer plus sur le contenu et de me dire OK,
- 27:13la mise en forme,
- 27:14elle est bien.
- 27:14Je l'ai déjà testée,
- 27:15je l'aime bien.
- 27:16Je peux changer quand même un peu mon fond,
- 27:18mais c'est quand même trois fonds parmi celles que j'avais itérées sur le site web.
- 27:24Donc,
- 27:25ça permet de rester un peu focus.
- 27:28Oui,
- 27:28en fait tu as fait ton propre outil no-code,
- 27:30donc vraiment ton propre outil de programmation visuelle,
- 27:33parce qu'à la fin tu ne fais qu'agencer et gérer justement des...
- 27:36Parce que tu peux rajouter des blocs,
- 27:37tu peux rajouter...
- 27:38J'ai vu que tu avais des ajouts de...
- 27:40Et ça tourne sur le PC en local,
- 27:42tout seul,
- 27:42il n'y a pas besoin d'aller en ligne,
- 27:46machin,
- 27:46enfin voilà,
- 27:46là je peux le faire tout seul,
- 27:49c'est trop bien !
- 27:50Oui,
- 27:50tu as ton propre outil sur mesure...
- 27:53Oui,
- 27:53c'est trop bien !
- 27:56Mais bon,
- 27:57tu veux quand même le brancher au...
- 27:58Je me suis dit,
- 28:00ça serait cool quand même.
- 28:01Tu veux quand même le brancher au bout du monde.
- 28:02Oui,
- 28:02parce que tout à l'heure,
- 28:03tu parlais de JSON.
- 28:04Pour celles et ceux qui n'ont pas en tête,
- 28:06en gros,
- 28:06c'est ce qui va nous permettre après d'exporter des informations ou d'alimenter justement ce petit moteur de template de manière automatisée,
- 28:18de manière programmatique.
- 28:19Donc,
- 28:19ce soit avec des automatisations ou avec du code,
- 28:23de se dire,
- 28:23ben voilà,
- 28:24là on a...
- 28:25on peut lui envoyer les infos qui arrivent typiquement,
- 28:28par exemple pour les citations,
- 28:29c'est de se dire,
- 28:30on a un transcript de nous qu'on récupère déjà dans la plateforme,
- 28:34et on va demander à une toute petite IA d'aller identifier les citations les plus intéressantes pour un invité ou une invitée,
- 28:43et après la personne pourra choisir parmi les différentes citations celle qu'elle veut garder pour mettre sur un des templates disponibles,
- 28:51et elle pourra mettre sa photo.
- 28:53quand tu voulais mettre ça.
- 28:54Oui,
- 28:55pour modifier aussi avec l'effet un peu du automne,
- 28:58aussi en magenta.
- 29:00Donc là,
- 29:00c'est un autre outil qui va arriver peut-être.
- 29:04Oui,
- 29:04tu vas te calmer sur les outils.
- 29:06Petit à petit,
- 29:07parce qu'on est déjà deux à rajouter avec tes histoires.
- 29:10Celui-là,
- 29:11je ne sais plus ce que c'est l'autre,
- 29:12mais il y en a deux.
- 29:14Oui,
- 29:14si je t'ai fait une démo juste avant.
- 29:18Pour modifier les couleurs des images,
- 29:20enfin,
- 29:21de trucs.
- 29:25C'était un autre ça ?
- 29:26Je mélange les deux.
- 29:28Oui,
- 29:28c'était un autre encore.
- 29:30Pour modifier les images en mode peinture plus ancienne et les raconter dans la couleur.
- 29:38Oui,
- 29:38celui-là,
- 29:39il est plus pour créer des images dans la palette graphique,
- 29:43des assets,
- 29:44qui pourront servir après à l'autre générateur de templates.
- 29:48C'est ça,
- 29:48ou pour mettre sur le site internet.
- 29:51Si on met les portraits,
- 29:53ça serait avec ce duotone des couleurs du dernier clic.
- 29:57Et voilà,
- 29:58je ne vais pas,
- 29:59pour chaque invité,
- 30:00le faire à la main.
- 30:01Et je me dis,
- 30:02ça peut être cool qu'eux puissent mettre leurs photos.
- 30:06Il y a un détourage aussi automatique.
- 30:09Et puis,
- 30:09ça met directement les bonnes couleurs.
- 30:11Et après,
- 30:11ils peuvent avoir leurs petites citations.
- 30:13C'est prêt à publier.
- 30:14C'est cool.
- 30:14Et voilà,
- 30:16un jour.
- 30:17Oui,
- 30:18un jour.
- 30:19On va déjà migrer le Superbase là.
- 30:21Et faire l'API.
- 30:23Et après...
- 30:24L'API...
- 30:25Oui,
- 30:26bon ça l'est
- 30:27On a déjà identifié,
- 30:28mais oui.
- 30:29Alors,
- 30:30on enchaîne.
- 30:31Après tout ça,
- 30:31on a fait un petit détour en parlant d'architecture.
- 30:34On est parti sur un peu tout ça.
- 30:37L'étape d'après,
- 30:39très simple,
- 30:40c'est que je fais un audit avant le développement.
- 30:43Le principe de l'audit,
- 30:44sur le portail du dernier clic,
- 30:46j'avais fait cinq passes de relecture.
- 30:49Alors,
- 30:49pas que tout seul,
- 30:50avec l'IAV aussi.
- 30:52Là,
- 30:53normalement,
- 30:53j'ai calibré le skid pour descendre à trois passes la prochaine fois.
- 30:57Mais en fait,
- 30:59l'idée de cette étape-là,
- 31:00c'est de reprendre tous les documents qui sont déjà prêts,
- 31:04donc le PRD,
- 31:06les user stories,
- 31:07et aussi les autres documents qui ont été déjà identifiés.
- 31:11Enfin,
- 31:12parce que,
- 31:13bref.
- 31:14Allez écouter l'autre épisode,
- 31:15on ne va pas tous le refaire maintenant.
- 31:17Mais de se dire,
- 31:18ok,
- 31:18maintenant qu'on a travaillé là-dessus,
- 31:19il y a probablement,
- 31:21vu que ça fait pas mal de matière,
- 31:22si l'application est un peu solide,
- 31:25il commence à y avoir déjà un...
- 31:27un certain nombre de choses.
- 31:28Il y a probablement des détails,
- 31:29des choses qui ont pu échapper à la vigilance et notamment à travers la confrontation aussi,
- 31:35parce qu'entre-temps,
- 31:35il y a eu le passage maquette.
- 31:40Et donc l'audit avant le développement,
- 31:41il sert à ça,
- 31:42à aller relire tout,
- 31:43identifier où est-ce qu'il y a des incohérences,
- 31:45à trancher sur ces incohérences pour dire,
- 31:48dans tel document,
- 31:49on dit que la personne doit pouvoir faire ça au moment de la diffusion d'un épisode.
- 31:55Mais dans l'autre document,
- 31:56on dit que l'invité,
- 31:57il ne peut pas interagir sur la jaquette de fin,
- 32:02par exemple.
- 32:04Et là,
- 32:04pareil,
- 32:05on va trancher à nouveau.
- 32:06On va reprendre les décisions et on va revalider.
- 32:09Et le but,
- 32:10c'est qu'à la fin de cette phase,
- 32:14tout soit cohérent,
- 32:15que tous les documents soient cohérents,
- 32:16qu'il n'y ait pas de trou,
- 32:18qu'il n'y ait pas un réglage A qui devient un truc B à un autre endroit,
- 32:22alors que c'était censé être logique.
- 32:25d'avoir quelque chose de sain et de pré-odave globalement.
- 32:31Il reste un petit truc quand même avant d'attaquer le développement,
- 32:35c'est le cahier de recettes.
- 32:36Le cahier de recettes,
- 32:37on en avait déjà parlé aussi.
- 32:40L'idée étant de se dire,
- 32:41chaque fois qu'on a identifié quelque chose qui doit être dans l'application,
- 32:45on fait un scénario de test en face et le cahier de recettes,
- 32:49ça va être en gros un cahier qui va recenser de manière détaillée tous les tests à faire,
- 32:53tous les scénarios de tests à faire.
- 32:55par rapport à toutes les user stories,
- 32:57etc.
- 32:58Et voilà,
- 33:01je crois que sur les étapes,
- 33:02avant le développement,
- 33:03on n'est pas mal.
- 33:04Ça ne nous aura pris qu'un épisode et demi,
- 33:08trois quarts.
- 33:09Voilà.
- 33:10Donc maintenant,
- 33:11vous êtes prêts à développer ?
- 33:12C'est formidable.
- 33:15Enfin.
- 33:16Enfin.
- 33:17On est loin du...
- 33:20Fade up qui...
- 33:22Voilà,
- 33:23le mini prompt.
- 33:25Il s'en est passé des choses,
- 33:26quand même.
- 33:27Toujours pareil,
- 33:28ça dépend de ce qu'on veut faire.
- 33:30Parce que toi,
- 33:31sur les apps dont on parlait,
- 33:33il y en a normalement une ou deux,
- 33:35celle que tu as utilisée en local sur les templates,
- 33:38tu es partie de l'idée du concept et tu as créé un peu en même temps.
- 33:43Oui,
- 33:43complètement.
- 33:44Et je me dis,
- 33:44mais ça aurait été trop lourd de passer par toutes ces étapes-là pour faire,
- 33:49parce que je voulais juste voir.
- 33:51Et avoir un petit truc,
- 33:53même en local sur mon PC,
- 33:54qui me permettrait déjà de...
- 33:58Enfin,
- 33:59pas forcément d'automatiser,
- 34:00mais de voir les choses qui se répètent et de pouvoir au moins gérer ces parties-là.
- 34:06Et après,
- 34:06c'est quand je vois les possibilités,
- 34:08c'est le côté visuel qui me plaît bien.
- 34:11Et je pense que je n'aurais pas du tout été jusque-là si j'avais dû me poser sur des specs,
- 34:18sur le PRD et tout ça.
- 34:21C'est plus j'ai une idée,
- 34:22je l'attente.
- 34:23En plus,
- 34:23ça me sert parce que j'identifie un besoin et on verra après si ça vaut le coup de l'amener plus loin ou pas.
- 34:30Mais déjà,
- 34:30en l'état,
- 34:31je peux m'en servir et c'est cool.
- 34:33Il n'y a pas forcément besoin de partir dans de l'over-engineering non plus parce que ça,
- 34:37c'est un autre piège.
- 34:40Et voilà,
- 34:41si c'est fait pour tourner sur mon PC,
- 34:42non,
- 34:43ce n'est pas forcément nécessaire.
- 34:45C'est les différentes catégories qu'on avait évoquées dans tous les cas.
- 34:51Oui,
- 34:51parce que même si tu ne les as pas formalisés,
- 34:52que tu n'as pas fait le PRD et tout,
- 34:53tu étais quand même passé par toutes les phases de se dire « Ok,
- 34:56j'ai besoin de ça,
- 34:56j'ai identifié que j'avais… »
- 34:57Tu avais quand même un certain nombre de choses en tête avant de t'attaquer au dev.
- 35:01Et tu avais déjà identifié que de toute façon,
- 35:04là,
- 35:04ce que tu allais faire,
- 35:05c'était que pour toi,
- 35:06en local,
- 35:07sur ton poste,
- 35:08sans conséquence de base.
- 35:09Oui,
- 35:09c'est vrai que je suis arrivée avec mon modèle de carousel aussi,
- 35:12parce que sinon,
- 35:13s'il avait fallu que je développe et qu'en même temps,
- 35:15je réfléchisse au design,
- 35:16ça n'aurait pas été possible.
- 35:19C'est pour ça que je me dis,
- 35:19on va déjà travailler sur le matériau qui doit sortir.
- 35:27Et à partir de là,
- 35:28je sais ce que j'ai en entrée,
- 35:29je sais ce que je veux en sortie.
- 35:31Et je fais la machine au milieu.
- 35:34Mais par contre,
- 35:35ça,
- 35:35ça va très bien justement tant que tu l'as fait pour toi.
- 35:40Mais au moment où on va basculer ça pour l'intégrer au portail...
- 35:44Ah oui,
- 35:45là,
- 35:45je sais que c'est autre chose.
- 35:46Je vais le repasser par toutes les étapes qu'on a dites,
- 35:49même si ce sera...
- 35:50Du coup,
- 35:50il y a des étapes qui vont aller très vite,
- 35:52puisque justement,
- 35:53on aura un vrai prototype déjà de base.
- 35:57et qu'il y a des choses d'architecture,
- 35:58par exemple,
- 35:58qui sont déjà faites,
- 35:59parce que le portail existe déjà.
- 36:01Il y a déjà des fonctionnalités qui sont déjà en place pour la partie gestion des droits utilisateurs et tout.
- 36:06Mais du coup,
- 36:07je vais quand même devoir passer par ces étapes pour l'intégrer à l'existant,
- 36:11pour que ce soit cohérent avec ce qu'on a en place au niveau des invités,
- 36:14au niveau de nos autres fonctionnalités et nos autres besoins.
- 36:19Mais oui,
- 36:20c'est vrai que c'est plus pertinent de pousser ce proto,
- 36:22limite de moins l'utiliser,
- 36:24un petit peu,
- 36:24sur quelques épisodes,
- 36:25lorsqu'il peut être ajusté.
- 36:27Et les étapes après iront d'autant plus vite et le développement sera d'autant plus précis et pertinent parce que j'aurais modifié des trucs en local sur ma machine,
- 36:36sur mon petit proto,
- 36:37et de me dire,
- 36:38finalement,
- 36:39ça,
- 36:39je n'en ai pas besoin.
- 36:40Là,
- 36:40le but,
- 36:41ça va être aussi de la simplifier au maximum pour garder que ce que j'utilise dans l'outil.
- 36:48Complètement.
- 36:50Et donc,
- 36:50si vous n'êtes pas dans le cadre,
- 36:52justement,
- 36:53d'une app en local à tester pour vous et à itérer,
- 36:56à garder...
- 36:57Parce que voilà,
- 36:58comme on disait,
- 36:58ton app à toi en l'état,
- 37:00elle ne serait pas basculable directement.
- 37:04Par exemple,
- 37:04pour le backend,
- 37:05il y a tout à faire,
- 37:05il y a tout à construire.
- 37:06Si on voulait y mettre des utilisateurs dessus,
- 37:09sur le front,
- 37:10du coup,
- 37:10il tourne chez toi parce qu'il est dans ton navigateur.
- 37:12Mais pareil,
- 37:12si on voulait proposer à des gens,
- 37:13il faudrait l'héberger,
- 37:14il faudrait le mettre en œuvre.
- 37:15Et là aussi,
- 37:17il peut y avoir des choses côté sécurité à mettre en place.
- 37:22Mais du coup,
- 37:23quand vous en arrivez là...
- 37:25dans le cadre de l'application un peu plus costaud orientée production pour plusieurs personnes on attaque le développement je veux bien d'ailleurs que tu nous dises toi un peu comment tu comment tu décrirais le vibe coding dans
- 37:42le sens tu vois les mécanismes quand tu vas justement coder,
- 37:46comment ça se passe comment est-ce que moi je développe
- 37:53quand je me dis,
- 37:54tiens,
- 37:54je veux me faire un petit outil.
- 37:59Je pense que je passe par toutes les phases-là,
- 38:00mais un peu en express.
- 38:02Me dire...
- 38:03Non,
- 38:04oui,
- 38:04je ne parlais pas des phases avant,
- 38:05mais vraiment là,
- 38:05quand tu es dans...
- 38:07Ça y est,
- 38:07tu ouvres...
- 38:08Dans le flot.
- 38:08Claude Cote,
- 38:09pardon.
- 38:10Tu sais ce que tu as,
- 38:11et que ce soit tes petites appels ou quoi.
- 38:13Le moment où vraiment tu vas dire à Claude,
- 38:16OK,
- 38:16voilà,
- 38:17développe-moi ça,
- 38:17c'est parti.
- 38:19Comment tu le...
- 38:20C'est plus ou moins ça.
- 38:21Oui.
- 38:24Mais tu les mets quoi dans ton prompt de départ,
- 38:26dans tes consignes de départ ?
- 38:28Comment tu les gères ?
- 38:30Alors là,
- 38:30par exemple,
- 38:32le carou,
- 38:32c'était un petit peu plus complexe parce qu'en plus,
- 38:35j'ai envoyé de Cloud Design vers Cloud Code le projet.
- 38:39Même ça,
- 38:39il avait quand même le HTML et tout,
- 38:41donc il pouvait travailler là-dessus.
- 38:45Sinon,
- 38:45plus petit projet,
- 38:47je vais rapidement décrire mon problème,
- 38:49dire j'ai ça,
- 38:51je veux ça.
- 38:52notamment là pour l'éditeur d'images j'ai mis,
- 38:55alors ça c'est l'image que j'ai en entrée,
- 38:57ça c'est celle que j'ai travaillée à la main en sortie,
- 38:59j'ai modifié ça j'aimerais bien un outil qui me permette de jouer sur ces paramètres là et tout ça,
- 39:07et fait et après quand tu fais ça,
- 39:11tu le laisses en roue libre en automatique ou tu acceptes j'accepte manuellement
- 39:18quand même.
- 39:19Les actions qu'il fait.
- 39:20Je ne suis pas passée en full auto.
- 39:24Alors,
- 39:25sachant qu'il y a deux stades de route.
- 39:26Il y a le automatique où il s'arrête pour les choix importants ou destructifs ou dangereux.
- 39:31Et il y a le full auto,
- 39:34j'ai envie de dire défaut,
- 39:35tu vois,
- 39:35parce que jamais je ne ferai un truc pareil.
- 39:38Et d'ailleurs,
- 39:40on entend de temps en temps,
- 39:41et là,
- 39:41depuis que le dernier GPT,
- 39:44le 5.6,
- 39:44s'est sorti,
- 39:45on a eu deux...
- 39:47Deux grosses histoires,
- 39:48il y en a eu plusieurs,
- 39:48mais il y en a eu deux grosses histoires justement d'IA qui font
- 39:53Nawak quand elles sont même en mode les plus intelligents et en mode complètement automatique.
- 40:00Il y en a une qui avait littéralement écrasé tout le contenu du PC d'un temps.
- 40:07Oui,
- 40:07c'est Alexis qui en a parlé dans sa dernière note vocale,
- 40:09c'est ça ?
- 40:10Oui,
- 40:11du coup,
- 40:11ils ont été un peu relayés.
- 40:12Pas que lui,
- 40:13mais oui.
- 40:13Les deux techs étaient assez...
- 40:16C'était deux pointures,
- 40:17tu vois,
- 40:17un peu.
- 40:18Mais même comme ça,
- 40:19en fait,
- 40:20ils font confiance à l'Ika,
- 40:21ils mettent en ultra et ils mettent en full automatique.
- 40:24En full automatique,
- 40:25en gros,
- 40:26il y a...
- 40:27même si c'est dangereux,
- 40:28même si c'est destructif,
- 40:29mais machin,
- 40:29c'est littéralement le mode outrepasser les permissions et s'arrêter que quand la terre brûle.
- 40:38C'est plus ou moins ce qui se passe en soi là pour l'instant,
- 40:41même sans passer en mode auto,
- 40:42mais on ne va pas revenir là-dessus.
- 40:46En tout cas,
- 40:47voilà,
- 40:49les accidents que vous entendez sur des bases de production qui ont été écrasées,
- 40:52sur des informations qui ont été perdues.
- 40:55Alors ça peut arriver même sur des modes de réglage inférieurs,
- 40:58et même en automatique pas destructif,
- 41:01des fois elle peut se rater en faisant des mauvaises manips,
- 41:03ou créer des failles de sécurité,
- 41:05ou faire des choses comme ça.
- 41:06Mais le mode à fond,
- 41:08sincèrement,
- 41:09il est complètement déconseillé,
- 41:10parce que c'est dans ces moments-là où,
- 41:12si vous n'êtes pas vigilant en permanence,
- 41:13mais normalement si vous mettez ce mode-là,
- 41:14c'est que vous n'êtes pas vigilant en permanence,
- 41:17qu'elle est en mesure de détruire des informations,
- 41:22et que si vous n'avez pas...
- 41:23mis en oeuvre ce qu'il fallait pour avoir des sauvegardes et que vous n'êtes pas en mesure techniquement de rattraper le coup,
- 41:29des fois c'est perdu,
- 41:30perdu.
- 41:33Et donc,
- 41:35entre le auto et le mode que tu as là où tu acceptes chaque action,
- 41:38il y a quand même un mode qui permet de planifier aussi.
- 41:42Oui,
- 41:42oui.
- 41:43Et sachant qu'après,
- 41:43tu n'es pas obligé de rester sur le mode planification parce qu'en fait,
- 41:45en auto,
- 41:46si tu te prépares tes propres skills de logique de développement,
- 41:50tu peux lui
- 41:51instaurer des méthodes de travail où elle va systématiquement lire,
- 41:55prendre connaissance de telle ou telle information,
- 41:58le fameux hardé dont on parle de temps en temps.
- 42:02On est pour dire très simplement,
- 42:04vous renseignez si jamais vous êtes sur du white coding,
- 42:06mais ça va être un peu le cadre global que vous allez donner à votre IA et qui va définir autant le contexte que les garde-fous,
- 42:18les limites,
- 42:18le cadre vraiment de ce
- 42:21qu'elle peut aller lire,
- 42:21comment elle doit le lire,
- 42:22et qu'est-ce qu'elle peut faire,
- 42:23et jusqu'où.
- 42:25Et donc,
- 42:26on peut mettre en place,
- 42:26même dans des modes automatiques,
- 42:28un système de routine et de méthode et de process.
- 42:30Typiquement,
- 42:30tu vois,
- 42:31je n'utilise plus le mode plan depuis le moment.
- 42:33Et parce qu'en fait,
- 42:33elle m'en fait systématiquement un dans le cadre de mon mode auto et dans le cadre de...
- 42:37J'ai un skill,
- 42:37en fait,
- 42:37pour qu'elle suive toujours un process pour chaque PR.
- 42:42Les PR,
- 42:43c'est pareil.
- 42:43Vous irez écouter l'épisode d'avant sur les pull requests.
- 42:45On explique.
- 42:47Non,
- 42:47mais après,
- 42:48moi,
- 42:48quand c'est de la...
- 42:49petite application comme ça,
- 42:50je me...
- 42:51Je veux assez vite arriver à quelque chose que je peux...
- 42:53Un proto dans lequel je peux un peu bouger.
- 42:57Et presque après,
- 42:58là,
- 42:58je vais itérer par rapport à ça.
- 43:00Donc là,
- 43:00je pense qu'on est plus dans du vrai vibe coding.
- 43:04De se dire,
- 43:04bon,
- 43:04bah,
- 43:04j'ai un truc visuel.
- 43:05Je dis,
- 43:06ah bah non,
- 43:06ça,
- 43:06je l'imaginais pas comme ça.
- 43:07Ou alors ça,
- 43:08ça m'embête quand j'essaye d'utiliser et d'itérer comme ça,
- 43:12quand c'est vraiment du petit projet et que...
- 43:15Ouais,
- 43:16juste voir si c'est...
- 43:18faisable et que ça vaut le coup d'aller plus loin,
- 43:23de prendre plus de temps.
- 43:25Sinon,
- 43:26pour des plus grosses...
- 43:28Enfin,
- 43:29j'ai aussi une autre idée d'application et là,
- 43:31j'en suis plus à définir les specs et tout ça,
- 43:33mais là,
- 43:33j'utilise vraiment des skills que j'ai...
- 43:37On en a déjà parlé.
- 43:37Enfin,
- 43:38voilà,
- 43:39que j'ai pas encore éprouvés et qui bougeront au fur et à mesure de comment je vais développer.
- 43:48Mais là,
- 43:48pour l'instant,
- 43:49je me concentre plus sur le design maquettage.
- 43:52Donc,
- 43:53partie code,
- 43:54c'est plus j'ai ça en entrée,
- 43:56je veux ça en sortie.
- 43:57C'est un peu quoi le meilleur moyen et le plus efficace pour convertir ce que j'ai en entrée pour avoir ce résultat-là en sortie.
- 44:04Ok.
- 44:06Oui,
- 44:07parce que tu crées ton homme vraiment au fil de l'eau.
- 44:10Et du coup,
- 44:12pour faire un peu le parallèle avec justement le cheminement qu'on a fait vraiment pour la partie portail et le fait d'avoir...
- 44:16séparer tous les documents.
- 44:19Ça fait que quand on arrive au dev,
- 44:20on a une logique qui est différente.
- 44:22À travers justement le PRAD et tout,
- 44:24en fait,
- 44:25on avait déjà identifié des lots.
- 44:28Donc à chaque lot correspondait un ensemble de fonctionnalités qui correspondaient à un certain nombre de choses qu'on devait pouvoir faire dans l'application.
- 44:35Par exemple,
- 44:35il y avait un lot qui était sur l'authentification,
- 44:37donc le fait de pouvoir se connecter,
- 44:39modifier son mot de passe,
- 44:40de déconnecter,
- 44:41de recevoir des mails en cas de pépin,
- 44:43tout ça.
- 44:43Il y avait un lot qui allait être le fait de pouvoir...
- 44:46créer un épisode et de le gérer donc avec différentes étapes avec le fait de pouvoir mettre une trame etc il y avait un autre lot qui allait être sur le fait d'ajouter des ressources enfin bon il va y avoir plein de lots comme ça qu'on va
- 45:01qu'on va découper.
- 45:03Et ce qui fait,
- 45:03quand on arrive au moment de développement,
- 45:06on va dire,
- 45:07enfin,
- 45:08il y a un truc avant l'histoire du lot,
- 45:10ça va être de mettre en place l'architecture technique réellement.
- 45:16Donc au début,
- 45:17on va initialiser le cœur de l'infrastructure,
- 45:22on va dire ça comme ça,
- 45:24et on va commencer déjà par dire bon,
- 45:25ok,
- 45:26là,
- 45:27j'ai mon dossier de travail,
- 45:28mon repo,
- 45:29dedans,
- 45:29j'ai déjà mis ça et ça,
- 45:30maintenant...
- 45:31tu vas m'installer tous les langages qu'on a dit,
- 45:34toutes les bibliothèques dont on a besoin,
- 45:37tu vas organiser les dossiers,
- 45:38les documentations,
- 45:40répartir vraiment,
- 45:41créer tout le squelette organisationnel de notre code et de nos documents.
- 45:48On commence par faire ça,
- 45:50on valide,
- 45:51et après justement on attaque le développement des lots.
- 45:53Et après,
- 45:54dans le développement de chaque lot,
- 45:56on va aller,
- 45:58ça il y a plein de techniques qui vont varier.
- 46:02entre ceux qui vont aller découper à chaque user story pour en faire une pull request,
- 46:08donc vraiment un truc versionné,
- 46:11cadré,
- 46:11etc.
- 46:12qui va être défini.
- 46:14Il y en a qui vont faire plusieurs choses comme ça en une seule session.
- 46:18Il y en a qui vont prendre un gros modèle et faire bosser les petits modèles.
- 46:21Il y en a qui vont bosser qu'avec les gros modèles.
- 46:24Enfin bon,
- 46:25plein de choses,
- 46:25et c'est pas l'objet là de...
- 46:28Encore une fois...
- 46:29plein de sujets,
- 46:29et notamment aller voir du côté du table d'Alexico Valenco,
- 46:32il y a plein de ressources là-dessus.
- 46:34Mais ce qu'il faut garder en tête,
- 46:36c'est que la logique qu'a décrit Lulu,
- 46:38vous allez la voir de manière plus structurée quand on a déjà tout le cadre,
- 46:42mais ça va être de dire au début,
- 46:44en fait,
- 46:44ok,
- 46:45on va attaquer le développement du premier lot,
- 46:47tu t'appuies sur tous les documents qu'on a déjà à disposition,
- 46:51et à partir de là,
- 46:52il va faire un plan d'implémentation et au moment où il va faire le plan,
- 46:55il va aussi identifier tous les points qui ne sont pas clairs et sur lesquels il faut trancher.
- 46:59De là,
- 47:00on va répondre aux questions,
- 47:01on va dire voilà,
- 47:01je veux ci,
- 47:02ça,
- 47:02ça,
- 47:02comme ça.
- 47:03Et quand on ne sait pas,
- 47:04on lui demande de clarifier les différents points.
- 47:07Et après,
- 47:08il va dérouler son plan d'implémentation.
- 47:11Et c'est là qu'il est très important de garder ça à l'œil.
- 47:15Parce qu'en fait,
- 47:15juste l'essayer à tourner et partir faire autre chose,
- 47:18ou en lancer plein en même temps et la laisser se débrouiller,
- 47:21c'est le meilleur moyen de se retrouver avec des gros pépins,
- 47:24des petits ou des gros pépins.
- 47:25Parce qu'en fait,
- 47:26Lya,
- 47:26elle va essayer d'atteindre son objectif et de suivre son plan d'implémentation jusqu'au bout.
- 47:30Et quand il y a un truc qui ne se passe pas bien,
- 47:31elle va improviser.
- 47:33Mais si vous ne lisez pas ce qu'elle fait,
- 47:36vous ne verrez pas les moments où elle a improvisé et qu'elle a pris des décisions que vous ne vouliez pas,
- 47:41ou qu'elle a eu la flemme d'aller au bout de certaines choses,
- 47:44et voilà,
- 47:45qu'elle va acter littéralement,
- 47:47elle va prendre des décisions pour vous et se dire
- 47:48« Non, mais en fait,
- 47:49j'ai jugé ça superflu. »
- 47:50« Non,
- 47:51ça,
- 47:51ce n'était pas vous. »
- 47:52« Non,
- 47:52ça,
- 47:52en termes de sécurité,
- 47:53on verra plus tard. »
- 47:54Et vous aurez systématiquement des choses comme ça,
- 47:56et même en suivant,
- 47:57et où il faut la reprendre.
- 47:58Et
- 48:00Claude, pourquoi tu n'as pas voulu finir la fonctionnalité ?
- 48:03Et ça,
- 48:03pourquoi tu as eu la flemme de mettre la sécurité ?
- 48:06Et ça,
- 48:07pourquoi tu l'as fait de telle manière ?
- 48:08Et ça,
- 48:08pourquoi ces trois points,
- 48:09tu ne les as pas traités alors qu'ils étaient dans le plan et que ça s'est bien passé,
- 48:12donc tu aurais dû aller au bout du truc.
- 48:14Et voilà,
- 48:16en fait,
- 48:16vous allez avoir plein de cas comme ça.
- 48:18Et ça,
- 48:19c'est inhérent à la technologie.
- 48:20Ça,
- 48:21on peut renvoyer à l'épisode où...
- 48:23décrit vraiment le fonctionnement des
- 48:26LLM, des grands modèles de langage.
- 48:30Vu que c'est génératif,
- 48:32on peut mettre autant de garde-fous qu'on veut,
- 48:38il y a toujours un risque.
- 48:39Ce n'est pas déterministe.
- 48:42On renvoie à l'épisode qui explique tout ça et de comprendre comment la techno marche,
- 48:47ça montre qu'on ne peut pas juste faire confiance à 100%
- 48:51des choix qui vont être faits.
- 48:53Et il y a plein de choses qui vont passer à la trappe.
- 48:55Et encore une fois,
- 48:55on va rajouter des fonctionnalités,
- 48:57on va continuer le développement.
- 48:58Puis,
- 48:58il y a un moment,
- 48:58ça ne marchera pas.
- 49:00Ou mal.
- 49:00Ou alors,
- 49:01il y aura des fuites de données.
- 49:02Et ça vient d'où ?
- 49:05D'où le fait que,
- 49:07bon voilà,
- 49:07dans votre déroulé,
- 49:08dans les plans à chaque fois qu'il faut,
- 49:09il y a ça.
- 49:10Et moi,
- 49:10ce que je vous recommande très,
- 49:11très,
- 49:12très,
- 49:12très,
- 49:12très,
- 49:13très,
- 49:13très,
- 49:13très,
- 49:13très vivant,
- 49:14dès le début,
- 49:15même sur des petits projets,
- 49:17c'est de mettre des tests là-dedans.
- 49:19Et les tests...
- 49:21On a détaillé dans l'épisode précédent un peu les différents types de tests que vous pouvez avoir.
- 49:26Mais là,
- 49:26pour les résumer rapidement,
- 49:27on va voir les tests unitaires.
- 49:29On va vraiment tester chaque pièce,
- 49:31chaque bout de code,
- 49:33une fois qu'il est fait et qu'il doit accomplir tel résultat de transformer A vers B.
- 49:38On met un petit bout de code qui va vérifier que,
- 49:41oui,
- 49:41quand on fait ça,
- 49:41ça transforme bien A vers B.
- 49:43Et on va voir des tests de sécurité.
- 49:46Par exemple,
- 49:46si vous utilisez du Super Bay,
- 49:48c'est des tests sur la planète
- 49:49dits de RLS,
- 49:50qui vont être là pour s'assurer que les règles de sécurité sont bien appliquées et qu'un invité ne peut pas avoir les mêmes droits qu'un administrateur.
- 50:01qu'une personne ne peut pas voir le contenu ou le profil d'une autre personne,
- 50:06qu'elle ne peut pas aller modifier le mail de quelqu'un d'autre,
- 50:11ce genre de choses qui est hyper important,
- 50:14parce qu'en fait c'est de là que peuvent naître des gros pépins de sécurité,
- 50:19de failles de sécurité,
- 50:21de perte de données,
- 50:22de vol de données,
- 50:23de choses qui vous mettent bien dans le côté.
- 50:25Vous allez voir les tests dits end-to-end,
- 50:28de bout en bout,
- 50:29donc là c'est vraiment les tests...
- 50:31d'interface en fait,
- 50:34où il y a des outils qui sont là pour reproduire un comportement d'utilisateur humain en train d'aller cliquer,
- 50:39de faire des actions,
- 50:40et de voir si ça fait le résultat prévu ou pas.
- 50:45Tu utilises quoi d'ailleurs comme outil qui est assez connu ?
- 50:50Playright,
- 50:51je ne crois jamais le dire correctement,
- 50:53mais voilà,
- 50:55un outil qui marche très bien.
- 50:57Oui.
- 50:57Enfin,
- 50:59alors...
- 51:00Si vous développez avec,
- 51:02je vous recommande très très vivement,
- 51:03je ne sais plus si c'est un skill officiel ou pas,
- 51:05je ne crois pas,
- 51:06mais mon cloud galérait beaucoup à rédiger les tests de justement end-to-end.
- 51:13Et en fait,
- 51:15j'avais plus de bugs sur la rédaction des tests que de bugs de logiciels.
- 51:20Mais vraiment,
- 51:20beaucoup plus.
- 51:21Parce qu'après,
- 51:22c'est un peu sensible en fait,
- 51:23la partie interface,
- 51:24forcément.
- 51:25Déjà en temps normal,
- 51:26même des équipes QA,
- 51:27ce n'est pas forcément la tâche la plus évidente d'aller coder ces parties-là.
- 51:30Mais du coup,
- 51:31pour l'IA,
- 51:32ça est encore moins clair,
- 51:35on va dire.
- 51:36Et en plus,
- 51:37en fonction des bouts d'interface et des choses qui sont cachées derrière,
- 51:40du coup,
- 51:40il y a des bonnes pratiques,
- 51:42il y a des techniques,
- 51:42il y a des choses à avoir en tête.
- 51:46Et notamment le fait que,
- 51:47par exemple,
- 51:48quand il va cliquer sur un bouton,
- 51:50en fait,
- 51:50ça va déclencher une action.
- 51:52Et s'il programme le deuxième clic trop tôt,
- 51:55du coup,
- 51:56ça crée un bug dans le scénario,
- 51:57parce qu'en fait,
- 51:57juste l'action n'a pas eu le temps de se dérouler en entier.
- 52:00par exemple cliquer sur un menu déroulant et que la partie suivante du test soit de cliquer dans le deuxième objet du menu déroulant,
- 52:10en fait,
- 52:11s'il n'a pas eu le temps de s'ouvrir,
- 52:12du coup,
- 52:13parce qu'il y a une animation,
- 52:13par exemple,
- 52:14comme ça,
- 52:15du coup,
- 52:15ça crée un bug.
- 52:16En fait,
- 52:16c'est juste un bug de test.
- 52:18Le comportement côté code,
- 52:19il va bien.
- 52:22Et donc ça,
- 52:23si vous utilisez du playwright,
- 52:25il y a des skills très bien.
- 52:29Il faudrait que je regarde,
- 52:29ça fait un moment que je l'ai mis.
- 52:31Je sais que moi,
- 52:31le fait d'utiliser un skid justement qui était renommé côté communauté,
- 52:37je ne sais plus s'il était officiel ou pas,
- 52:39m'a radicalement changé la rédaction des tests.
- 52:42C'est intéressant ça.
- 52:43Je ne suis pas encore allée jusqu'à ce stade de développement vu qu'apparemment,
- 52:50il y a déjà cet autre côté maquette et prototypage.
- 52:53Mais je pense qu'on pourra mettre ça dans la description parce que ça peut intéresser.
- 52:59les personnes qui nous écoutent.
- 53:00Oui,
- 53:01et d'ailleurs,
- 53:01de la même manière,
- 53:02si vous utilisez des outils,
- 53:03enfin de plus en plus aujourd'hui,
- 53:05les outils officiels,
- 53:05par exemple,
- 53:06Supabase vous propose des skills officiels qui permettent du coup à l'IA d'aller,
- 53:11en gros,
- 53:11de savoir déjà un peu,
- 53:14d'aller consulter la documentation au bon endroit,
- 53:16de savoir un petit peu ce qu'elle peut faire ou pas dans l'application,
- 53:18d'avoir des logiques sur les trucs qu'elle peut interagir,
- 53:21il y a des bonnes pratiques.
- 53:22Enfin,
- 53:22voilà,
- 53:23c'est vraiment un atout.
- 53:25Sur les outils que vous utilisez pour développer,
- 53:28ou les outils que vous utilisez tous les jours,
- 53:30on va avoir des skills officiels et hyper pertinents.
- 53:35Et voilà,
- 53:36juste pour terminer sur cette partie-là des tests,
- 53:38mais du coup,
- 53:39un des garde-fous possibles pour vous assurer que l'IA ne fait pas n'importe quoi,
- 53:43c'est de mettre en place tous ces tests-là à chaque développement de fonctionnalité.
- 53:48Et parce que du coup,
- 53:48après avoir codé,
- 53:49elle va mettre ces tests-là et elle va les vérifier.
- 53:52Et c'est là où elle se rend compte quand il y a des...
- 53:54bug soit du scénario de test,
- 53:55mais aussi quand il y a des bugs tout court.
- 53:56Parce qu'en fait,
- 53:56si un test ne marche pas,
- 53:57il faut bien voir pourquoi il ne marche pas.
- 53:59Et ça permet de déceler des choses que vous auriez pu déceler vous en testant à la main et en cassant le truc,
- 54:06mais du coup qu'il aurait fallu remonter à l'IA.
- 54:08Alors que si vous le faites en automatique sur le moment,
- 54:11en tout cas,
- 54:11je ne pense pas parce qu'il y a des tests automatiques que vous n'allez avoir aucun bug et tout va bien se passer.
- 54:16Mais en tout cas,
- 54:16ça en couvre déjà une immense quantité.
- 54:18Et pour vous donner juste une échelle du nombre de tests qu'on a aujourd'hui,
- 54:24Je vous donnais les chiffres sur la version 1 du portail et ensuite sur la version 2.
- 54:30Pas aujourd'hui,
- 54:30parce que là,
- 54:31on arrive sur la fin de cet épisode et on vous racontera la suite la semaine prochaine.
- 54:38Pour la
- 54:39V1, c'était à mi-juin.
- 54:40Ça devait faire un mois qu'on avait l'application en prod,
- 54:47un truc comme ça.
- 54:48À peu près,
- 54:48oui.
- 54:48Je crois que je l'ai sortie en mi-mai.
- 54:52Moi,
- 54:52je pensais mimer qu'elle était en ligne complètement.
- 54:55Oui,
- 54:55mais moi,
- 54:55je continuais de bosser sur une version de test.
- 55:01Tu ne m'avais pas filé la bonne URL.
- 55:04Non,
- 55:04tu étais sur la bonne version,
- 55:05tu n'étais juste pas sur le bon...
- 55:09Oui,
- 55:10tu avais presque tout de bon,
- 55:11en fait,
- 55:11globalement.
- 55:12C'est juste que l'URL que tu avais ne passait pas par les bons droits à certains endroits.
- 55:17Mais tu avais déjà la version...
- 55:19Oui,
- 55:20Mais il y a des trucs que je ne pouvais pas faire.
- 55:22Oui,
- 55:23mais effectivement,
- 55:24il y avait des trucs de sécurité que je n'avais pas mis sur notre environnement.
- 55:28Parce qu'en gros,
- 55:29on avait...
- 55:32C'était une version de prod,
- 55:32mais temporaire,
- 55:33qui n'était pas branchée sur notre domaine,
- 55:35qui n'était pas avec la bonne URL,
- 55:36etc.,
- 55:36mais qui nous permettait de voir l'évolution au début.
- 55:39Vu qu'il n'y avait que nous deux,
- 55:40je pouvais avoir une version de prod qui était disponible pour Lulu.
- 55:45Moi,
- 55:45j'avais de toute façon des versions avant.
- 55:50C'est juste un mot sur les environnements de preview.
- 55:52On a parlé encore une fois la semaine dernière des environnements de test.
- 55:55Allez écouter l'épisode,
- 55:55on raconte tout ça.
- 55:57Mais du coup,
- 55:57dans mon cas,
- 55:58ce que je fais,
- 55:58c'est que j'ai un environnement...
- 56:01de preview,
- 56:02parce que Supabase permet d'avoir ce qu'on appelle des branches.
- 56:05Donc en gros,
- 56:05quand je code,
- 56:07au moment où le code est prêt,
- 56:10il va,
- 56:10ce qu'on appelle provisionner une branche,
- 56:12donc en gros il va créer un environnement provisoire et de test avec le moteur de Supabase,
- 56:20sur lequel on va pouvoir tester ce qui vient d'être fait,
- 56:23et c'est un environnement qui est comme celui de production.
- 56:27L'intérêt justement d'avoir cet environnement de preview,
- 56:29c'est qu'il est en ligne,
- 56:30il est avec les mêmes paramétrages et tout.
- 56:32Il n'y a pas les données à proprement parler,
- 56:36mais toutes les règles,
- 56:37toute la configuration,
- 56:37tout ça de notre production,
- 56:39c'est répliqué.
- 56:40Et sauf que ça dure le temps que la branche est active,
- 56:42donc on va faire le développement,
- 56:44on va faire tous les tests,
- 56:45et une fois que notre fameuse pull request à notre PR est terminée,
- 56:49tout ça,
- 56:49ça se ferme,
- 56:49la branche est supprimée,
- 56:50et basta,
- 56:51on n'en a plus besoin.
- 56:51Mais au moins,
- 56:52tous les tests,
- 56:52tout ce qu'on a fait pour casser et pour vérifier l'interface et tout.
- 56:56C'est fait sur un environnement comme ça,
- 56:57dit de preview.
- 56:59Donc qui correspond à un environnement de pré-production,
- 57:03en quelque sorte.
- 57:05Et pourquoi je disais tout ça ?
- 57:07Je ne sais plus.
- 57:09Parce que je devais être sur une version comme ça ?
- 57:13Ouais,
- 57:13non,
- 57:13c'est qu'en fait,
- 57:14moi j'avais ces environnements de preview pour faire mon paramétrage,
- 57:16mais du coup je t'envoyais en production,
- 57:18vu qu'il n'y avait que nous deux.
- 57:19Oui,
- 57:19puis tu voulais montrer.
- 57:20Enfin,
- 57:20moi,
- 57:21je voulais voir aussi ce que ça donnait.
- 57:23Petit à petit,
- 57:24même quand ce n'était pas forcément tout terminé.
- 57:26Essayons de te connecter.
- 57:28Ça marche.
- 57:30Ah non,
- 57:30ça n'avait pas marché parce qu'il y avait des astérisques dedans et tu m'avais envoyé le mot de passe par Discord et ça l'avait mis en italique.
- 57:38Ça ne marchait pas et on ne comprenait pas.
- 57:39Enfin voilà,
- 57:40des fois,
- 57:40c'est des trucs vraiment bêtes.
- 57:42Oui,
- 57:43parce que pareil,
- 57:43je t'avais filé de...
- 57:46C'était quoi ?
- 57:46Oui,
- 57:46parce que tu avais déjà ton mot de passe qui ne marchait pas.
- 57:49Et je te l'avais donné par
- 57:52Proton, parce que Proton a un truc de gestionnaire de mots de passe qui permet de partager ses mots de passe.
- 57:58Je l'avais filé à Lulu,
- 57:59et même comme ça,
- 58:00ça ne marchait pas.
- 58:01Je me suis dit,
- 58:01mais ce n'est pas normal.
- 58:02Et c'est parce qu'en fait,
- 58:03quand tu avais fait ta copie déjà,
- 58:04il y avait eu un pareil,
- 58:05ton Mac,
- 58:06je ne sais plus ce qu'il avait fait.
- 58:07Tu t'es fait manger une...
- 58:07Non,
- 58:08c'est Discord.
- 58:08C'est
- 58:09Discord, en fait,
- 58:10qui...
- 58:10Oui,
- 58:10mais Discord,
- 58:10c'était...
- 58:11après parce que je ne t'avais pas d'abord filé par Proton ou j'ai fait l'inverse.
- 58:14Non,
- 58:14tu as fait l'inverse,
- 58:15tu me l'avais envoyé comme ça sur
- 58:16Discord. Oui,
- 58:17c'était le tout premier.
- 58:18Je t'avais dit tiens,
- 58:19tu te prends et tu te modifies.
- 58:20Et comment je pouvais me connecter avec ?
- 58:22Parce que justement,
- 58:22je l'avais vérifié.
- 58:23Je me disais mais ça marche chez moi,
- 58:24ça ne marche pas chez elle.
- 58:26Bon,
- 58:26j'ai accusé Mac comme toujours parce que de toute façon,
- 58:27je déteste les produits d'Apple.
- 58:30Mais non,
- 58:30c'était la faute à Discord qui t'avait mangé les astérisques.
- 58:32Et c'est vrai que là,
- 58:34du coup,
- 58:34j'avais utilisé le gestionnaire de mot de passe pour te filer proprement,
- 58:38même s'il n'allait servir qu'une seule fois.
- 58:40Et tu t'étais rendu compte de ça.
- 58:42Oui,
- 58:43mais après,
- 58:43quand j'étais sur la mauvaise...
- 58:45Enfin,
- 58:47mauvais environnement,
- 58:48c'est ça.
- 58:49Là,
- 58:49tu m'as accusé aussi.
- 58:50Le problème,
- 58:51il est entre le PC et la chaise.
- 58:52Non,
- 58:53j'ai jamais eu la bonne URL.
- 58:56Oui,
- 58:57mais tu aurais pu l'inventer.
- 59:00Pour la déduire.
- 59:02Alors,
- 59:02du coup,
- 59:02tu n'étais pas sur l'environnement prévu.
- 59:04Tu étais vraiment sur la production,
- 59:05mais avec notre ancienne adresse,
- 59:08en gros.
- 59:08Et quand j'ai fait la bascule vers nous,
- 59:11vers ledernierclic.fr,
- 59:14j'ai fait un changement là-dessus.
- 59:16Mais il y avait côté sécurité des choses que je n'allais pas basculer parce que l'ancienne URL était amenée à disparaître au bout de quelques jours.
- 59:24Et j'avais prévu de te donner la bonne adresse.
- 59:26Je ne sais pas pourquoi je ne te l'ai jamais donnée.
- 59:29Jusqu'au moment où tu me disais « mais pourquoi il y a des trucs qui ne marchent pas pour moi ? »
- 59:31Pourquoi la trame ne se sauvegarde pas chez moi ?
- 59:36Et c'est là que tu m'avais filé,
- 59:37parce que c'est là que j'ai appris à faire des tickets à peu près potables pour que tu puisses comprendre au-delà de « ça ne marche pas » .
- 59:45C'était quoi que tu m'avais donné comme outil ?
- 59:49La petite fraise,
- 59:50mais je ne me rappelle jamais du nom.
- 59:52J'ai dû me le marquer en favori,
- 59:55je crois.
- 59:56Alors,
- 59:56attends,
- 59:56c'est...
- 59:56En fait,
- 59:57vous avez un petit outil pour faire des petites vidéos.
- 59:59Jam,
- 1:00:01qui est un logo,
- 1:00:02un icône de petites fraises,
- 1:00:04qui est très chouette pour les développeurs,
- 1:00:06parce qu'en fait,
- 1:00:07il vous fait une vidéo de capture d'écran,
- 1:00:09mais il enregistre aussi ce qui se passe dans le navigateur.
- 1:00:12Donc,
- 1:00:12en gros,
- 1:00:12la partie console où il y a des logs et des trucs écrits comme ça pour les gens qui se cassent la tête sur du dev.
- 1:00:19Et c'est hyper pratique.
- 1:00:21parce que ça permet,
- 1:00:22nous,
- 1:00:22derrière,
- 1:00:22de voir la vidéo et d'avoir toutes les infos du navigateur en temps réel et de voir pendant la vidéo,
- 1:00:28si ça casse à 3 minutes,
- 1:00:29de voir l'erreur qu'il y a à ce moment-là,
- 1:00:31même si la personne ne l'avait pas mis à l'écran.
- 1:00:33Et même pour l'IA,
- 1:00:34c'est pertinent aussi parce que ça lui donne tout de suite plus de...
- 1:00:38ça permet de tout de suite cibler aussi le problème.
- 1:00:41Alors,
- 1:00:41oui,
- 1:00:42l'IA ne va pas lire la vidéo,
- 1:00:43mais par contre...
- 1:00:44C'est tout dans une seule vidéo ?
- 1:00:45Je ne l'ai pas encore essayé.
- 1:00:47En mauvais élève.
- 1:00:48C'est tout dans une seule vidéo,
- 1:00:49mais par contre...
- 1:00:50comme il y a la console,
- 1:00:51ça permet de récupérer les vrais messages d'erreur dans la console et de les donner à lire.
- 1:00:56Oui,
- 1:00:56c'était plus ça en termes de contexte où c'est tout de suite plus pertinent que...
- 1:01:00Enfin,
- 1:01:01c'est toujours pertinent de décrire le problème avec le comportement normalement qui est attendu.
- 1:01:06Mais en plus d'avoir les messages d'erreur,
- 1:01:07ça permet de faire des correctifs plus chirurgicaux.
- 1:01:11Oui,
- 1:01:12ça permet surtout de beaucoup aider à identifier de liens de problème.
- 1:01:16Et économiser des tokens.
- 1:01:19Oui,
- 1:01:19aussi.
- 1:01:21Mais bon,
- 1:01:23voilà pour la digression.
- 1:01:24Et juste pour terminer sur ces histoires de tests,
- 1:01:30du coup,
- 1:01:31à mi-juin,
- 1:01:32on avait déjà une V1 qui avait été relativement,
- 1:01:35qui avait été bien stabilisée,
- 1:01:36enfin,
- 1:01:37stabilisée.
- 1:01:38C'était stable dès le départ,
- 1:01:38mais on avait plein de petits couacs qui n'avaient pas été corrigés.
- 1:01:41Et voilà,
- 1:01:42corrigés un peu au fil du temps.
- 1:01:44Et donc,
- 1:01:44on avait 470 tests unitaires,
- 1:01:47205 tests de sécurité.
- 1:01:50230 tests d'interface d'embout.
- 1:01:53Il y avait aussi...
- 1:01:54Je ne les compte pas parce que ces tests côté infra,
- 1:01:56ils ne sont pas dans les tests automatisés.
- 1:01:59Mais en gros,
- 1:01:59il y avait à peu près 905 tests automatisés.
- 1:02:02Et aujourd'hui,
- 1:02:02sur la V2,
- 1:02:03on est à 1410 tests automatisés.
- 1:02:07Vous vous doutez bien qu'en temps normal,
- 1:02:09chaque fois que je fais une fonctionnalité ou un correctif,
- 1:02:12je ne vais pas me cogner 1410 tests à la mano.
- 1:02:18Donc,
- 1:02:18c'est hyper important et hyper...
- 1:02:20utile de mettre en place ce type de système.
- 1:02:22Encore une fois,
- 1:02:22ça ne protège pas tout,
- 1:02:24ça ne couvre pas tout.
- 1:02:25Mais ça vous fait...
- 1:02:28En termes d'ordre de grandeur,
- 1:02:30c'est surtout les tests de sécurité,
- 1:02:33le bout en bout,
- 1:02:33qui ont doublé.
- 1:02:34Les tests unitaires,
- 1:02:35oui,
- 1:02:35ça a un petit peu augmenté aussi,
- 1:02:37mais c'est surtout ceux-là.
- 1:02:38Oui,
- 1:02:39mais ça,
- 1:02:39c'est très spécifique à notre contexte parce qu'on l'expliquera dans le prochain épisode.
- 1:02:45Aujourd'hui,
- 1:02:45entre les deux écarts,
- 1:02:47c'est entre la version 1 et la version 2.
- 1:02:49Et dans la version 2,
- 1:02:49on a rajouté un certain nombre de fonctionnalités qui sont très orientées utilisateurs et qui ont rajouté du coup des tests qui sont liés à ça.
- 1:02:57En fonction de ce que vous allez faire,
- 1:02:58vous aurez plus ou moins de tests.
- 1:02:59Mais c'est plus pour vous donner l'ampleur que sur un portail collaboratif qui n'est pas utilisé par des milliers d'utilisateurs,
- 1:03:08mais juste à nous deux chaque semaine et après à des invités petit à petit,
- 1:03:15ça représente déjà tout ça d'avoir un...
- 1:03:17une configuration de test typée production.
- 1:03:22Et voilà.
- 1:03:22Sachant qu'après,
- 1:03:23j'ai un petit travers aussi.
- 1:03:24Enfin,
- 1:03:24travers,
- 1:03:25je ne sais pas si c'est un travers,
- 1:03:25mais j'ai un parti pris en tout cas sur tout ce que je développe.
- 1:03:28Je pars toujours du principe que je le fais...
- 1:03:31Enfin,
- 1:03:31je bosse comme si je bossais en équipe et comme si je bossais dans un contexte de boîte.
- 1:03:37Donc ça,
- 1:03:38c'est un peu le vestige aussi d'avoir été product owner,
- 1:03:41responsable produit justement quand j'étais chez Cobble avec des collègues devs.
- 1:03:47Et que du coup,
- 1:03:48c'est important d'avoir,
- 1:03:50enfin mes yeux,
- 1:03:51de se dire,
- 1:03:52ben voilà,
- 1:03:52on va travailler sur tel sujet,
- 1:03:53on va créer une PR pour ce sujet-là,
- 1:03:56on va le documenter,
- 1:03:58on va justement s'assurer qu'il y a un suivi,
- 1:04:01on va mettre en place des tests,
- 1:04:02etc.
- 1:04:02pour que n'importe qui,
- 1:04:03en fait,
- 1:04:05puisse venir relire le code,
- 1:04:06relire les documentations,
- 1:04:08comprendre ce qui se passe,
- 1:04:09comprendre ce qui est fait,
- 1:04:10puisse prendre le relais,
- 1:04:11et aussi,
- 1:04:12ben voilà,
- 1:04:12si dans six mois,
- 1:04:13en fait,
- 1:04:14quelqu'un doit reprendre...
- 1:04:15Le travail va maintenant sur mon application.
- 1:04:18Je m'occupe juste de le faire,
- 1:04:19tout simplement.
- 1:04:21Et du coup,
- 1:04:22il y a des moments où j'en fais probablement trop.
- 1:04:27Potentiellement trop,
- 1:04:28parce que je mets en place un cadre vraiment type entreprise et taf en équipe,
- 1:04:32alors que le portail,
- 1:04:35je l'ai développé tout seul,
- 1:04:36donc il n'y avait pas forcément besoin de mettre autant de choses.
- 1:04:39Mais à mon sens,
- 1:04:40ça fait partie des enjeux quand on veut faire des applications de production.
- 1:04:45qui sont là pour durer,
- 1:04:46qui sont là pour être repris,
- 1:04:47qui sont là pour être maintenus,
- 1:04:48qui sont là pour être évolués.
- 1:04:50et qui implique des gens.
- 1:04:52Puisque là,
- 1:04:53ce n'est pas juste moi tout seul,
- 1:04:54ce n'est pas juste Lulu et moi,
- 1:04:57même si aujourd'hui,
- 1:04:58on n'a pas eu encore d'invités,
- 1:04:59enfin,
- 1:05:00si on a eu des invités,
- 1:05:01mais qui ne sont pas encore allés sur le portail,
- 1:05:03et ça va arriver là,
- 1:05:05ça m'en choupe peu.
- 1:05:06Mais derrière,
- 1:05:07chaque fois que vous avez des gens qui vont utiliser votre application,
- 1:05:09il y a des données à eux qui circulent.
- 1:05:11Il y a au moins leur mail,
- 1:05:12il y a au moins leur...
- 1:05:13Un mot de passe qu'ils vont peut-être utiliser ailleurs,
- 1:05:15il peut y avoir justement,
- 1:05:17en empruntant,
- 1:05:18il peut y avoir des données personnelles selon les cas,
- 1:05:20selon ce que vous avez dans les infos de profil et ce genre de choses.
- 1:05:22Il peut y avoir des fichiers qu'ils vont déposer qui sont plus ou moins confidentiels ou plus ou moins à eux,
- 1:05:28qui ne doivent pas fuiter,
- 1:05:31même si ce n'est pas des données sensibles,
- 1:05:32ce genre de choses.
- 1:05:34Et voilà,
- 1:05:36on peut,
- 1:05:37entendu de nombreuses fois,
- 1:05:39le raisonnement de se dire de toute façon,
- 1:05:41notamment vis-à-vis par exemple des...
- 1:05:43innombrables fuites de données qu'il y a sur les outils de l'État.
- 1:05:47De toute façon,
- 1:05:49mes données,
- 1:05:50elles ont déjà fuité par le permis.
- 1:05:52C'est l'ANTS ?
- 1:05:54L'ANTS.
- 1:05:57Du coup,
- 1:05:58de toute façon,
- 1:06:00tous les deux moyens.
- 1:06:02Et de se dire,
- 1:06:03de toute façon,
- 1:06:03c'est peine perdue,
- 1:06:04ce n'est pas la peine de s'y mettre.
- 1:06:05Mais je suis pas d'accord avec ça.
- 1:06:08En fait,
- 1:06:08ce n'est pas parce qu'il y a des ratés dans les boîtes et parce qu'il y a...
- 1:06:12plein d'endroits où ils ne mettent pas les moyens qu'il faudrait.
- 1:06:15Et quand bien même,
- 1:06:16des fois,
- 1:06:16il y a les moyens qui sont mis en œuvre,
- 1:06:17mais ça n'empêche pas qu'il puisse y avoir des volets à donner.
- 1:06:21Sur pas mal de gros outils,
- 1:06:22quand même,
- 1:06:23on va se dire qu'ils ne font pas d'efforts.
- 1:06:25Parce que,
- 1:06:26par exemple,
- 1:06:26la NTS,
- 1:06:26c'était vraiment,
- 1:06:27vraiment,
- 1:06:28vraiment,
- 1:06:28vraiment une faille à la con.
- 1:06:29On était sur des trucs rudimentaires de cybersécurité qui n'ont pas été mis en place.
- 1:06:36Après,
- 1:06:36c'est d'autant plus important que maintenant,
- 1:06:39il y a aussi l'IA pour attaquer.
- 1:06:42Là,
- 1:06:42voilà,
- 1:06:43en termes de défense,
- 1:06:44alors oui,
- 1:06:46on peut se dire que t'en fais trop,
- 1:06:48machin,
- 1:06:49mais je pense qu'il n'y a jamais trop de ce côté-là parce qu'il y a les mêmes outils en face.
- 1:06:53Et il faudrait d'autant plus rajouter de la sécurité,
- 1:06:56au moins jusqu'à tout ce qu'on peut.
- 1:07:00C'est comme se dire,
- 1:07:01bah oui,
- 1:07:01mais de toute façon,
- 1:07:03on a déjà toutes mes données,
- 1:07:05donc je peux les donner à toutes les boîtes.
- 1:07:08toutes les données de mon entreprise à l'IA et tout ça,
- 1:07:11parce que de toute façon,
- 1:07:13ils ont déjà tout.
- 1:07:15C'est un peu plus nuancé aussi.
- 1:07:18Quand bien même,
- 1:07:19à titre personnel,
- 1:07:20on renonce à ces données.
- 1:07:22Quand on financierait ces données,
- 1:07:24on parle de ce principe-là et on estime que s'en fout,
- 1:07:27c'est trop tard et c'est pas la peine de s'en occuper.
- 1:07:30Bah juste,
- 1:07:31c'est pas valable pour les gens avec qui vous bossez,
- 1:07:32en fait.
- 1:07:33C'est vrai,
- 1:07:33puis c'est pas légal,
- 1:07:34de toute façon.
- 1:07:37Avec la RGPD,
- 1:07:38il y a quand même des choses à mettre en place.
- 1:07:46Oui,
- 1:07:47en partie.
- 1:07:48Mais pas que.
- 1:07:49La RGPD va sur d'autres sujets aussi,
- 1:07:51sur le fait de récupérer ses données,
- 1:07:53d'avoir le droit de suppression,
- 1:07:54d'avoir des droits comme ça.
- 1:07:56Mais on pourrait très bien mettre en place des fonctionnalités qui sont typées RGPD,
- 1:07:59justement pour l'export de données et tout,
- 1:08:00et avoir un code qui est une passoire et qui permet de rentrer par n'importe où.
- 1:08:08mais juste respecter les données des gens respecter les gens tout pour et ne traitez pas leurs données comme les vôtres en fait,
- 1:08:18faites mieux pour eux et pour elles et oui,
- 1:08:22aujourd'hui avec l'IA de toute façon aucune boîte n'est inviolable aucun système de sécurité,
- 1:08:28de cybersécurité ne peut pas être brisé il y a toujours des failles,
- 1:08:32il y a toujours des trucs mais tout ce que vous pourrez faire
- 1:08:35pour éviter que ça arrive,
- 1:08:37en fait,
- 1:08:37ce sera de près.
- 1:08:39L'idée,
- 1:08:39c'est quand même qu'il n'y ait pas le premier clampin venu qui puisse voler les données de vos utilisateurs.
- 1:08:44On a,
- 1:08:44ça me semble,
- 1:08:47le minimum de faire au mieux,
- 1:08:49même si ce n'est pas parfait,
- 1:08:52même si de base,
- 1:08:52vous n'êtes pas expert en sécurité,
- 1:08:55enfin,
- 1:08:55en cyber-sécurité,
- 1:08:56et qu'il y a des choses auxquelles vous n'allez pas penser,
- 1:08:57mais justement,
- 1:08:58on a l'IA pour nous aider à mettre en place des choses.
- 1:09:01Essayons d'en mettre le plus possible.
- 1:09:03C'est notre responsabilité.
- 1:09:06On a des données qui ne nous appartiennent pas et quand on sait la valeur des données aujourd'hui,
- 1:09:12on ne peut pas choisir pour les autres.
- 1:09:15C'est ça.
- 1:09:17Voilà pour aujourd'hui.
- 1:09:20La bonne nouvelle,
- 1:09:20c'est que notre prochain épisode,
- 1:09:22ce sera un peu plus doux,
- 1:09:23un peu plus light.
- 1:09:23Il nous reste quelques petits sujets à aborder,
- 1:09:25mais un peu moins coton,
- 1:09:27un peu moins technique,
- 1:09:28on va dire ça comme ça.
- 1:09:29Et j'espère déjà que ça vous aura plu.
- 1:09:32parler la suite de ce déroulé,
- 1:09:35des différentes étapes,
- 1:09:36toujours pour développer,
- 1:09:37en tout cas pour comment nous on a développé notre portail et notre application,
- 1:09:41les étapes par lesquelles on est passé.
- 1:09:43Donc si vous avez écouté notre épisode la semaine dernière,
- 1:09:45vous avez vu que le cheminement,
- 1:09:47on le suit,
- 1:09:48on adapte à notre sauce dans les différents points.
- 1:09:52Et dans les prochaines fois,
- 1:09:53on parlera davantage de ce qu'on a décidé de mettre dans notre version 1,
- 1:09:58puis dans comment on a fait évoluer notre application.
- 1:10:00Parce qu'en fait,
- 1:10:01c'est un gros enjeu des applications,
- 1:10:03le moment où elle est vivante,
- 1:10:04utilisée,
- 1:10:05et comment on l'améliore et on la fait évoluer pour nos besoins,
- 1:10:09avec la partie support,
- 1:10:11avec les tickets de bug,
- 1:10:12avec les demandes d'évolution,
- 1:10:15avec tous ces petits trucs tout mignons là.
- 1:10:17C'est vrai que
- 1:10:18Lulu se fait une...
- 1:10:19Ça me donne à cœur joie de temps en temps.
- 1:10:21« Eh si,
- 1:10:21et ça,
- 1:10:22et ça,
- 1:10:22ce serait bien aussi. »
- 1:10:23« Mais ça ne marche pas sur Safari. »
- 1:10:25Ouais,
- 1:10:26et surtout arrêtez d'utiliser des Mac.
- 1:10:29« Oui,
- 1:10:29ça ne marche pas sur l'iPhone. »
- 1:10:32C'est horrible quand on est sur du Windows et du Linux et qu'en face,
- 1:10:37il y a quelqu'un qui utilise du
- 1:10:39Mac et de l'iPhone et qu'il y a des bugs qui n'existent que chez Mac et iPhone à cause de...
- 1:10:44On va rentrer dans le détail technique maintenant,
- 1:10:46mais ils ont des trucs à aveu chez Apple qui font qu'il y a des bugs.
- 1:10:49que chez eux et que du coup,
- 1:10:51pour les vérifier,
- 1:10:52d'ailleurs,
- 1:10:52dans ton dernier bug,
- 1:10:54tu ne m'as pas dit si t'es corrigé au dernier bug sur iPhone,
- 1:10:57mais normalement,
- 1:10:58c'est censé être bon parce que justement,
- 1:10:59j'ai été harceler Claude pour qu'il me mette en place un environnement de test et de debug spécifique Apple.
- 1:11:09Enfin,
- 1:11:09c'est intéressant à marcher.
- 1:11:12Après,
- 1:11:12ça permet au moins de tester différents supports.
- 1:11:17C'est accessible.
- 1:11:18Ça permet de tester,
- 1:11:21parce que peut-être que les gens qu'on va interviewer ont aussi des iPhones ou des Macs.
- 1:11:29Si tu veux bien les laisser au micro,
- 1:11:32venir au micro quand même.
- 1:11:33Non,
- 1:11:34mais je pense que le matériel Apple devait être interdit par la loi.
- 1:11:37Mais bon,
- 1:11:37effectivement,
- 1:11:38en attendant,
- 1:11:39on fera avec.
- 1:11:42Et en tout cas,
- 1:11:43ça revient aussi sur le fait que c'est important de tester et de revenir.
- 1:11:47et de partir du principe que ce n'est pas parce que ça marche sur votre matos que ça marchera chez les copains et les copines but it works on my machine mais voilà on parlera de ça les prochaines fois et en fait plutôt de la vie d'une application une fois qu'elle est en production et comment on
- 1:12:03la fait évoluer on l'entretient et après des choix aussi qu'on a fait nous sur la partie technique enfin pas technique mais vis-à-vis de l'IA on va dire et vers où on va et c'est pour ça qu'on a évoqué un petit peu tout à l'heure le
- 1:12:17Le côté Supabase open source,
- 1:12:19on verra comment ça se passe.
- 1:12:20Si ça se passe bien,
- 1:12:21si ça se passe pas bien.
- 1:12:22Mais voilà.
- 1:12:24La suite au prochain épisode.
- 1:12:26Ouais.
- 1:12:26On fait une petite entorse,
- 1:12:28parce qu'on arrive déjà bientôt à la fin de la saison 1.
- 1:12:33Et ça vient de les vacances.
- 1:12:35Voilà,
- 1:12:36c'est ça.
- 1:12:36Donc ça sera pas un épisode thématique la prochaine fois.
- 1:12:39Après,
- 1:12:40même si là,
- 1:12:41honnêtement,
- 1:12:41on est presque dans une thématique quand même mélangée un peu.
- 1:12:46Oui,
- 1:12:46mais en fait,
- 1:12:47qu'est-ce qu'on veut chez notre podcast ?
- 1:12:49Voilà,
- 1:12:49c'est ça.
- 1:12:49Et de toute façon,
- 1:12:50il y aura des super interviews aussi qui vont arriver,
- 1:12:53du contenu trop trop cool,
- 1:12:55courant août,
- 1:12:57et plein de surprises même après pour la rentrée.
- 1:12:59Oui,
- 1:13:00d'ailleurs,
- 1:13:01on vous l'annonce un petit peu,
- 1:13:02en août,
- 1:13:03du coup,
- 1:13:04le dernier clic sera en vacances,
- 1:13:05mais vous aurez quand même du contenu qui arrivera chaque vendredi,
- 1:13:09qui sera plus doux,
- 1:13:11enfin plus doux,
- 1:13:12moins long,
- 1:13:13surtout ça.
- 1:13:15On ne prendrait plus des parpaings d'1h37 comme ça,
- 1:13:17sans avoir à demander un par surprise.
- 1:13:21Et on se retrouvera à la rentrée après pour des épisodes longs à nouveau.
- 1:13:27Il y aura peut-être un épisode long pendant les vacances,
- 1:13:34on va dire,
- 1:13:34un cours en août.
- 1:13:36Mais voilà,
- 1:13:38on ira se reposer,
- 1:13:39mais on vous laisse quand même de quoi suivre un petit peu la tech.
- 1:13:41Et puis de toute façon,
- 1:13:42vous serez en vacances aussi.
- 1:13:44Donc,
- 1:13:44tes petits épisodes,
- 1:13:45ça vous fera du bien aussi.
- 1:13:47Merci à tous et à toutes de nous avoir écoutés.
- 1:13:50Lulu,
- 1:13:50est-ce que tu as un petit mot de la fin ?
- 1:13:52On est bon ?
- 1:13:53Là,
- 1:13:53ça me semble bien.
- 1:13:55On avait dit 45 minutes.
- 1:13:57Ouais,
- 1:13:59c'est...
- 1:14:00C'est...
- 1:14:01On va essayer.
- 1:14:03Ouais,
- 1:14:03mais on a fait plus gros.
- 1:14:05Le prochain,
- 1:14:05il fera 45 minutes,
- 1:14:06peut-être.
- 1:14:07Peut-être.
- 1:14:08Peut-être.
- 1:14:12Merci Lulu de m'avoir accompagné sur cet épisode.
- 1:14:14Bonne journée ou bonne fin de journée,
- 1:14:15selon quand vous nous écouterez.
- 1:14:17Et on se retrouve la semaine prochaine.
- 1:14:20Salut !