Session du 22 mai 2023 à 20h00
Développement Web & Frameworks
Programmation Orientée Objet (POO)
Deviens membre Premium magic_button
Cette session de mentorat est réservée aux membres Premium. Rejoignez-nous pour accéder à toutes les rediffusions des sessions de mentorat !
Premium
- check +100h de formations
- check +180 exercices de code
- check +100h de mentorats en rediffusion
- check 20 projets
- check Mentorats groupés hebdomadaires
- check Support individuel avec nos mentors
Automatiser des visuels de code avec APIs
Présentation d'un petit outil que j'ai codé qui me permet de générer automatiquement grâce à ChatGPT et snappify des images de code à partager sur Twitter.
L'occasion d'aborder les APIs voir un peu de code orienté objet :)
00:00:00 :Salut Céline!Salut!Ça va? Ça fait longtemps?Trop longtemps, j'ai plus de temps, j'ai plus rien.Ah ouais, t'es sous l'eau, comme on dit.Ouais, elle est trop intense cette formation, je suis au bout de ma vie.
00:01:21 :Ah ouais? Et au niveau du langage, ça va?Lequel?Bah t'étais sur PHP ou Java, je m'en rappelle plus.Écoute, à ce train là, je ne sais plus quoi te dire, parce que du coup, on a touché un peu à tout.
00:01:37 :Et Java, on ne l'a pas encore abordé, mais on a fait plein d'autres trucs.En ce moment, on est sur PHP, Symfony.Et alors? T'avais fait Django un peu?
00:01:51 :Django, non, je n'avais pas commencé, j'assistais juste au mentora pour curiosité.Symfony, je n'y ai jamais touché, je n'ai aucune idée à quoi ça ressemble, mais j'en ai entendu bien.
00:02:01 :Donc je voudrais savoir par rapport à Django ce que ça donne.Ça a l'air vraiment sympa en tout cas.Pour les gens organisés, je pense qu'ils ne peuvent pas faire sans.
00:02:09 :J'ai l'impression que ça ressemble un peu à Django, mais je sais que sur les templates, me semble que c'est assez similaire.Après, il y a beaucoup de frameworks qui sont assez similaires sur la façon dont ils gèrent les templates.
00:02:21 :Mais je serais curieux de te plier un petit peu un jour pour voir un peu plus de ce qu'il y a en fait.Écoute, je reviens un peu parce que je pense que je vais peut-être faire justement le framework Django pour le présenter à l'examen.
00:02:35 :Parce que la formation, je ne suis pas tip top, on n'a pas beaucoup de soutien.Donc je pense que je vais peut-être faire Django, j'ai le droit de le présenter à n'importe quel langage.
00:02:46 :Ah oui, c'est libre libre.C'est vraiment, effectivement, le cadre est large.Ok.Donc, il est qui là?Ok, on va encore attendre une petite minute.
00:03:02 :Donc oui, ça fait un moment que je ne vous ai pas vu.Ça fait longtemps que je n'ai pas fait de session de Mentora.Ça fait du bien.
00:03:08 :J'ai un peu la voix éteinte, donc j'espère que je vais tenir une heure, mais je pense que ça devrait le faire.Du coup, ce soir, je vais vous montrer un petit peu, parce qu'il y a eu des questions sur les API.
00:03:21 :Et moi, j'ai implémenté, je ne sais pas si vous l'avez vu, je vais vous montrer.J'ai pas mal de petits trucs à vous montrer, des petites nouveautés.
00:03:28 :Donc on va partager tout ça.Alors, est-ce que vous voyez mon écran?Et salut, Fernando, Jonathan et Gab aussi.Petite session ce soir, je n'ai pas fait de rappel et tout.
00:03:48 :J'aurais peut-être dû envoyer un mail, je ne sais pas.Je vais essayer d'être un peu plus…Je reviens encore de vacances dans ma tête, mais ça fait deux semaines maintenant.
00:03:59 :Donc, je vais essayer de relancer un petit peu la communication.Du coup, plusieurs choses.Sur Doctrine déjà, si je reviens sur Doctrine, je ne sais pas si vous avez vu ce que j'ai mis dans la communauté.
00:04:13 :Il y a la recherche, notamment, qui est grandement améliorée, qui passe par Algolia maintenant.Vous connaissez ce truc, c'est une boîte française d'ailleurs, pour la petite histoire.
00:04:24 :Il y a eu une licorne maintenant, je crois.Ça fait une dizaine d'années que ça existe, et c'est vrai que c'est assez fou.C'est pour vous montrer un petit peu, si je reviens sur ça, voilà.
00:04:36 :Ça mimique un peu votre base de données.C'est une base de données qui va synchroniser.Vous pouvez modifier un petit peu, ça va être un petit peu différent de la base de données que vous avez.
00:04:49 :Mais c'est vraiment assez cool, parce que ça permet de rechercher super rapidementet de construire un front-end qui est vraiment, vraiment sympa.Et ça va, vous allez voir, là, si je vous montre.
00:05:04 :Hop, où est-ce que je l'ai?Ici, ouais. Le instant search, je l'avais sur, voilà, ça.Vous allez voir que c'est un petit peu le problème actuellement,parce que je filtre directement sur la base de données avec Django.
00:05:21 :Et il y a pas mal de trucs, notamment, savoir si vous avez terminé une session ou pas.Il y a plein de petits trucs qui sont assez longs à calculer.
00:05:31 :Et vous l'avez peut-être vu, c'est assez long des fois à afficher,alors que là, si on regarde, c'est quasiment instantané.Quand on affiche le temps, c'est quelques millisecondes à chaque fois.
00:05:40 :Donc c'est vraiment plaisant.Vous pouvez combiner tout ça. Tout est super bien fait.C'est-à-dire que si, vous voyez, plus je filtre ici comme ça, plus ça va enlever les filtres.
00:05:51 :C'est-à-dire que si je cherche par exemple, qu'est-ce que je pourrais chercher?Fonction. Merde, classe, par exemple.On n'a pas d'exercice intermédiaire sur les classes, par exemple.
00:06:07 :Parce qu'il m'a enlevé le filtre intermédiaire pour les classes.Donc la recherche qui est quand même pas mal améliorée grâce à ça.Et si je reviens ici, vous avez le même widget ici.
00:06:23 :Quand vous cliquez maintenant, ça vous amène là.Et vous allez voir aussi, il y a une recherche que je vais implémenter, tout ça,dans par exemple l'accompagnement ici.
00:06:32 :Par exemple, avant, c'était un petit peu, enfin c'est encore toujours un petit peu le bordel pour chercher.Si on cherche Django, déjà là, vous voyez là encore, c'est un petit peu, c'est même très lent.
00:06:43 :Et ça va, ça ne cherche pas super bien.Alors que là, si je cherche Django et que je vais dans les questions de Mentora,ça va chercher à la fois dans les questions et les réponses de Mentora.
00:06:52 :Donc là, vous avez toutes les questions de Mentora, réponses de Mentora.Et vous voyez toutes les occurrences.Donc si on met, je ne sais pas, par exemple, qu'est-ce que tu avais comme question, Gab,récemment sur Django que je pourrais chercher?
00:07:04 :Tu avais les formulaires, je crois, formulaires.Oui, les formulaires, sur les valides, oui. Et je ne sais plus, il y en avait une autre.Voilà.
00:07:12 :Sur les statistiques.Oui, donc effectivement, tu vois là, on peut beaucoup plus, voilà,styliser, séparer les champs de formulaires,uploader des gros fichiers en asynchrone, password input, reverse match.
00:07:24 :Donc voilà, on trouve beaucoup plus d'informations et je vais l'inclure aussi du coup,directement quand vous allez poser une question, il va pouvoir vous suggérer,vous dire, ah bah tiens, peut-être qu'il y a déjà une réponse à ta question.
00:07:36 :Voilà.Et aussi, il y a tellement de trucs, je ne veux pas trop tomber là-dedans sur les trucs d'IA,parce que j'en ai tellement ma classe sur Twitter avec tous les gens qui en parlent,mais c'est quand même vrai que c'est assez ouf.
00:07:48 :Par exemple, là, il y a un nouveau truc et justement, ça va me permettre de faire le lienavec les discussions et de ce dont on va parler ce soir, les API.
00:07:57 :Parce que je vais vous montrer un petit peu, donc, comment utiliser,comment j'ai utilisé l'API de OpenAI pour faire l'autre nouveauté qui sont les exercices.
00:08:08 :Ce ne sont pas des exercices, je ne sais pas trop comment l'appeler.Ce ne sont pas des exercices sur l'intelligence artificielle,mais ce sont des exercices générés par l'intelligence artificielle.
00:08:16 :Et oui, donc, un autre truc très intéressant, c'est qu'il y a un autre truc qui est aussi de OpenAI,je crois, c'est le prochain truc avec lequel je vais m'amuser.
00:08:28 :Je ne sais pas si vous en avez entendu parler, c'est Whisper.J'aime bien, ils trouvent des petits noms sympas à chaque fois.Et j'avais fait des tests il y a quelques mois, et il me semble que j'avais, je ne sais plus,j'avais fait ça assez vite, mais je n'avais pas été transcendé.
00:08:46 :Et là, j'en ai entendu parler de nouveau avec des gens qui disaient que vraiment,c'était complètement bluffant.Ce que ça fait, c'est que ça fait du speech to text.
00:08:54 :Donc, ce que ça veut dire, en fait, c'est que ça va tout simplement transcrire votre audio en texte.Et ça ne m'étonne pas, en fait, maintenant j'imagine par rapport à des trucs comme Child GPTque là où, je n'ai pas lu là-dessus et tout, mais j'imagine que, oui, voilà,
00:09:10 :on voit des trucs de prédiction.La grosse différence que ça doit faire par rapport à ce qu'on avait avant,c'est qu'avant, j'imagine, ça faisait juste essayer de trouver ce qu'il entendaitet peut-être faire une petite passe de correction après.
00:09:22 :Mais là, en fait, ce qui est assez ouf, c'est qu'il va vraiment comprendre,même quand on a des termes très techniques.Donc là, moi, c'est toujours le problème quand je, par exemple, je ne sais pas si vous avez déjàactivé les sous-titres automatiques sur mes vidéos YouTube,quand elles ne sont pas sous-titrées, justement, quand je ne suis pas repassé derrière.
00:09:36 :Python, c'est n'importe quoi.Des fois, c'est P-A-I-T-R-E-M-A.Enfin, il ne comprend jamais ce que c'est.Dès qu'on a des trucs, un petit peu, des mots anglais à l'intérieur de la phrase française,il ne comprend plus.
00:09:48 :Là, j'imagine que, du coup, voilà, il va, avec toute la base de connaissances qu'il ade toutes les phrases qui ont été dites dans le monde,il va comprendre le contexte et il va changer la phraseet pas se baser sur ce qu'il a entendu, mais vraiment faire un texte cohérent.
00:10:01 :Et apparemment, du coup, ça donne des trucs incroyables.Pourquoi je dis ça? Parce que, du coup, ce que ça va me permettre de faire,en plus, je crois que c'était open source, je crois, ouais, open sourcing, voilà, c'est ça.
00:10:10 :Donc, je vais regarder ça, je vais voir s'il y a une API,parce que ça me permettrait, du coup, notamment sur les sessions de Mentora,c'est ce que j'aimerais vraiment beaucoup faire, c'est-à-dire de générerles sous-titres automatiques fidèles sur les sessions de Mentorapour ensuite vous permettre de rechercher dedans.
00:10:26 :Parce que là encore, si on revient sur, parce que j'étais là,si on revient sur la page des Mentora, je crois que j'ai mis une recherche,je ne suis même plus sûr. Oui, voilà, donc j'ai mis le même type de recherche
00:10:38 :qu'il va chercher juste dans les noms qui sont tout le temps sessions de Mentora,donc ça ne va pas beaucoup vous avancer dans les descriptions.
00:10:44 :Donc, ouais, voilà, à moins que, je ne sais pas, si on tape Docker,bon, on va tomber là-dessus, ça peut être très précis.Mais voilà, si maintenant j'ai les sous-titres, ça va être vraiment incroyable,on va pouvoir chercher très précisément dans une session de Mentora,sans pas parler de quelque chose. Donc voilà.
00:11:00 :Et Céline, oui, oui, du coup, et ça sera pareil sur les formationscomme les quelques sessions de formation que j'avais commencé à sous-titrer,dans lesquelles, je crois, j'ai re-checké ça récemment,type natif, je crois que celle-là il y en a, et d'ailleurs il y en a un,ouais, voilà, où du coup ça permet de faire ce système,
00:11:21 :d'ailleurs il faut que je fixe les couleurs, parce qu'en plus en mode sombre,je crois que c'est assez cassé, mais ça permet d'avoir la transcription,vraiment, de ce que je dis, de cliquer, d'être amené directementdans l'endroit dans lequel j'en parle dans la vidéo.
00:11:33 :Et donc ça serait pareil avec les sessions de Mentora,et là ça serait vraiment incroyable.Vous voulez, parce que là on commence à en avoir une bonne soixantaine, je crois,donc voilà, si vous voulez savoir, est-ce qu'on a parlé de refactoringà un moment dans une session de Mentora, vous allez pouvoir tomber
00:11:46 :directement sur l'endroit où on a parlé de refactoring il y a six mois.C'est vraiment incroyable.Et donc, ça me permet de faire le lien comme je vous le disais,parce que je crois que c'était pas toi Fernando, ou non, c'était,je crois que c'était toi, je ne sais plus, qui parlait des API,
00:12:01 :de comment on trouve des API, comment on sait lesquelles utiliser, etc.Et j'avais répondu sur la communauté qu'en fait c'est très souvent guidé par l'usage.
00:12:10 :En fait moi ça m'arrive quasiment jamais de me dire, tiens, de me lever un matinet de me dire, bon, tiens, qu'est-ce que je pourrais utiliser comme API,ou quoi, c'est vraiment que vous avez un besoin,et vous allez chercher s'il n'y a pas une API qui peut permettre de vous simplifier la vie des fois,
00:12:28 :ou de faire des trucs que vous pourriez juste pas faire sans cette API.Un bon exemple que j'ai, c'est dans les trucs de AI, justement,si je reviens sur mon AI ici, d'ailleurs n'hésitez pas à l'utiliser,je n'ai pas fait de notifications sur le site, ni de communication par mail.
00:12:45 :C'est encore en bêta, mais ça marche quand même bien.Il y a des trucs assez cool, franchement moi-même je me suis pas mal amusé sur des trucs un peu plus avancés.
00:12:55 :Par défaut si vous ne proposez pas de thématique, il va vous donner un truc super large.Et après vous pouvez, par exemple, sur les tests unitaires, il y a des trucs assez avancés.
00:13:04 :Je vais rajouter, là j'ai un peu limité, je ne voulais pas,enfin c'est ça l'intérêt aussi du truc, c'est que vous n'avez pas juste un prompt,ou vous ne savez pas trop quoi écrire.
00:13:13 :La façon dont c'est cadré, ça permet d'avoir des trucs qui sont quand même assez intéressants.Et je vais rajouter plein d'autres thématiques, puisqu'il n'y a aucune limite,je peux mettre un peu tout ce que je veux, après c'est JPT qui fait le travail.
00:13:25 :Et il y a des trucs intéressants, par exemple sur les exercices de code,trouver l'erreur dans le code, Gab l'a vu comme moi, des fois il se plante un peu.
00:13:32 :Il y a une fois il nous a fait un truc où il nous dit, trouve l'erreur à cette ligne.Et il n'y avait aucune erreur à la ligne.
00:13:38 :Donc on lui a dit, en fait il n'y a pas d'erreur, il a dit, ah oui, excusez-moi,il n'y a pas d'erreur, tout est bon. Pendant cinq minutes je cherchais,
00:13:44 :je me disais, c'est pas possible, je ne vois vraiment pas où est le problème.Et il n'y en avait pas. Donc il y a encore des petits trucs comme ça,
00:13:51 :mais en général, franchement, c'est assez cool.Donc je m'égare un petit peu. Ouais Gab, tu as une question?L'anecdote la plus rigolote, c'est quand il m'a mis trouver l'erreur,il m'a mis un commentaire, il a mis l'erreur est ici.
00:14:09 :Il m'a mis où était l'erreur exactement.Ah oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui, oui,oui, moi aussi il me l'a mis, il faut que je lui précise, ne me dis pas où est l'erreur.
00:14:16 :C'est ça qui est marrant, c'est qu'on voit effectivement ce fameux métierqui commence à apparaître de prompt engineer, où effectivement,plus on l'utilise, plus on comprend que des fois il suffit de dire un mot,il va comprendre autre chose. Par exemple justement, si vous lui dites,
00:14:36 :à un moment justement, on peut lui dire maintenant en fait,s'il est par exemple un assistant, un prof, etc.Et justement quand je lui disais qu'il était, je crois que c'était assistant justement,il m'assistait trop, donc il me disait vraiment il y a ça, ça, ça, ça.
00:14:53 :Et donc en fait je l'ai changé en disant t'es pas un assistant, t'es un prof.Et là du coup effectivement il changeait sa façon de faire, c'était plus genre,je te dis, c'était plus voilà il y a des erreurs dans le code,voilà où sont les erreurs, et en fait c'est pas ce que je veux,
00:15:05 :moi je veux que tu… Et en fait il était un peu plus en mode prof.Donc c'était assez marrant de voir qu'il faut comprendre comment,enfin ce qu'il faut dire et ce qu'il ne faut pas dire.
00:15:15 :Donc tout ça pour dire que, je reviens à ça, Whisper,pourquoi j'étais reparti sur mon petit exemple d'IA, je ne sais plus,j'étais parti sur Whisper, donc oui, je voulais utiliser cet API,bon je sais plus, j'ai perdu mon fil, mais voilà, donc en fait vous allez souvent,ah oui c'est ça, voilà je sais, je me souviens, parce qu'en fait ici,
00:15:40 :la façon, je vais vous montrer en fait justement, où est-ce que c'est,je vais chercher, non c'est formation, alors, Quiz AI, voilà, c'est cette partie ici,attendez je vérifie que je n'ai pas de clé de rien, ok c'est bon, voilà,attendez je vérifie, alors attendez, c'est peut-être Quiz AI Index,
00:16:28 :ok je commence à retrouver, ah non je sais, ok, c'est pour un autre truc,ok, alors oui voilà, je viens de me rappeler, justement en fait c'est parce que j'ai utilisé,alors oui ça aussi c'est marrant, j'ai utilisé, et ça aussi je vais vous montrer,il est où, automatiser, en fait j'ai fait, désolé je me perds un peu,
00:16:54 :j'ai fait justement un script qui permet, ah oui dans le script il est là,auto-twitter, voilà, auto-twitter, donc je l'ouvre, donc en fait j'ai fait,attendez je vais vérifier, parce que je l'ai fait super rapidement,je vais encore vérifier que je n'ai pas de clé, ouais c'est ça j'ai des clés,
00:17:16 :bon ok on va enlever les clés à la main, donc, ok c'est bon,donc j'ai fait ce script en fait, et voilà, je retrouve mon fil,donc j'ai fait ce script avec des prompts, voilà, donc là vous allez voir,est-ce que vous voyez bien, ouais c'est bon, donc en fait je voulais voir si je ne pouvais pas
00:17:40 :automatiser un petit peu le compte twitter, et je suis sûr, en fait j'ai vu des gens,côté anglophone qui font des trucs un petit peu à python tips, etc,et je suis sûr qu'ils l'ont automatisé, ou au moins une partie,parce que, enfin ça ne m'étonnera pas du tout, parce que je sais que j'ai vu l'outil qu'ils utilisent,
00:18:02 :je m'en suis rendu compte après coup, ça s'appelle snapify, et ça permet justement,donc là encore vous voyez, je vais vous montrer plein de petites API comme ça,snapify, donc là encore vous voyez, c'est en fait un truc qui permet,si je vais dans mon éditor, ça permet de montrer du code comme ça, de façon assez sympa,
00:18:26 :je crois que j'en avais des mieux, ouais celui-là, voilà, avec un petit branding,et en fait j'ai vu ça, c'est le truc par défaut qu'ils vous mettent quand vous mettez profil infopour le mettre sur votre image, et oui, c'est ça Gab, t'en as probablement vu pas mal côté anglophone,
00:18:42 :et donc je me suis rendu compte après coup qu'effectivement ils utilisaient ça,parce que j'ai cherché un outil, il y en a plein, il y a carbon aussi qui est pas mal,carbon now, le problème justement, et c'est là où on arrive à ce que je disais,c'est que carbon c'est cool, mais il n'y a pas d'API, donc là en fait si je veux créer une image de ce texte là,
00:19:03 :il faut que j'aille sur le site à la main, que je fasse ensuite exporter etc,et c'est pas du tout pratique, je pourrais à la limite essayer de l'automatiser avec Seleniumou des trucs comme ça qui permettent de faire des automatisations sur votre navigateur,mais c'est vraiment un truc à l'embiqué pour faire ça.
00:19:19 :Et donc généralement ce qu'on cherche, et c'est là où j'ai cherché, il y a une dizaine de trucs comme ça qui existent,et il y en a qui ont eu la bonne idée de justement faire une API, et donc c'est là où ça les distingue beaucoup des autres,tiens vous voyez c'est lui je crois justement qui poste pas mal sur le Twitter anglophone.
00:19:37 :Donc justement, ouais ouais, c'est ça, et donc là je regardais, et justement qu'est-ce qui fait que j'ai choisi ce service,j'en ai trouvé 5 ou 6 qui étaient à peu près tous pareils, mais lui il a une API.
00:19:47 :Et donc ce qui est pratique c'est que du coup ça permet, elle est encore vous voyez, ils l'ont bien appelé SimpleSnap API,parce qu'on peut pas faire vraiment tout ce qu'on veut encore, mais elle existe, elle est super simple d'utilisation,on lui donne ce qu'on veut, voilà le code, le filename etc.
00:20:04 :Et donc j'ai eu pas mal de problèmes avec ça parce que justement, si je reviens sur mon auto-Twitter,dans les prompts vous voyez, j'ai cherché différentes façons, parce que je voulais vraiment tout automatiser.
00:20:16 :Donc en fait, j'ai plusieurs trucs, des do, don't, et des tips.Donc voilà, je veux que tu crées un tweet pour Twitter avec une astuce de code sur le langage,et là je lui ai dit tel langage et tel framework. L'astuce doit être de niveau et j'enjecte une difficulté.
00:20:31 :Et au début je l'avais fait justement sous forme de JSON.Donc j'avais mis ça comme ça, je sais pas si vous voyez très bien, je vais agrandir un petit peu.
00:20:40 :Non, ça c'est le thème font.Donc là voilà, je lui disais tu vas me fournir ça en mode tweet, contenu du tweet, et ensuite code, et ensuite etc.
00:21:02 :Le problème c'est que quand j'ai fait ça pour le code, ça marchait pas bien du tout,parce qu'il me retournait des accolades, enfin du coup, il me le formatait pas bien,il mettait les trucs à la ligne, donc mon JSON n'était pas validé.
00:21:18 :Donc quand j'essayais de lire ce JSON avec le module JSON d'Empython, ça marchait pas,il me disait erreur de syntaxe tout le temps.Donc là je me suis dit justement, qu'est-ce que je fais?
00:21:26 :Est-ce que j'essaie de modifier l'output de GPT pour qu'il me donne le bon format?Mais à chaque fois je me suis dit, il va me mettre un saut de ligne ou un truc comme ça qui fait que ça va pas marcher.
00:21:37 :Donc j'ai commencé par chercher justement, est-ce qu'il y a pas une API?Alors non, pas une API dans ce cas là, c'est juste un module.
00:21:45 :Donc là c'est pas exactement le même sujet, mais j'ai juste cherché un module dans ce cas là.Est-ce qu'il y a pas un module JSON un peu plus puissant, où on peut lui passer un JSON un peu cassé,et puis il arrive quand même à nous sortir un dictionnaire Python à partir du JSON qui est pas totalement bien formaté.
00:22:01 :Et j'en ai trouvé, mais ils étaient pas maintenus depuis 8 ou 9 ans et ça marchait pas très bien.Du coup je me suis dit, finalement ce que je vais faire, c'est que je vais partir sur un truc un peu différent.
00:22:11 :C'est-à-dire que vous voyez, il faut toujours être un petit peu créatif là-dedans.Je me suis dit, je vais lui demander de me retourner ça comme si c'était du HTML,parce que ça je me suis dit, il est habitué à avoir du code, du code HTML.
00:22:23 :Donc il va pas trop prendre de... enfin il va pas faire des trucs un peu alambiqués.Ça fait 4 fois que je dis alambiqué, je crois ce soir.
00:22:33 :Et du coup comme ça en fait il va me mettre directement le code ici, comme il faut.Et je crois, je sais plus si je lui ai dit, je crois que je lui ai dit à un moment...
00:22:44 :Non, je crois que je lui ai spécifié qu'il fallait qu'il me retourne...Ouais, non je sais plus.Donc là après, j'utilise Beautiful Soup tout simplement pour parser le HTMLet récupérer le texte du tweet et le code de l'astuce.
00:23:02 :Et c'est là où vous voyez, justement ici, dans le système, on peut lui spécifier,lui dire qu'est-ce qu'il est.Et en fait quand je disais, tu es un assistant, justement ça marchait pas.
00:23:13 :Parce qu'il me sortait toujours des trucs où il me disait, oui je vais t'aider à créer une astuce,est-ce que tu es content avec l'astuce, etc.
00:23:21 :Et moi je lui disais, je veux pas tout ça, je veux juste que tu me retournes ce que je t'ai demandé.Et j'avais beau essayer de lui dire justement, ne me dis rien de plus, retourne exactement précisément ça.
00:23:32 :Toujours une fois sur deux ou sur trois, il me disait, ok merci pour ta question, voilà.Et je disais, ah, et là du coup je vais préciser, tu es un script qui m'aide à rédiger des tweetsen me fournissant un template que je peux utiliser dans un autre script.
00:23:45 :Et là ça marche, là justement il me retourne juste ce qu'il faut et il va pas essayer de rajouter des trucs.J'ai l'impression qu'avec ça il a compris que comme ça doit être utilisé dans un autre script,c'est pas pour un humain, c'est un truc qui doit être carré.
00:23:57 :Donc vous voyez c'est assez marrant.Et donc ensuite on envoie ça à OpenAI, donc c'est ce que je vous disais sur le fait que aussicette bibliothèque est super simple d'utilisation.
00:24:09 :Il y a vraiment pas grand chose, donc si on va voir par exemple, si je retourne dans OpenAI,alors c'est pas le pricing, c'est le...
00:24:21 :Je vais essayer de ne l'avoir encore pas affiché.Je vais l'ouvrir là-dedans.Ah, attendez.Ok, je vais mettre là.Alors OpenAI Billing.N'hésitez pas à l'utiliser, parce que pour l'instant, pour vous donner aussi un petit aperçu,on est à 3,14$ depuis le 11 mai avec tous les tests que j'ai faits et avec toutes les questions que vous avez posées,
00:24:52 :ça m'a coûté 3$.Donc n'hésitez pas à l'utiliser, j'ai pas mis de limite pour l'instant.Enfin, il y a une limite sur le 25$ sur le site, mais je vous ai pas limité individuellement, donc vous pouvez poser autant de questions que vous voulez si vous le souhaitez.
00:25:06 :Céline, si tu veux poser des questions sur PHP, tu...Ah, PHP, je suis plus sûr si je l'ai mis.Il y a JavaScript, mais je pense pas que j'ai mis PHP ou Java dans les choix.
00:25:15 :Désolé.Donc si on va voir, voilà, c'est ce que je voulais.L'API, je commence un petit peu à perdre ma voix.Il est quoi? Ouais, ok, une demi-heure presque.
00:25:25 :Donc, on a une API Python, et donc ça s'entale tout simplement avec pip.Et ensuite, vous allez voir qu'il n'y a pas grand chose.Ça ressemble à pas mal de documentation que vous avez probablement déjà vu.
00:25:40 :Et ce qui est bien, c'est qu'à chaque fois, justement, il vous met, comme dans pas mal de documentation maintenant, je sais pas si...Je sais plus, ça c'est quel modèle.
00:25:48 :Ça ressemble un peu à ce que fait Stripe.Il y a de plus en plus de bibliothèques qui se ressemblent maintenant, qui permettent d'avoir ce même modèle, qui est très pratique, même si je fais...
00:25:57 :Non, ok, je pensais qu'en faisant commande K, ça allait m'ouvrir la recherche, mais non.Parce que sur Stripe, par exemple, il y a la recherche qui est vraiment bien faite aussi avec ça.
00:26:06 :Et donc ce qui est bien, c'est que là, vous avez l'exemple généralement de base, il vous montre avec curl.Donc ce qui permet de... curl, c'est un utilitaire en ligne de commande dans le terminal, qui vous permet de faire des requêtes.
00:26:18 :Donc vous avez ici le point d'API, les headers, donc content type JSON, vous avez le header d'autorisation, vous lui donnez votre clé,et ensuite vous lui dites, voilà, vous lui donnez les datas que vous voulez, et là vous avez tout ce que fait chaque data.
00:26:33 :Et après vous pouvez, vous voyez ici, l'avoir directement en Python.Donc là c'est cool, ils ont fait... des fois, il faut passer par request, donc en fait, il faut refaire cette requête ici, je vais la grandir un petit peu, vous voyez peut-être pas.
00:26:46 :Il faut refaire cette requête en fait avec request, donc faire request.post, lui donner ça, lui donner les headers, les datas, etc.Et là en fait, ils ont directement une API qu'on peut utiliser avec... qu'on a installé avec pip, si vous voyez ici.
00:27:02 :Désolé, je commence vraiment à perdre ma voix.Voilà, donc là ils ont déjà une API qu'ils ont faite, j'imagine juste un wrapper justement par-dessus tout ça.
00:27:16 :Et donc là ça permet de l'utiliser, making request, list models, donc voilà, si je reviens ici, vous pouvez l'utiliser très simplement en faisant completion create,vous lui donnez le modèle, le prompt, et là les nouveautés c'est que vous avez les chats, voilà.
00:27:36 :Parce que maintenant vous pouvez lui donner un historique justement de conversation, donc c'est ça qui fait que ça devient de plus en plus puissant.Et n'hésitez pas à m'interrompre, si vous avez des questions, si vous voulez qu'on voit d'autres choses aussi, y'a pas de soucis.
00:27:51 :Ça semble bon.Ok, donc si je reviens sur mon PyCharm, et j'ai refait un petit peu le code, ça me permet de vous montrer aussi un petit peu comment je l'ai fait au niveau du code.
00:28:17 :Parce qu'au début j'avais tout fait avec justement des... ça c'est marrant, c'est le genre de choses, je trouvais que c'était intéressant comme exemple aussi,en terme de... alors je peux pas vous montrer tout l'historique de comment j'ai fait le code, mais je peux vous en parler un petit peu,
00:28:30 :parce qu'au début justement j'ai vraiment parti ça, ça doit être la semaine dernière, en me disant tiens, un peu un challenge,en me disant tiens ce serait marrant que j'arrive vraiment à automatiser ça, c'est le genre de trucs, il y a 10 ans déjà je me rappelle j'avais automatisé,
00:28:44 :j'avais fait un petit site pour trouver des raccourcis clavier, des raccourcis clavier de plein de logiciels,et j'avais déjà sur Twitter automatisé la création d'images avec Pilo, une bibliothèque qui permet de créer des images avec Python,et j'avais avec... ça devait être... if this then that, ifttt, j'avais automatisé justement le post des images sur le compte Twitter tous les jours,
00:29:07 :je crois d'ailleurs, je me demande si ça existe encore, c'est bien possible, ah mon dieu c'est incroyable ça existe encore,voilà donc, ah, voilà ça c'est génial, ça j'adore, donc vous voyez, il y a 11 abonnés quand même, donc un succès incroyable,en juillet 2014, ça fait presque 10 ans, et vous voyez que ça a continué à marcher, ouais, bon, ouais, ifttt, ouais,
00:29:40 :donc c'était bien, if this then that, mais ce qui est marrant c'est que quand même, je crois qu'à un moment j'avais effectivement,je m'étais rendu compte que ça continuait à tourner, j'avais arrêté mon script, ah voilà, quand même, j'avais arrêté mon script,voilà, 12 juillet 2020 quand même, donc vous voyez, pendant 6 ans ça a tourné, c'est pas très écologique tout ça, mais voilà,
00:29:58 :ça permettait de créer ces images, et il y a un moment j'ai débranché le script qui permettait de créer les images,et le ifttt a continué quand même à poster les tweets mais sans les images. Donc voilà, c'était un petit peu partie de cette même idée,
00:30:13 :de me dire, bon, là en fait ce que ça allait faire c'était juste chercher les éléments dans ma base de données, ah oui,et puis là vous voyez que ça allait juste chercher le même truc à chaque fois. Donc là l'idée c'était de me dire, voilà,
00:30:22 :10 ans plus tard, est-ce qu'avec maintenant tous les trucs d'intelligence artificielle, on peut faire un truc qui ne serait pas encore plus incroyable?Et donc je me suis dit, voilà, avec Snapify, avec JatJPT, je peux probablement le faire, et au début, donc j'ai commencé à le faire vraiment en me disant,
00:30:43 :Carbon qui est l'outil que je vous ai montré, on peut créer des images de tweets, donc j'avais posté des trucs comme ça sur le Twitter de Doctrine,et donc je voulais voir si on pouvait pas automatiser tout ça. Donc j'ai commencé à créer ça, j'avais même commencé je crois dans VS Code,
00:30:57 :parce que je voulais juste tester vite fait, et donc j'avais écrit quelques fonctions, et je me rendais compte que je faisais très souvent la même chose,c'est-à-dire qu'on avait beaucoup de fonctions qui avaient besoin du résultat d'une autre fonction.
00:31:11 :Parce que là, par exemple, je vais avoir un prompt, je vais avoir différentes variables, comme le langage, la difficulté,et ensuite je vais créer le code de l'image, et donc je vais devoir lui passer toutes les informations que j'ai récupérées,donc le prompt, le langage, l'image à générer ensuite, etc. Et c'est là où je me suis rendu compte que d'avoir des fonctions, c'était plus très pratique,
00:31:33 :et où je me suis dit aussi, donc là j'ai commencé à créer une classe, et je me suis dit, bon, en fait, ça c'est marrant,parce qu'on a tendance à penser, c'est quelque chose que je vois très souvent et que je continue à faire aussi, c'est qu'on pense pas en termes génériques.
00:31:52 :Et donc, le problème, c'est que du coup, on a une vue très limitée de ce que ça doit être, et on va commencer à créer un programme qui va juste faire ceci,qui va faire un type de tweet, par exemple des tweets de type astuce avec piton, et c'est tout. Et donc on va commencer à créer des fonctions pour ça,
00:32:15 :ou une classe dans ce cas-ci, et justement, on va mettre directement, on va pas créer une variable langage, on va dire directement, bah, on va pas faire de prompt,on va mettre directement dans une seule, une ou deux fonctions, on va faire une fonction pour générer les images, et une fonction pour le prompt,
00:32:50 :par exemple des tweets trouve l'erreur, des tweets justement doudantes, etc. Et là, j'ai commencé à en faire plusieurs, voilà, tips, doudantes,je vais en rajouter sur trouver l'erreur, etc. Ou sur exercice aussi, ça pourrait être sympa, justement. Et donc là, vous voyez qu'on commence à,
00:33:13 :c'est de partir de comment on veut l'utiliser. C'est-à-dire que là, justement, on, potentiellement, on est en train de créer une API.On pourrait après mettre ça disponible à quelqu'un, créer un petit serveur web qui va utiliser notre classe tweet ici et qui va permettre,avec des points d'API, de dire, bah, créez-moi un tweet de type astuce sur tel langage, etc. en faisant, justement, une requête sur une adresse web.
00:33:44 :bon, bah, tiens, je vais mettre un language ici, difficulty, est-ce que ça, justement, le generateGPTOutput, est-ce que ça doit être une méthodeprivée ou publique, je ne sais pas. Donc au début, bon, on va la mettre comme ça. Quel type de méthode on a besoin de faire, donc, voilà.
00:34:02 :On ne sait pas trop. Donc ce qui est intéressant, c'est de partir de l'usage, de se dire comment j'aimerais utiliser mon code, en fait.Comment, si j'étais l'utilisateur de cette classe, comment je l'utiliserais. Et donc, c'est là où on se dit, bon, bah, en fait, je vais vouloir,
00:34:35 :la raison pour laquelle j'ai créé une classe, c'est de pouvoir, justement, lui passer différentes informations. Donc je vais pouvoir dire, bah, voilà,language, Python. Est-ce que je veux qu'il le crée tout de suite ou pas? Ou est-ce que je veux, par exemple, faire un tweet, faire tweet.create,
00:35:24 :la plus clean que je ferais, parce que, justement, ça enlève un petit peu de flexibilité. Peut-être que c'est mieux de pouvoir, justement,créer l'instance sans rien faire, juste en créant les informations, en lui disant, tu vas être un tweet de piton avec tel framework, de telle difficulté,et ensuite, je veux que tu le crées, et ensuite, je veux que tu le publies sur Twitter, etc. Mais voilà, dans l'absolu, il y a pas forcément des façons
00:35:52 :qui sont mieux que d'autres. C'est juste, vous vous posez la question comment vous souhaiteriez l'utiliser, parce que vous allez aussi êtrel'utilisateur de cette classe. Et vous voyez que déjà, ça va commencer à guider, justement, la façon dont on le fait. Et là, vous voyez, par exemple,
00:36:16 :de pouvoir le sauvegarder, donc justement, de pouvoir créer les choses sans forcément les sauvegarder. Par contre, le generateJPTOutput,j'en ai jamais besoin tout seul, en fait. C'est toujours quelque chose qui va être utilisé, pareil, le parse, j'ai pas fini le script, là, du coup,
00:36:43 :je vais jamais avoir besoin de générer le prompt avec l'astuce. Je veux forcément, à un moment, le sauvegarder sur le disque ou le publier.J'ai pas envie juste de générer un prompt sans rien faire après. Donc, c'est pour ça que cette méthode, je l'ai mise privée. Mais on pourrait se dire aussi,
00:37:08 :dans ce cas-là, je vais rendre cette méthode disponible en disant generate prompt. Et ensuite, on pourrait dire, voilà, pour in range 10,tu vas me générer 10 prompts et tu vas dire prompt output. Après, on pourrait dire, voilà, t'envoie par mail le prompt output à quelqu'un.
00:37:33 :et on part aussi de comment on veut l'utiliser plutôt que de rentrer directement dans le code à pas trop savoir quelle méthode faire,à tout faire dans une fonction et puis après à décortiquer les choses, etc. De commencer par qu'est-ce qu'on veut faire. Donc là, justement,
00:37:46 :vous pouvez faire peut-être juste une liste. Voilà, je veux le créer en mémoire, permettre de sauvegarder, permettre de poster.Et ensuite, ce que vous allez faire avec ça au terme de, voilà, ça va être post. On va pouvoir dire par exemple social égale twitter
00:38:06 :ou on pourrait dire linkedin, etc. Je crois que je vais peut-être m'arrêter un petit peu avant une heure parce que je commence vraimentà avoir la voix qui part. Vous avez des questions là-dessus ou ça va? Vous m'entendez toujours? Ok.
00:38:29 :Ça t'a paru compliqué à faire tout ça? Non, bonne question. Je réfléchis. Non, justement, tu vois, ce qui m'a paru le plus compliqué,c'est justement l'organisation du code dans ces trucs-là. Au niveau du, alors je sais pas, tu vois, compliqué quoi, le côté, tout le script,
00:39:33 :autres trucs que j'ai fait, à savoir les exercices d'IA et le Algolia. C'est que, en gros, je m'assure avant d'aller trop loin d'avoir vraimentle cœur de ce que je veux faire qui fonctionne. Donc là, tu vois, c'est pour ça que la première chose que j'ai fait, c'est pas de faire des classes,
00:40:39 :je sais qu'elle est faisable. Mais voilà, je voulais savoir, est-ce que ces deux parties-là sont faisables? Donc j'ai juste commencé à faire ça.Donc au départ, tu vois, j'avais en gros ces quatre lignes de code-là, que j'ai reprises de justement toutes mes explorations que j'ai fait sur DuckString.
00:40:57 :au début à juste faire ce que je vous disais sur le prompt ici, c'est-à-dire, même plus qu'une heure, je pense, le défi au début, c'était d'avoir un bon formatlà-dessus. Donc comme je vous disais, je suis passé par du JSON. Donc c'était le premier défi et je ne suis pas allé plus loin, tu vois, tant que j'avais
00:42:52 :demande un truc sur Python, Django, c'est toujours sur les classes baseView, etc. Donc je pense que justement, il va falloir vraiment que je précisemes prompts pour peut-être même aller chercher dans une base de données plein de termes, un peu comme j'ai fait avec le question exercice AI, là,
00:43:11 :Python list, Python dictionnaire, Python machin, niveau avancé, intermédiaire, etc. Parce que souvent, en fait, si vous regardez, vous allez le voir aussisur les exercices, si vous mettez Python sans rien en niveau facile, pose-moi une question, ça va être tout le temps les trois mêmes questions.
00:43:43 :une question, et c'est ça qui est marrant, c'est que même entre les niveaux, c'est pour ça que j'ai mis débutant, intermédiaire, avancé, expert,bah juste de changer entre avancé, expert, il va vous faire une question vraiment plus difficile en expert qu'en avancé. Donc je pense que voilà, il faudra que
00:44:07 :ça a pris une journée, une journée complète, peut-être, j'ai fait ça sur deux ou trois jours peut-être, et en tout, ça a dû prendre, ouais, sept ou huit heures,donc peut-être, bon, peut-être un peu moins quand même. Mais vous voyez, c'était vraiment toujours, et c'est ce que je dis sur Algolia, c'était pareil, c'était,
00:44:27 :bon ok, est-ce que je peux facilement trouver, est-ce que la recherche marche bien, est-ce que je peux facilement trouver des trucs beaucoup plus efficacement que ce quej'ai actuellement. Ensuite, est-ce que niveau front-end, c'est facile à implémenter, est-ce que je peux filtrer tout ce que je filtrais avant. Juste avoir ces building
00:44:41 :blocks-là, et puis après, maintenant, je suis en train de changer le CSS pour que ce soit beau, vous voyez, donc c'est vraiment par étapes.Et Céline, non, je pars pas, enfin, disons que c'est ça, j'ai toujours en fait l'idée précise de quel est le MVP, comme tu dis, quel est vraiment le minimum
00:45:06 :de ce que j'ai besoin pour que je perde pas du temps, et ça, généralement, j'ai quand même une idée assez claire du truc, je réfléchis, mais parce que des fois,c'est vrai qu'on découvre, en fait, c'est marrant parce que les besoins qu'on a sont faciles à identifier, après, c'est plutôt estimer le temps que ça va nous
00:45:26 :prendre, par exemple, tu vois, justement, de me dire, bon, voilà, ça, c'était à peu près ce à quoi je m'attendais, de me dire, je veux trouver un moyende pouvoir demander à chat.gpt de me rendre un truc comme ça, sous cette forme-là, je me disais, bon, c'est probablement qu'il y en a pour une heure,
00:45:45 :peut-être qu'en 10 minutes, je vais trouver le prompt qui fait que, boum, direct, j'aurai les trucs sous les bonnes données, là, tu vois, je suis parti dans la mauvaisedirection en me disant, je vais essayer de récupérer un JSON, et puis, j'ai perdu du temps là-dessus, mais c'était à peu près ce à quoi je m'attendais.
00:45:57 :Tu vois, le truc, c'est qu'il y a plein de problèmes auxquels on n'a pas pensé qui arrivent, je ne sais pas, par exemple, sur Algolia, là, j'ai des trucs auxquels,vous voyez, je me dis que je n'ai peut-être pas pensé suffisamment, c'est que c'est au niveau des coûts, tout simplement, c'est qu'en termes de coûts, c'est 0,5,
00:46:17 :enfin, c'est, oui, 50 centimes pour 1000 requêtes, et du coup, moi, je vois ça, je me dis, ben, 1000 requêtes, ça va, quoi, j'imagine que, même si ça me coûtait50 centimes par jour, je ne pense pas qu'il y ait 1000 recherches sur le site tous les jours, et puis, même si ça me coûtait 50 centimes par jour, ça me va,
00:46:34 :mais en fait, je me rends compte que les requêtes, ce n'est pas une requête, c'est un peu comme les tokens de OpenAI, justement, c'est si vous mettez comment installerPython avec Django, ou comment installer Django avec Python, un truc comme ça, ben là, vous allez avoir peut-être 5 ou 6 requêtes différentes,
00:46:50 :parce que lui, il va découper le truc en 2-3 requêtes, donc, finalement, une question comme ça, ça peut être rapidement 10 ou 15 requêtes.Donc là, finalement, je suis en train de me dire, merde, là, je suis déjà à 10 000 requêtes, il y en a 10 000 gratuites, avec tous mes tests, je suis déjà à 10 000,
00:47:04 :là, je me dis, ouf, avec tout le monde qui cherche, peut-être que ça va, finalement, rapidement me coûter 50 ou 60 euros de plus juste pour ce truc-là,et si je commence à mettre la recherche partout, ben, ça peut vite, vite, vite chiffrer, donc, ça peut être des trucs comme ça, après.
00:47:17 :Mais, voilà, je ne pars pas sur des plans complets, ça, c'est un truc, c'est un peu comme les algorithmes, justement, où souvent, on a l'impression quec'est les grandes discussions que les gens ont, où justement, les gens, on a l'impression, quand on est junior, que les développeurs, ils ont tout de suite
00:47:53 :Même si tu n'écris pas, ou tu ne fais pas un cahier des charges, tu as dans ta tête ces trucs, ces points importants à faire, tu vas réfléchir un petit peu,tu vas faire des tests, il y a cette phase-là. Mais de là à dire que vraiment, le truc est pensé, que dès le début, je vais me dire, avant même, tu vois,
00:48:14 :Souvent, le mieux, comme je te dis, c'est que tu vas faire un peu ce que j'ai fait ici, mais ça peut être, et ça c'est très personnel, après,dans une boîte, souvent, quand c'est des gros projets, oui, tu vas avoir des cahiers des charges, tu vas avoir des gens dont le métier même, c'est juste de faire ça,
00:49:40 :Franchement, les diagrammes de Gant, moi j'en ai... Alors, ça dépend. Des fois, pour organiser, ça dépend aussi. Des mindmaps, ça peut être cool,mais les diagrammes de classe où tu vois vraiment... Ou avant même de créer ta classe, tu as créé tout un diagramme avec les relations, etc.
00:49:56 :Là encore, sur des gros, gros projets, vous pouvez trouver ça. Mais souvent, en fait, surtout quand vous êtes junior, vous allez arriver au pointoù vous, vous êtes chargé de faire une méthode dans la classe, dans la classe, dans le projet, dans le truc. Donc en fait, vous n'allez jamais être au niveau
00:51:20 :et où justement les gens ont l'impression que absolument, comme pas mal d'autres trucs, comme les algorithmes avec le tri-abule, que si vous savez pas faire un diagrammeou que dans le diagramme, vous n'avez pas mis la bonne connexion, etc., c'est foutu. Et franchement, non, c'est beaucoup plus problématique qu'une fois dans le code.
00:51:50 :ou des trucs comme ça, ça, c'est plus problématique que d'avoir un problème dans son diagramme, quoi.C'est demain, ouais, ok. Après, oui, ça, c'est effectivement des trucs, ça va dépendre de toutes les boîtes, à chaque fois, c'est différent.
00:52:14 :Là encore, je pense que dans tous les trucs, je vous dis ça aussi parce que toujours, dans un entretien, ce qui est important, c'est pas de dire, je sais pas,ou j'ai pas vu ou quoi, mais c'est d'expliquer. Donc si, justement, vous n'avez pas vu les diagrammes de Gant, bon, dites pas, c'est Thibault qui m'a dit
00:52:34 :que ça ne sert à rien parce que là, justement, ils vont se dire, bon, ok, il fait juste répéter ce qu'on lui a dit, mais dites, voilà, moi,justement, j'ai préféré réfléchir à la bonne façon de le dire parce qu'il faut pas que ça vous mette en situation de, comment dire, pas de faiblesse.
00:52:55 :Si vous dites, j'ai pas eu le temps de le voir, donc j'ai préféré focaliser là-dessus, c'est pas forcément la meilleure chose à faireparce que justement, ça veut dire que vous n'avez pas eu le temps de voir ce que vous voudriez voir, etc. Il faut plus le tourner en mode, justement,
00:53:08 :par exemple sur Django, j'aurais tendance à dire, oui, voilà, tu peux dire ça, effectivement, Céline, je sais les lire, après sur Django,vu que l'ORM, en fait, il est bien fait, qu'avec l'immigration, on peut facilement changer quelque chose, je préfère planifier de façon textuelleparce qu'en fait, après, directement, je me rends compte que, ben voilà, directement dans l'ORM, la façon dont on fait les choses avec les foreign keys,
00:53:33 :many to many, etc., on comprend assez bien ce qui se passe, et je préfère, en fait, modéliser directement mes trucs comme ça dans l'ORM,voilà, si vous le dites comme ça, et que après, ben voilà, la personne va vous dire, nous, dans notre compagnie, on travaille beaucoup avec les ORM de Gant,
00:53:47 :ben voilà, vous allez pouvoir dire, bon, ben voilà, je sais de quoi il s'agit, je les ai vus, dans mes projets, j'en ai pas senti le besoinparce que c'était des petits projets où j'avais 3, 4 classes, ça peut être effectivement, c'est là où je me pose la question,
00:54:00 :je pense que c'est le genre de truc qui est intéressant à voir, mais à voir pendant 3 jours, quoi, comme beaucoup d'autres choses,c'est, oui, c'est ça, voilà, c'est le genre de truc, faut savoir ce que c'est, si on vous montre un, de savoir, ok, ça c'est une relation,
00:54:28 :vous savez de quoi ça parle, vous expliquez que pour votre cas précis, ben, en fait, vous aviez 3 classes dans votre truc,donc vous n'avez pas trouvé d'intérêt à faire ça, etc., que vous avez compris l'intérêt, effectivement, dans un gros projet de le faire,
00:54:41 :que vous avez vu que, effectivement, c'est pas forcément le boulot du développeur junior de le faire et que c'est plutôt un chef de projet,voilà, vous expliquez tous ces trucs-là, donc c'est intéressant, effectivement, de s'intéresser à tout ça,mais si vous savez pas créer le diagramme, comme je vous dis, c'est pas un truc créditoire, ça fait 10 ans que je développe
00:54:58 :et j'ai jamais eu besoin de faire un diagramme de gant pour quoi que ce soit, donc voilà, et j'en ai jamais vu dans toutes les entreprisesoù j'ai travaillé, donc voilà, peut-être dans des grosses boîtes, c'est effectivement très utilisé, mais bon.
00:55:13 :Voilà, je crois que je vais m'arrêter là, je vais répondre à des questions si vous en avez, mais j'ai vraiment, j'ai plus d'eauet j'ai la voix qui commence à partir vraiment et je vais finir par plus tousser que parler, donc ça risque de pas être très intéressant.
00:55:28 :Des questions sur tout ça?Ah oui, puis moi j'ai une question pour vous, puisque en plus ça fait pas mal de temps que vous êtes tous là dans la communautéparce que je pense depuis longtemps, en fait je pense à, y'a pas mal de trucs sur le modèle, je réfléchis beaucoup à remettre une,
00:55:58 :parce qu'il y a beaucoup de choses qui se passent, on est en train de, on a passé en fait le truc Calliope, c'est tellement ridiculeces trucs là, mon dieu, faudrait, on pourra faire un mentorat juste pour rigoler là-dessus, ça n'a aucun sens, c'est absolument ridicule,c'est vraiment juste des trucs qui rapportent de l'argent à plein de, ouais c'est ridicule, franchement c'est vraiment, tu payes des gens pour faire le truc
00:56:19 :et puis t'as le tampon, enfin c'est vraiment, et là en fait je fais le, je vais retrouver du coup le Toza, donc là c'est pareil en fait,t'as donc, c'est Isogra qui fait les certifications Toza, donc en fait ça coûte 4000 balles plus 900 euros plus 150 euros par certification,
00:56:37 :tout ça parce qu'ils ont une plateforme qui vous fait passer un quiz, c'est presque ça, franchement j'exagère à peine,c'est un peu moins pire que ce que je pensais parce que les certifications quand même sont apparemment passées dans des conditions d'examen,c'est à dire qu'il faut qu'il y ait quelqu'un à côté de vous qui certifie, que vous trichiez pas, enfin un truc comme ça, bon enfin c'est,
00:56:56 :mais bon voilà, ça certifie pas grand chose, mais pourquoi je disais tout ça, ah oui, parce que du coup, oui il y a quand même,et avec tous ces trucs d'IA justement, il y a pas mal de fonctionnalités qui vont pouvoir être rajoutées sur le site et qui coûtent de l'argent quand même,
00:57:17 :même si c'est 3 dollars comme je vous disais, plus il y a de gens qui vont l'utiliser, plus ça va chiffrer, donc je pensais,voilà pour vous dire que je pensais rajouter, enfin remettre une formule qui était là avant, qui était une formule par abonnement, par mois,et je réfléchis beaucoup parce que la communauté du coup, on a eu à peu près 200 personnes qui ont rejoint du coup l'année dernière dans l'accompagnement,
00:57:39 :et vous le voyez forcément, tant qu'on fait pas un truc, tant qu'on sera pas dans un modèle Addoxtring où on vous dit il faut être là à telle heure,à 8h le matin jusqu'à 12h etc, il y a des gens qui vont, qui viennent, donc il n'y a pas énormément d'activités, je dis ça parce que voilà,
00:57:56 :du coup l'activité est pas folle, donc deux choses par rapport à ça, je pensais repasser sur Discord pour la communauté,parce que finalement la plus-value de RocketChat je trouve qu'elle est pas énorme, j'ai pas l'impression qu'il y ait beaucoup de gensqui l'utilisent directement pour trouver ça cool parce que ça permet de pas avoir un compte en plus etc, et d'avoir un truc directement intégré sur le site,
00:58:20 :mais finalement je me rends compte qu'il y a plus de désavantage que d'avantage, Discord évolue à fond, il y a vraiment beaucoup beaucoup de trucs cool sur Discord,maintenant de plus en plus, et aussi justement, et ça va avec mon deuxième point, c'est que j'ai envie d'ouvrir un peu plus justement la communauté,
00:58:42 :donc de garder quand même toujours un accès pour les gens de l'accompagnement qui soit un peu plus privé, donc par exemple sur le Discord que vous ayezdes parties où il y ait juste les gens de l'accompagnement pour que vous ne soyez pas avec tout le monde bien sûr, potentiellement justement,
00:58:57 :ça c'est la question que je me pose, sur l'abonnement si je mets une formule d'abonnement, voir est-ce que ces gens là auraient accès à cette formule d'accompagnement,je pense que ça peut être bénéfique parce que justement il y aura plus d'interactions, après si elle a trop de succès justement parce que quand on était en formule d'abonnement
00:59:15 :je crois que j'avais arrêté on était 120 donc ça avait duré quelques mois, et il y avait eu 120 personnes inscrites, donc voilà, donc là je sais pas avec tous les gensqui ont plus sur Doctrine, et si je fais ça sur un an, est-ce qu'à la fin il y aurait 600 personnes et par exemple si je donne accès aux gens en abonnement
00:59:31 :au Mentorat, est-ce qu'on se retrouverait avec 50 personnes dans les Mentorats ou quoi, je sais pas, donc je vais voir à quel point je limite,qu'est-ce que je donne accès, mais j'essaie de réfléchir à des façons qu'il y ait un peu plus de gens régulièrement qui rentrent dans ces formules
01:00:03 :Ah oui, je vais vous parler d'un dernier truc, ces questions là ici, je pensais en fait, pareil en fait, les ouvrir même carrément à tout, même les gensqui payent pas justement, carrément, parce que je me dis que les questions c'est toujours intéressant, et du coup je pensais toujours garder justement
01:00:27 :cette option de filtre, que vous puissiez avoir les questions juste pour les gens qui payent, et nous bien sûr on continue de vous répondre à vousen priorité, et d'avoir la possibilité que les gens posent des questions en général, que vous puissiez répondre vous aussi si ça vous chante,
01:00:53 :Et parce que aussi comme je vous dis, c'est probablement aussi des questions que les gens poseraient, et que vous pourriez avoir, donc justement là encoreen plus avec une bonne recherche, ça peut être des choses que des gens auraient posées, et des questions que vous vous poseriez, pour lesquelles il y aurait déjà la réponse.
01:01:09 :Ouais, c'est ça, c'est un peu aussi ce truc, je sais pas à quel point, parce que c'est vrai qu'il y a beaucoup de communautés avec un peu des systèmes de forum,open classroom, ont un forum, il y a Z de savoir, je sais plus, enfin il y a plein de communautés comme ça qui ont des forums, et assez surprenamment,
01:01:30 :il y a quand même des gens qui postent encore, donc je me disais, c'est un peu cette envie aussi effectivement, qu'il y ait un peu plus de trucs disponiblescomme ça pour échanger en général, sans que ce soit forcément les trucs payants, avec en gardant toujours quand même, comme je vous dis, les mentorats et tous ces trucs là,
01:01:46 :pour les gens qui payent, mais pareil sur Discord justement, c'est aussi un truc, ça commence à faire un petit moment, ça fait 4 ans que le Discord existe,et je l'ai complètement laissé à l'abandon depuis peut-être un an, et j'essaie de le réutiliser un petit peu, et justement avant on avait plein de trucs gratuits,
01:02:02 :qu'il n'y a plus maintenant, parce que justement je me suis focalisé à fond sur la communauté payante, mais c'est des trucs qui justement pourraient vous bénéficier aussi,parce que tous les vendredis par exemple, on faisait justement comme des mentorats ici, mais voilà, moi j'aimerais garder justement ces mentorats qui sont possibles là,
01:02:18 :parce que justement il y a des gens qui payent, donc ça permet de payer des gens comme PA, mais voilà, ça permet aussi justement d'avoir des gens qui bénévolement,avant là, le faisaient, et pour tout le monde, donc un accès gratuit à tout le monde, dont vous pourriez bénéficier aussi. Donc voilà, j'essaie de rassembler un petit peu tout ça,
01:02:36 :donc voilà, il y aura probablement des choses qui vont un petit peu changer là-dessus, et pour vous ça change rien, vous avez toujours accès à tout ça,et j'essaie comme je vous dis de vraiment garder toujours ces endroits où vous avez des réponses rapides, où il n'y a pas trop de monde, où justement j'essaie,
01:02:56 :là c'est un peu le problème inverse, c'est que l'année dernière on limitait les places et tout pour qu'il n'y ait pas trop de monde, et justement ça a super bien marchépendant les 6 premiers mois, parce que justement il y avait une bonne dynamique, il y avait pas mal de gens qui rentraient, mais pas trop non plus.
01:03:15 :Là forcément aussi avec l'arrêt du CPF et tout, peut-être que quand on va les retrouver, il y aura plus de cette dynamique, je ne sais pas, mais je ne veux pas tout construiresur le CPF, donc c'est aussi pour ça que je me dis qu'une formule d'abonnement qui donne accès à ça, ça pourrait être pas mal.
01:03:30 :Et dernier petit point, je vais vous mettre pas mal de liens, parce que c'est un truc qui revient quand même souvent, l'article des idées de projet,des idées de site web pour un portfolio de développeur, donc je crois que j'en avais déjà parlé récemment, j'ai fait pas mal d'annonces aussi,
01:03:43 :n'hésitez pas à les lire, et pour compléter ça je vais les rajouter dans les ressources aussi, j'ai rajouté de plus en plus de choses dans les ressources,récemment les filtres ne marchent plus là, mais justement je vais rajouter la recherche d'agoria, donc là encore ce sera beaucoup plus simple de chercher
01:04:04 :Souvent le problème aussi que les gens ont, c'est qu'ils savent pas comment attaquer, notamment Gab tu me parlais de design, tu voulais quand même essayerpeut-être de faire des petits trucs avec Bootstrap, il y a plein de sites cool, j'en ai trouvé plein, comme un con je me suis inscrit hier,
01:04:21 :j'ai payé 30$ pour un autre site en me disant ah il est cool et tout, ah cool, ah mon dieu ok d'accord, je viens de comprendre, ok super,bon j'ai pas payé pour rien, parce que en fait ce site là je suis tombé dessus hier, et c'est super cool, il y a justement plein de trucs,
01:04:39 :UI element, tiens une checkbox, voilà comment ils font les checkbox sur le onboarding de tel truc etc, donc c'est super cool,et en fait j'ai retrouvé dans mon notion, j'avais au moins 5 ou 6 sites comme ça, la plupart sont payants, il y en a quand même qui sont gratuits,
01:04:54 :genre lui il est gratuit je crois, et c'est très cool parce que c'est vraiment le gros problème en fait, franchement quand vous créez un site,le plus dur, genre sur Dockstring le truc sur lequel je passe le plus de temps c'est pas de coder, c'est trouver le design, trouver comment faire les choses,
01:05:10 :est-ce que je mets une checkbox là, c'est vraiment ça qui est chiant, et du coup, là vous voyez, ah oui, j'ai retrouvé ce truc là aussi,je me disais ah oui, j'avais noté ce truc là, c'est pratique, Sass pricing calculator, quand vous faites un Sass, si je mets un truc à 20 euros,
01:05:24 :que j'ai 50 personnes, j'ai un deuxième plan etc, c'est les questions business, et donc là voilà, et comme un con, c'est marrant,vous voyez, parce que j'ai payé pour ce site là qui me semblait super cool, et j'en ai retrouvé plein d'autres qui sont super cool,donc je vais vous les mettre aussi, je les mettrai dans la note, les notes de cette session, et je les mettrai dans les ressources aussi,
01:05:48 :parce que voilà, c'est super cool quand vous faites un, voilà je sais pas, un Gab là par exemple, un blog, un article de blog, à quoi ça ressemble,sur Asana, voilà, ils les font comme ça, il y a un petit bye machin avec la date, il y a un petit truc pour les commentaires, et puis ça ressemble à ça,
01:06:04 :sur ClickUp, ils ont une grande bannière, ils ont 3 weeks ago, ils ont un breadcrumb ici, donc voilà, c'est super cool pour vous donner plein d'idées,et pourquoi j'ai eu un écart de satisfaction là, parce que je me suis dit ah mais c'est merdique ce truc, parce qu'en fait c'est toujours en format app iPhone,
01:06:23 :et je me disais moi j'aimerais bien avoir le format web quoi, et là je viens de découvrir qu'il y a un gros bouton web ici, ça c'est ouf à quel point aussi des fois,les trucs, plus vous les mettez gros quelque part, plus ils sont ignorés, si vous mettez un gros truc, il faut cliquer ici, les gens vont regarder partout sauf le,
01:06:42 :il faut cliquer ici, des fois, ça c'est assez marrant, mais du coup voilà, je viens de découvrir qu'il y a heureusement un truc web,qui permet de voir les choses de façon web, ok donc j'ai pas payé pour rien. Voilà, je vais m'arrêter là, mais je vais vous mettre tout ça,
Aucune occurrence trouvée pour « ».
00:01:04
Introduction
00:03:14
Le programme du mentorat
00:04:06
Présentation des nouveautés de Docstring
00:04:14
Nouvelle recherche avec Algolia
00:07:37
Les nouveaux outils d'exercices alimentés par l'IA
00:08:16
Discussion sur Whisper de OpenAI pour le sous-titrage
00:11:52
Discussion sur les API + présentation des outils IA sur Docstring
00:16:56
Présentation d'un script pour créer des tweets automatiquement avec ChatGPT et Snappify