 Bonsoir, Montréal-Pitain. Good evening, Montreal-Pitain. Pitaneux, Pitaneux. Ça me fait plaisir d'être avec vous ce soir. I'm live from Utah tonight, but I'm with you in heart because I managed to find, by looking really hard, a blanche de chamblis. And so I'm gonna open it now and transport myself to Montreal with this delicious beverage. Oh, I'm excited about this. So this is our first meeting of the year, our first meeting of the year, Montréal-Pitain. I hope you've taken resolutions. With your resolutions, we're going to go to Pitain. And I'm pouring it now as you remember. I hope. Blanche de chamblis is very, very rich. Aroma of coriander. Oh my God, I feel... I feel transported. Mm. There's a very long way to go, who appreciates Pitain. Notre programme ce soir. Je vais vous en parler dans un instant, mais avant de vous parler de ça, oh, je fais un petit truc ici. Boom, avant de vous parler de ça. Faut que je vous invite à vous joindre à nous sur Slack. So please join us on Slack. If you haven't received the Slack invite yet, it is mtlpi.org slash fr. And I'm told slash en works too. Slash Slack in and we are in the channel meeting. Donc joignez-vous à nous sur Slack. mtlpi.org slash fr slash Slack in. On est dans le canal meeting. Et on a un code de conduit à Montréal-Pitain. We have a code of conduct at Montreal-Pitain. It's very simple. It says that you should be excellent between one another. Le code de conduit dit qu'on devrait être excellentes les uns envers les autres. Si, vous sentez que la rencontre n'est pas excellente, que y a peut-être un manque de respect, quelque chose qui sort définitivement du code de conduit, dites-nous là. Sois à moi. Yannick ou à Duke ou à Melanie Guerin sur Slack. Trouvez-nous, on va vous régler ça le plus tôt possible. So if something is not excellent in this meeting tonight, find me, Yannick or Duke or Melanie Guerin on Slack and we will do our best to resolve that problem quickly. Okay, so this is our program for tonight. It's gonna be pretty exciting. We're gonna have three captivating presentations. Francis Vachon is gonna talk about the module of the month. And then Edith Vio is gonna talk about learning Python and then Huyen Tran. I hope I said this right. I'm gonna practice a couple more times before we get to her presentation. He's gonna talk about learning data science. On va avoir trois présentations. Donc Francis Vachon, le module du mois inspect et Edith Vio apprend au pied-don. Et Huyen Tran qui va nous parler d'apprendre les sciences de données. Donc pourquoi on parle d'apprentissage comme ça? Parce que c'était notre résolution pour 2021. Est-ce que vous avez pris des résolutions pour 2021? Dites-nous là sur Slack. Ça nous intéresse. Mmh, complètement délicieux. Je vais pas dire que c'est délicieux à chaque gorger, mais je vais le dire encore pour trois ou quatre gorgers. Quoi d'autre? On a quelques autres choses. On a déjà la date de notre prochaine rencontre qui va être en février sur le thème de l'amour, bien sûr. Le 15 février, le lendemain de la Saint-Valentin. Et on a déjà le lien sur Meetup, si vous voulez vous inscrire. C'est dans la description du canal YouTube. Et laissez-moi revenir en arrière un petit peu. J'ai oublié une chose très importante, c'est qu'après ces présentations captivantes de ce soir, on va avoir un 5 à 7 virtuel. Donc j'espère qu'il va me rester de la bière pour ça. Sinon, je vais devoir me convertir de l'autre bravage. We're going to have a virtual happy hour after all these interesting presentations. We're going to go on Jitsy, where we're going to see everybody's faces and hopefully you can bring your favorite snack or beverage or whatever. And we're going to have a lot of fun talking about what our resolutions for the new year are. Okay, let's go back to what I was saying. MP 983, Minimal Night, du minimal, notre rencontre de février, le lien meetup est dans la description, dans la description de ce vidéo sur YouTube que vous êtes probablement en train de regarder. Et on vous invite, si c'est des choses qui vous intéressent, à nous suivre sur Facebook et sur LinkedIn. Et puis si ça ne vous intéresse pas, de nous suivre sur Facebook et sur LinkedIn, est-ce que vous aimez mieux pas avoir trop de ressources sociaux dans votre vie? C'est correct. On a un flux RSS sur notre site web. Vous pouvez nous suivre là aussi. Et on a un calendrier, un nouveau calendrier de nos activités 2021 que je vous invite à visiter, mtlpie.fr slash calendrier 2021. Et il y a certaines activités qui sont peut-être sujets à changement possible. Ça vous donne une idée de qu'est-ce qu'on a au programme pour vous cette année. Et si ça vous intéresse de vous impliquer, eh bien, faites-moi le savoir. Et puis on va s'organiser pour vous laisser forger ces événements à la savoir qui vous plaît le plus. So we also have a calendar for our events for 2021. The address is here. You can translate that and it's gonna work just as well in English. It's gonna be mtlpie.fr slash en slash calendar 2021. And you're gonna see what we have in the programme for you this year, lots of events. Some are subject to possibly change because they're far in the future and sometimes we get more ambitious than how we feel right now. And if you wanna help, well, let us know because we could always use more help. And I'd like to thank our partner, FGNR. I don't know if we translate that, FGNR. And Compagnie québécoise de consultation principalement en développement web qui nous aide en hébergeant notre 5 à 7 virtuel ce soir. On les aime beaucoup pour ça. Et bien sûr, je pense que c'est assez d'annonce et puis ça va être le temps de passer la parole à Francis Vachon. Francis Vachon, comme moi, est un grand peur. Il aime beaucoup l'escalade. Un ingénieur physique de formation qui a fait des top pipeline, des pipelines de données. Je ne sais pas comment traduire ça. Pour médecins sans frontières et qui est maintenant un freelancer dans le déploiement cloud. Frank Vachon, also a rock climber, is a physical engineer. Hmm, I hope it's the right translation. By training, he did some data pipelines for doctors without borders. And now he is a freelancer for cloud deployment. Frank, I invite you to share your screen if you do have something to share. But if not, I'm going to pass you the mic right now. Welcome. Salut tout le monde, merci Yannick. Oui, donc moi c'est Frank. Je vais vous faire la présentation du module du mois qui est inspecte. Et j'ai une petite présentation. En fait, c'est plus... Pardon, oui, j'ai quelque chose à présenter. Ah, show screen. Ah, excusez, un petit hiccup, j'avais... Ah, OK. Voilà. Oui, donc le module inspecte. Je vais vous faire un survol rapide du module. Vous expliquez un peu c'est pas les fonctionnalités qui sont offertes. Module dont j'ai fait la traduction au cours des dernières semaines en français. Ce qui m'a appris à le connaître en fait parce qu'avant je ne connaissais pas ce module. Ensuite, on va parler de quelques codes d'utilisation que j'ai imaginé par rapport à ça parce que c'est assez niche quand même comme truc que vous allez voir. Et puis à la fin, juste pour avoir quelque chose de concret à se mettre sur là-dedans, on va avoir un petit exemple de code. C'est vraiment très de base, parce qu'on fait quand même une présentation assez rapide ici. Donc, pour commencer, oui, le module inspecte. Si j'avais le résumé très rapidement, ça vous permet d'avoir de la méta-information sur votre code et les objets dans votre code. Vous allez voir ce que je veux dire un peu plus précisément avec les fonctionnalités. Donc, ici, j'ai fait une sorte de petit schéma résumé. On peut découper le module en cinq groupes de fonctionnalités principales. Le premier groupe de fonctionnalités ça concerne les types et les membres des objets dans votre code. Donc, ce que je veux dire par là, c'est ça vous permet d'accéder et de manipuler des choses comme les docks string, les non-qualifiés complets pour savoir dans quel fichier et module se trouve une méthode ou un objet quelconque. Ça vous permet d'accéder directement au code source en Python qui définit votre objet puis jouer avec les annotations, par exemple. Donc, ça, c'est un premier groupe de fonctionnalités. Ensuite, deuxième groupe qu'on a, ça permet d'interéger avec tout ce qui est désapplable. Donc, tout ce qui définit un double underscore call en Python. Et par exemple, ça nous permet d'accéder aux signatures d'une méthode ou d'une fonction ainsi que aux paramètres. Par exemple, savoir s'il y a des paramètres positionnels nommés si la plabe accepte ou pas les paramètres arbitraires. Et vous pouvez avec ça aussi faire des copies d'un objet et le modifier, par exemple, permettre un objet que vous copiez d'accepter des paramètres arbitraires alors que l'objet initial ne le permet pas, par exemple. Une troisième catégorie générale de fonctionnalités qui est offerte par le module c'est tout ce qui a accès à la hiérarchie des objets. Vous pouvez, par exemple, retrouver la hiérarchie d'héritance d'un objet quelconque dans le code. La quatrième classe de fonctionnalités qui, à mon avis, est peut-être celle que le plus d'intérêt de manière générale je dirais, ça vous permet d'accéder à la pile de l'interprétaire. Par exemple, moi je suis une méthode ou une fonction et je me fais appeler. Je peux obtenir toute la pile du cadre qui a mené à cet appel-là ou si une exception est levée dans mon code je peux retracer toute la pile qui a mené à cette exception-là de manière évidente pour tout ce qui est débagage, ça peut être extrêmement utile. Et, finalement, on peut interagir avec tout ce qui est générateur et coroutine pour obtenir des détails sur le rétocourant. Donc, par exemple, un générateur, on peut savoir est-ce qu'il a commencé à intérer ou non, ou est-ce que son intération est terminée. Donc, ok, c'est intéressant, mais de manière concrète, qu'est-ce qu'on pourrait imaginer comme code d'utilisation de ce module-là? En y réfléchissant, j'ai trouvé un projet sur lequel j'ai travaillé auparavant pour reconnaître ce module. Juste pour faire une histoire courte, c'était une BBL technologique qui était constituée de 5 ou 6 composantes électroniques et mécaniques qui évoluaient dans des trades séparés en Python. Et puis, pour faire le suivi, le débagage de ça, on utilisait zoolog, zoologing très basique du module de Python. Par contre, le problème avec ça, c'est que parfois, il y avait des bugs inattendus qui pouvaient survenir, et puis si on n'avait pas logué des informations spécifiques nous permettant de déboguer, des fois, c'était compliqué, fallait modifier le log qu'on faisait, puis après ça, redémarrer la machine et espérer qu'elle plante de la même façon, et des fois, ça se produit pas, parce que les appareils mécaniques, des fois, les bugs, c'est un petit peu aléatoire. Donc, si on avait eu le module inspect, on aurait pu avoir beaucoup plus d'informations sur la pile que mener sur les autres tweets qui ont appelé une fonction qui a causé un bug, par exemple. Un autre code d'utilisation, je ne sais pas si vous connaissez Django, qui est un framework web qui permet de construire des applications en Python Web. Si vous construisez une application, vous la lancez, vous faites une requête dans le browser à votre serveur, et il y a eu une erreur. Django va vous retourner une longue liste de tous les cadres qui ont mené à l'erreur, et ça vous permet de déboguer pour savoir dans la structure interne de Django, qu'est-ce qui a mené à l'erreur? Est-ce que c'est votre template? Par exemple, que le Wendeming, c'est pas bien fait, ou est-ce que c'est une requête à votre base de données? Donc derrière, Django utilise le module inspect pour vous donner toute cette information-là. Pour la documentation aussi, pour faire la traduction, par exemple, des documents, et la documentation en Python, on utilise Sphinx. Sphinx pour extraire les dog strings, et les détails de documentation de votre code, il utilise inspect derrière pour aller vers les informations-là. Et une dernière utilisation qui pourrait être intéressante, c'est par exemple si vous devez écrire un adaptateur pour utiliser du code externe. Et puis, si par exemple, le code externe permet pas de fournir des paramètres nommés ou positionnels arbitraires, vous pourriez vous créer un adaptateur qui ajoute cette fonctionnalité-là et qui implémente les fonctions sans avoir à toucher au code externe sur lequel vous avez peut-être pas un adaptateur. Et voilà, donc finalement, juste pour avoir un petit aperçu de code concret sur à quoi ça ressemble le module inspect. Très simplement ici, j'ai importé le module. Je me crée c'est une classe de matplotlib, une non-uniforme-image, j'ai vraiment pris une classe complètement aléatoire dans le code. Donc j'ai fourni cette définition de classe-là, à une méthode du module inspect MRO, donc MRO pour le méthode resolution-order et ensuite, j'imprime le résultat de ça. Le résultat il est ici, et si on grossit juste pour être sûr que tout le monde voit bien. Donc, ça me donne la hiérarchie d'héritage de cette classe-là de non-uniforme-image. Bon, à la racine on voit object, parce que bien sûr on peut être un tout-héritre de object. Mais après, ce qui est intéressant dans ce cas-ci, c'est que je peux voir, c'est quoi les classes de matplotlib qui se retrouvent dans la hiérarchie et ça me permet d'aller voir rapidement dans le documentation par exemple, quels arguments nommés arbitraires je peux passer à ma non-uniforme-image pour qu'une classe parente, artiste puisse modifier son comportement de la manière que je désire pour obtenir un résultat spécifique. Donc voilà, j'espère que ça vous éclaire un peu sur qu'est-ce que le module inspect et pourquoi vous pourriez l'utiliser. Je pense que c'est un outil niche, mais qui est quand même intéressant à avoir dans sa boîte aussi comme développeur en Python. Merci beaucoup Francis, excellent presentation et puis merci d'avoir traduit la documentation de inspect en français et on a le temps pour une question, je vais laisser Duke modeller la question, trouver sur une question sur YouTube, sur Slack, everyone you can ask your questions on the YouTube comments or on Slack and don't forget to tell us in the Slack comments, what is your new year resolution? Merci Yannick, merci Frank pour traduit et pour venir partager ton expérience avec nous pour l'instant, je suis en train de regarder les questions, je ne vois pas trop de questions, mais moi j'ai peut-être une question ou peut-être parce que Yannick t'as présenté comme un physicien Oui, bien j'ai mis en physique initialement on était un peu une espèce d'hybride entre les ingénieurs et puis les physiciens un peu plus habistrés, l'université donc c'est le bac que j'ai fait puis après je suis retourné faire une maîtrise en informatique parce que j'avais envie de me recorder un peu plus en informatique et dans un monde déal, j'aimerais ça ultimement travailler, surtout avec des entreprises technologiques, donc j'aime bien écrire du code et faire l'informatique mais c'est sûr que le côté technologique plus science reste un intérêt le fort pour moi Ok, bien c'est ça juste pour que un peu parce que notre événement c'est plus focuser sur l'apprentissage t'as des conseils à donner justement les gens peut-être comme toi qui ont fini comme un bac en physique ou quelque chose comme ça mais qui aimeraient apprendre d'un autre langage de programmation ou quelque chose comme ça Ben moi en fait, j'ai fait une maîtrise je sais pas introspectivement si c'était vraiment nécessaire je pense que si je pouvais retourner quatre ans en arrière peut-être que je ferais juste utiliser les ressources internet, il y a tellement de ressources intéressantes internet pour apprendre du code tu vas sur Youtube, il y a vraiment des créateurs de contenus qui sont incroyables qui permettent d'apprendre un nombre spécifique, super concrète très appliqué et il y a la sonorette aussi il y a des créateurs de contenus qui sont plus axés pour les débutants mais il y en a aussi qui font des choses quand même relativement avancées je suis un gros fan de ça et même maintenant après les études je suis encore des chaînes et je vais voir ce qu'ils ont à démontrer régulièrement quand même j'aime ça quand tu parles de ça parce que justement on a notre chaîne Youtube j'étais pas prêt j'ai pas de manière comme c'est tout ok en tout cas j'ai pas d'autres questions d'ici sur Youtube je pense qu'on est bon pour passer en tout cas merci encore une fois Francis et on espère que te revoir pour d'autres présentations certainement merci beaucoup messieurs alors notre prochaine présentatrice Edith Vio une des organisatrices de Montréal-Piton une passionnée des mathématiques et artistes digitales une des contributrices de Mutec Montréal il y a quelque chose d'autre que je voulais mentionner que j'oublie ça devrait pas être important parce que j'ai mentionné le plus important elle va nous parler d'apprendre Python donc apprendre la programmation en utilisant Python ou peut-être d'apprendre Python on va voir on va nous le dire de l'organisateur de Montréal-Piton elle est passionnée des mathématiques et elle est aussi un artiste digital et une des contributrices de Mutec Montréal et elle va parler d'apprendre Python bonsoir Edith bonsoir, est-ce qu'on m'entend bien parce qu'on a peu le temps de tester le son ah c'est vrai ça mais moi je t'en entends très bien et puis si quelqu'un ne t'entend pas Edith, commentez-vous sur Youtube ou Slack adjust your volumes Edith, je te passe la parole Excellent bonsoir tout le monde bienvenue à Perçu de la programmation en Python donc c'est pas exactement éditoriel c'est plus comme une démonstration de ce qui est possible de faire avec Python à un niveau très pratique ou pratique je m'adresse aux personnes qui désirent commencer ou recommencer à programmer et ensemble on va faire un programme de devinette étape par étape qui va servir d'introduction à l'atelier qui a relu le samedi 13 mars 2021 donc je vais parler plus amplement de l'entelier après ma présentation resté avec nous donc allons-y si on peut résumer sur mon écran ça serait parfait merci ok donc, à Perçu de la programmation en Python à quoi ça ressemble? on va créer un petit jeu de devinette avec Python ensemble et la première étape ce sera de dire bien entendu, bonjour tout le monde et on peut utiliser des emojis chose que j'ai faite donc je vais vous présenter les outils qu'on va utiliser mais vous voyez que 3 fenêtres sur mon écran en ce moment la première c'est mes diapositives la deuxième c'est la fenêtre de terminal la fenêtre de le shell, le bash il peut y avoir plusieurs noms mais on va l'appeler le terminal et un éditeur de texte qui va me servir à donner des instructions au terminal comme servir à écrire des petits programmes qui vont être interprétés par Python 3 dans le terminal c'est important s'il y a des gens qui sont intermédiaires qui connaissent déjà bien Python qui voient que je fais des erreurs parce que je suis un peu stressé merci de le mentionner dans le Slack ou dans les commentaires pour pas que j'induce les gens en erreur merci avec mon instruction python3demo.py py je vais venir exécuter le fichier ici qui s'appelle demo.py et ça dit bonjour tout le monde et ça me fait la petite main vous remarquez que dans mon fichier il y a une instruction print qui apparaît pas à l'écran en fait print c'est une fonction qui permet d'afficher du texte à l'écran ce n'est pas un imprimante et non, ce n'est pas un imprimante ça ne permet pas d'imprimer des choses sur papier maintenant ça va nous permettre d'interagir de construire le programme d'afficher du texte on est content ce qu'on aimerait pouvoir faire aussi c'est recevoir dans l'information on aimerait pouvoir poser des devinettes et recevoir la réponse aux devinettes pour recevoir de l'information de la part de l'utilisateur donc la personne qui joue au jeu on utilise la fonction input on va faire un petit test ici je pourrais vous allez m'entendre tapé ça va peut-être être désagréable je suis désolé quel est ton nom je sauvegarde le fichier sinon, l'information ne se rend pas et là on voit que on voit bonjour tout le monde la petite main qui dit bonjour quel est ton nom j'écris mon nom, edit je passe sur enter, le programme se termine donc ça c'est bien beau noté qu'on peut recevoir du texte des valeurs bouliennes comme true ou false l'information est reçue sous chaîne de caractère ça c'est un peu un détail pour le moment on ne va pas s'attarder à ça ça va être plus important plus tard donc maintenant c'est bien mais j'aimerais aussi pouvoir garder l'information en mémoire pour pouvoir la réutiliser par exemple ici j'aimerais pouvoir dire print bonjour le nom de la personne pour ce faire j'ai besoin d'une variable je vais dire la place ici je vais l'appeler réponse quel est ton nom réponse bonjour plus réponse on va écrire une majuscule et le plus ici ça peut être confusant parce que c'est pas le plus de mathématiques c'est le plus de concatenation ça va venir prendre le texte qui est ici qui est une réponse, qui est un stream qui est une chaîne de caractère, qui est du texte et ça va venir le concatenier avec le bonjour donc ça va venir juste les coller ensemble donc maintenant je vais dans mon programme, je l'exécute bonjour tout le monde, quel est ton nom edit j'ai pas sur regardé, c'est l'avant que j'ai fait maintenant j'ai sur regardé vous avez revu, quel est ton nom edit, bonjour edit, excellent donc maintenant je vais pouvoir interagir avec la personne qui joue au jeu notez que quand je dis réponse égal input quel est ton nom on va prendre un exemple plus simple on va dire si je suppose que j'avais écrit x est égal à 5 c'est pas un égal matématique c'est un égal destination ça veut dire que je vais je vais prendre la variable x qui est comme une boîte qui s'appellerait x je vais mettre la valeur 5 à l'intérieur de la boîte je vais assigner la valeur 5 à la variable x ok je regarde mes notes excellent maintenant on est prêt à commencer le jeu de devinette poser une question à obtenir une réponse ça on vient plus ou moins de le faire c'est correct on peut tout de suite aller à quelque chose d'un peu plus complex on peut confirmer la réponse avec la condition if donc on va commencer tout de suite à écrire un petit jeu de devinette on va oublier ça et on va dire print ok donc la devinette que j'ai c'est qu'est ce qu'il peut faire le tour du monde tout en restant dans son coin bon là c'est un peu désagréable parce que j'ai pas mon non j'ai pas ce que je veux ici bon on va y aller avec ça pour le moment désolé je peux ça normalement je transpose le décomposer en plusieurs lignes mais pour se garder la vie plus simple ce soir on va le laisser sur une seule ligne mais c'est pas une bonne pratique donc première réponse un petit show deuxième réponse un timer et troisième réponse oui j'ai commencé à zéro pour ceux qui suivent à la maison un canard et maintenant je vais vouloir avoir demander à l'utilisateur d'entrer sa réponse à la personne qui joue et maintenant je vais utiliser if donc if on va prendre une condition on va vérifier si la condition est remplie il va exécuter du code en fonction de cette condition donc si la réponse était 1 qui est la bonne réponse je souhaite incrimer bravo et j'ai mis un indone de trop l'identation en gros le code qui est ici qui est identé de 4 espaces va s'exécuter si et seulement si cette condition si est remplie sinon on pourrait laisser comme ça si on serait content on peut aussi lui dire sinon imprime meilleure chance la prochaine fois la prochaine fois qu'est-ce que ça donne j'ai sauvegardé bonjour tout le monde qu'est-ce qui peut faire le tour du monde dans son coin on sait que la bonne réponse c'est un time on va les assister dans l'ordre pour voir ce qu'on a bien compris un petit eau devrait imprimer meilleure chance la prochaine fois à moins que j'ai fait une erreur de code c'est ce qui se passe le canard meilleure chance la prochaine fois aussi et le time qui est la bonne réponse devrait imprimer bravo et c'est ce qu'on a donc si je vais trop vite si vous avez des questions je vais les prendre à la fin et puis comme je disais si il y a des personnes dans l'audience qui ont l'habitude depuis tant vous pouvez répondre aux questions au fur et à mesure dans le Slack c'est correct aussi maintenant on voudrait qu'ils jouent puissent tenter sa chance plusieurs fois on va ajouter une boucle wild qu'est-ce que ça fait une boucle wild une boucle wild va exécuter du code, le faire quelque chose qui est ici tant que la condition qu'on lui donne en entrée est vraie donc on va venir l'ajouter dans notre code dans notre jeu on va dire qu'on a 3 essais 1 essais est égal à 3 et wild ou en français tant que les instructions sont pas transites en français tant que s'il est plus grand que 0 on va venir exécuter ces instructions aussi qu'on a codé précédemment et puis là il me manque je vais décrémenter le nombre d'essais je n'ai pas eu la bonne réponse et est-ce que quelqu'un voit l'erreur qui reste à changer on va faire le test moi je l'ai fait moi-même l'erreur tantôt en pratiquant donc ce qu'on voudrait en fait c'est que quand on est ici on repose la question et on reface le loop de la boucle wild mais il faut changer une dernière chose comme si supposant je change un canard ça a pris me 3 fois meilleure chance la prochaine fois et je suis pas plus avancé donc ce que je veux ce qu'il va me falloir faire c'est prendre réponse input ici et on va venir le placer à l'intérieur de la boucle wild et maintenant on va faire le test on va dire bon qu'est ce qu'il va falloir tout le monde dans son coin un petit chou un canard on va répondre un canard et là ça me repose pas la question mais ça me demande d'entrer de l'information avant un petit chou et finalement on va dire que je vais répondre un terme bravo et ça me permet d'introduire une nouvelle instruction vous voyez quand il répond bravo ensuite il continue à me demander une réponse alors que j'ai fini on va juste mettre un petit break ici ça va sortir de là-bas ça en fait beaucoup en 15 minutes si vous avez suivi tout ça vous êtes très bons si vous avez pas tout suivi c'est pas grave on va prendre le temps de répondre aux questions dans le chat par la suite donc combien les deux c'est ce qu'on vient de faire ajouter plus d'une question je vais introduire un concept qui est plus central en Python puis un concept qui est central en programmation en général le concept qui est central en Python c'est la liste donc j'aimerais ça avoir posé plus qu'une question et puis j'aimerais ça avoir une façon aisée de passer d'une question à l'autre je vais utiliser une liste pour se faire et ensuite je vais créer une fonction qui va utiliser les éléments qui sont dans ces listes pour m'inviter d'avoir à copier coller du code parce qu'une chose qu'on aime pas en programmation c'est copier coller du code si on peut faire des fonctions on le fait donc on va on conseille pas faire les listes donc ici je vais garder les questions que j'ai en tête et je vais ajouter une nouvelle question donc question donc la liste apprend en Python une liste va s'écrire avec les parenthèses carré il y aura un certain nombre d'éléments à l'intérieur on peut aussi avoir une liste de listes chose qui va nous être utile pour les réponses des questions donc commençons par la question on a déjà la question ici on va l'utiliser je vais pas la régler non j'avais oublié que ça faisait ça désolé je vais la récrire ça va être plus simple donc on disait le tour du monde tout en restant dans son coin c'est le time bien entendu et la deuxième question sera combien de temps peut vivre une souris une souris donc la liste appelle question le premier item à l'index 0 et qu'est-ce qui peut faire le tour du monde tout en restant dans son coin et le deuxième item à l'index 1 et combien de temps peut vivre une souris et j'aimerais savoir les réponses à ces questions je veux une liste j'ai dit parenthèses carrés donc la première c'est un petit show ensuite la deuxième c'est un timbre comme tout à l'heure et la troisième c'est un canard coin coin et maintenant je vais vouloir ajouter les réponses possible c'est une question on va dire que c'est ça dépend ensuite trois mois et tant qu'il y a du fromage ok et maintenant on veut aussi avoir une liste qui contient les bonnes réponses possible donc 0 donc la réponse à la première question c'est un timbre qui a l'index 1 et la réponse à la deuxième question c'est ça dépend des chats qui a l'index 0 ok, donc ça ça l'a introduit mes listes donc c'est utile parce que je pourrais ajouter un nombre relativement grand de questions mais à chaque fois j'ai pas besoin de dire question 1, question 2, question 3 j'ai pas besoin de déclarer des nouvelles variables je déclare ma variable une seule fois maintenant création d'une fonction l'exemple que j'ai choisi vous devriez comprendre à quoi la fonction sert ça se peut que j'aille un peu trop vite pour tout bien comprendre mais en gros, mon idée c'est que la façon que le code est fait en ce moment si je voulais utiliser cette partie du code pour chacune des questions je devrais le copier coller et faire print questions, réponses etc mais si je prends cette partie du code si, que je la place dans une fonction que j'appelle poser de vignette je vais pouvoir utiliser juste la question que je veux en ce moment juste la réponse que je veux et une seule bonne réponse et je vais être contente ça va m'éviter d'avoir à copier coller du code donc pour définir une fonction on va utiliser le mot clé DEF pour définir ou define, je pense en anglais original on va l'appeler poser de vignette, il y en a juste une on pose une de vignette à la fois et en arguments les arguments c'est comme je lui passe des variables que j'ai définie ailleurs et je lui passe les variables comme si je lui donnais des arguments pour sa recette et maintenant je peux copier le code que j'ai utilisé un peu plus tôt encore une fois, je vais un peu plus vite maintenant si vous suivez pas tout, c'est pas la fin du monde donc je vais commencer par imprimer la question chose qui n'est plus dans le code ici et puis je vais vouloir aussi imprimer les réponses il y a encore plusieurs réponses ici par contre donc pour pour itérer sur toutes les réponses for a response in réponses je vais imprimer réponses ça c'est beaucoup plus c'est un désattage épitome parce que dans ce sens où on comprend relativement c'est ce qui se passe on prend pour chaque réponse dans la liste des réponses au pluriel on imprime chaque réponse ce que je veux dire c'est que le code c'est plus ou moins comme il s'exécute j'ai pas besoin de faire une boucle avec des chiffres disons ok for a response c'est une réponse maintenant ça ça va pas entrer en conflit si réponse ici égale égale est égale à bonne réponse on écrit bravo sinon on recommence ça devrait fonctionner et puis maintenant il me reste juste à venir itérer sur les questions for e in range ici je dois le faire parce que j'ai besoin de l'indice par faire je veux dire je peux pas juste écrire for a question in question parce que j'ai besoin d'indice donc j'utilise la fonction l'n qui va me donner le nombre de questions le nombre de 10 dans la liste question et je vais venir poser de vignette la im question associé à la im réponse associé à la im bonne réponse et ça devrait fonctionner on va vérifier bonjour tout le monde qu'est ce que fait la tour du monde tout en restant dans son coin un timer ça dépend des chats bravo et on peut vérifier que si on répond des mauvaises réponses ça fonctionne aussi effectivement mais à chance la prochaine fois et ça dépend des chats excellent donc on se félicite on est bon et on a réussi notre jeu de devinette maintenant si vous voulez en savoir plus je vous invite à la telle introduction à la programmation avec Python pour débutant et débutant qui a relué samedi le 13 mars 2021 à partir de 13 heures il y a plus d'informations qu'on a disponibles sur Meetup, sur le site de Montréal Python et toujours nous poser des questions sur le Slack ceci conclut ma présentation merci à vous merci beaucoup Edith et j'invite Duc à modérer notre période de questions c'est bon oui merci beaucoup Yannick merci Edith pour ta présentation j'ai l'air comme un peu je pars avec toi mais je suis en train de regarder parce que je ne peux pas ouvrir Youtube maintenant je suis là c'est ça comme je pense je pense c'est bon moi j'ai une question pour toi j'ai vu que tu utilises un editor de text oui et tu utilises le terminal oui pour rouler tes scripts Python as-tu essayé d'utiliser, j'imagine quand tu avais commencé as-tu un idea que tu peux peut-être je sais que c'est possible oui vas-y j'étais peut-être comme quelqu'un qui commence à programmer en Python ou n'importe quel encages peut-être qu'ils sont plus à l'aise avec une idée ou quelque chose je comprends étrangement avec Python j'ai commencé assez rapidement avec le terminal pourtant je n'avais pas beaucoup d'expérience en programmation j'en ai pas tellement plus et puis on dirait que dépasser la petite peur du début d'être en terminal quand on n'est pas habitué après c'est comme ok c'est correct, Python 3 je fais le nom de mon fichier, je le roule voilà c'était plus simple pour moi que de mettre en place un idea tel quel tout tweaked les fonctionnalités pour qu'utilise le bon Python etc il y a peut-être des idées qui sont plus faciles je te retourne la question, est-ce que des idées que tu utilises tout commanderait pour quelqu'un qui débute moi si ça au début quand j'ai commencé j'ai utilisé Python j'ai utilisé je me souviens plus c'était quoi le nom mais à la fin on s'entend tout qu'on préfère plus un editor de texte et le terminal puis il n'y a pas de surprise puis c'est un moment donné on s'entend que si on veut être un peu plus performant on tourne tout terminal mais en tout cas je pose la question à tout le monde d'abord si vous avez déjà utilisé un idées ou quelque chose qui est très facile d'utiliser pour les gens qui commencent peut-être donnez-nous vos suggestions sur ce que cela ou notre YouTube channel sinon j'ai peut-être tu as une question pour toi laisse-moi juste aller voir qu'est-ce qu'il fait qu'est-ce que tu fais avec mutek c'est peut-être un peu comme flou comment Yannick m'a présenté mais j'ai participé au mutek à titre d'artiste l'année dernière en mars 2020 je ne travaille pas en ce moment pour mutek je n'ai pas d'affiliation avec mutek en ce moment à part que je veux dire on se connait mais c'est tout ça c'est une question de Jean-Michel qui vient de nous poser bon je pense je pense que c'est aussi ma question est-ce que tu as des sites internet ou peu import pour des ressources pour nous proposer à nos gens qui viennent de commencer j'en ai trouvé quelques-unes bien c'est sûr il y a le classique learn python de hard way qui est un incontournable il y a les tutoriels officiels aussi en cherchant des informations en français j'en ai trouvé quelques-unes il y en a une d'université en France qui a quand même un bon site d'introduction python je pourrais mettre tous ces liens dans ce lac après la production ok c'est bon ok il y a des VS code et rendu pour ceux qui veulent utiliser un commentaire du yando fait que je pense que j'ai plus de questions je vois plus de questions est-ce que tu restes avec nous Edith pour le volet social c'est bon si il y a des gens qui veulent poser la question Edith si nous répétons le format ça me dit si vous êtes bien avancé en programmation et que ça vous intéresse de vous impliquer à titre de mentor, instructeur à des gens qui participeront à l'atelier merci de nous contacter et je suis aussi Edith on se voit ok merci Edith on se refert d'entendre super merci beaucoup Edith merci Duc et notre prochaine présentatrice our next presenter is live from Iowa on arrive en direct de la Iowa Huyen Tran et un data scientist un scientifique de données j'imagine que c'est la bonne traduction corrigez moi sur Slack si je me trompe chez signals.ai c'est aussi une contributrice fréquente sur towardsdata science.com et elle partage avec nous des astuces de data science sur LinkedIn chaque jour Huyen Tran est going to tell us about learning data science, she's a data scientist at signals.ai she's a frequent contributor on towardsdata science.com and she also shares daily data science tips on LinkedIn Huyen the mic is yours hello can you hear me very well awesome hello everybody today I want to present about how to learn data science by doing a project based abroad to learning data science so why it is hard to learn data science it is hard to learn any new skill but it is even harder to learn data science because data science is a relative new field and there are many resources to learn data science so there is no one best curriculum for you to follow so it is difficult to find the good learning resources and there is also a good chance that if you are learning data science you are also doing some other things that are not related to data science such as going to work or going to school so it can be difficult to set out the time to learn data science and you might have already taken many courses in data science but you never feel that you are competent enough because you look at the job requirements and there are always more to learn and or it may be because you forgot what you have learned after taking the courses you might take data science courses in order to get the certificates and show off your certificates to the recruiters to the employers but taking courses along will not give you a data science job because data science courses are now are widely available online and they are affordable so many people who want a data science job will also test certificates so why should employers employ somebody who just has certificates and choose those people over the others so if you want to get a data science job you need to make yourself unique which you can make yourself unique by obtain unique set of skills and one of the way to obtain this unique set of skills is through taking projects so what do I propose project based learning I think project based learning is an effective way to learn data science because when you learn through taking projects the knowledge is more likely to stick because you learn it the hard way your brain is more likely to remember the knowledge that is meaningful and interesting to you also taking projects allow you to test your knowledge learn relevant skills and actually feel motivated to learn so what do I mean by the knowledge is more likely to stick when you learn the hard way a lot of us learn passively such as watching education videos reading interesting books or you know if you have a test you want to plan before a test these are form of passive learning and we would like to learn passively because they create the illusions of mastery but you will quickly forget them a taking project is a way of is a form of active learning because it takes more effort and when you take more effort to learn the knowledge is more likely to stick an example of this is when you study for a math test if you just memorizing the solution it is easy I mean it's not really easy but it takes less time than really trying to understand the solution but the drawback of this is that you when you are given a question that are a little bit different from the question that you study why you study for the exam you will not be able to tackle that question because you don't understand the solution that you memorize and also taking a project allow you to remember better because that the knowledge you learn from the project is more important to your brain your brain is why to remember the knowledge that is important to you and discarding the one that is not so this is beneficial because your brain can retain just the necessary knowledge but it is an disadvantage if you try to force yourself to learn but you are not interested in learning your brain will regard it as something non-important and you forget it so if you check if you check project you will learn the new knowledge because you want to solve a particular problem because of that your brain will consider that new knowledge as something important and remember that piece of knowledge better by taking project you also can test your knowledge learning without using the knowledge will give you a wrong expectation of your knowledge you may think you master the skills why you do not or you think you are not competent enough to apply for job even though you already are so by taking project you are able to know have a realistic expectation of what you understand and don't understand and you can try to improve upon your weakness so project based learning also allow you to learn relevant skills it is important if you try to set the goal to learn every data science skill it is unrealistic because data science is a vast field and it is impossible to learn everything but it is possible for you to focus on the skills that will make up the 80% of what you will be facing so but how you gonna know what skills that will take up 80% of your work the most effective way to do this is to tackle a project when you tackle a project you can observe what you do the most and you can focus on improving upon the skills and the work that you facing the most also when you take project you feel more motivated to learn if no matter how hard working you are if you not interested in the subject you just feel it is difficult to stick with the subject that you want to learn but if you are interested in it you will try to you will feel yourself wake up 5am in the morning just try to tackle the problem and that is a feeling that you want when you learn something new so now we know the benefits of learning data learning data science through projects so how do we actually go about doing it in this presentation I propose 6 steps to do it first you need to start somewhere you can now just do data science without any programming language or the basic knowledge of data science so start with taking some basic courses and then start applying your knowledge to some project some data science project by the way you might not feel ready but do it anyway because that is the best way for you to retain your information retain the new information and expand your knowledge so how do you get the idea to start a project you can either start with an interesting question or an interesting data set an interesting question can be filed by look at things around you for example in the past project I heard that there is an association between amount of sunlight and depression rate but I was not sure if that is the case so I filed some data to test my assumption or I talk a lot to a lot of people on LinkedIn and I'm curious about what percentage of my messages are positive neutral or negative once you have a question search on Google for a data set that can be used to answer the question if the data is not available scrape one for example in my project that I try to find the association between amount of sunlight and depression rate I go on Wikipedia and scrape data using beautiful soup and it's actually really easy to do it if you have some basic knowledge in Python it easier than you think to scrape one if you don't have any question what should you do so you can also start with an interesting data set an interesting data set can be filed in many websites some of them are CalGo or Wikipedia for example I went on CalGo and filed a data set about Amazon top 50s mess-selling I really like to read books so I asked myself can I use this data to find the next book that I want to read what actually makes a book a mess-selling book so either you start with the question or start with an interesting data set they both good approach but if you start with an interesting data set make sure you have a question to answer before exploring the data this will help you to narrow down the approaches that you need to take to manipulate and explore the data and because of that you will because you have a clear goal you will feel more motivated to finish the rest of the project so once you have a big question you want to break them into small goals and give them some deadlines why? because you can feel frustrated by attempting to solve a big problem and no matter how hard the problem is if you break it down into small achievable goals the small goals the big goal can be finished so each small goal should be able to be finished within one or two days if you finish one goal you will feel motivated to tackle another and tackle another so it gets you going really quick and you don't feel frustrated and you don't feel that you wasted time when you tackle a big project so now you have goals it's time for you to find the resources to answer your question why? because for sure you will not have all the knowledge before tackling a project but it is okay because you can obtain the knowledge while working with a project so you know if you have any question a first tour is to ask google you can ask some really naive question and you will have some very good answer for example you are working with category code data and you don't know what to do first or what to do next you can just search on google strategy for working with category code data just choose pick the first article or the second article and just try it out and you will understand the methods because you constantly go back and forth between questions and then solution and then you try to use that solution to apply to your problem you will understand the knowledge much more than study something but don't use it and if you cannot find the resources on google you can find them through books, research paper or as an expert I like books because it prepare you the basic knowledge before showing you the advanced knowledge so you have if you have absolutely no knowledge about a certain subject you can start from the beginning of the book and if you already know some basic knowledge you can skip the beginning and go to the session that you care about if you are looking for more innovative methods that cannot be found through books or google find them through research paper many research paper now provide the source code for the methods that are presented in the paper a website that I really enjoy for searching for articles with papers with code is papers with code I really recommend you to check it out if many research paper or book help you find expert to ask you can message an expert on LinkedIn they would be really glad to help you if you tell them what you have research on and one particular question that you want them to help with and what if you want to get informed with new ideas that is out of your domain or getting informed with new ideas before you even ask the question about that idea so an efficient way to do it is to subscribe to useful resources just as github medium or other platform I like github because it's a good place to discover new open source tools a lot of process that you are doing many other developers have also gone through the same thing so they might find a way to optimize it so by going to github you will be able to find maybe some really good solution to optimize the code with minimal domain knowledge medium also a good resource because it recommends helpful articles based on your reading interest medium you can expose to really interesting articles from people from different backgrounds because medium make it really easy for researchers or data scientists to write an article about the subject that they interested in also my website data science simplify I think it's I think it's a good resource because what I did was I take note of what I found during my work as a data scientist and then I condensed them into small code snippet and I post them once per day and they really short and you can actually use them to apply to your work right away to solve your existing problem so now you have incoming resources really difficult for you to remember them all but you can organize these learning resources so that it can be easy for you to assess them in the future the tools that I recommended to organize your articles is pocket or github issues so I will show you really quick here so as you can see I organize my articles using github issues based on the topics so if I click one of these you can see I write some summarization and I can also write some code snippets so it's and if I want to search for command line I will find the article about it for you might also start like want to say the github repositories by starring the fall backup github repositories is that you cannot categorize them so a good way to categorize your github repositories is to use ASIO so as you can see here I categorize them so for example in the future I want to find some tool to help me with to break my machine learning model I can click on this and find the tool that I found before and I think would be helpful for my for anything that is related to inspiratable machine learning and if you want to save I like to save the useful code snippet because it really time efficient and I can get access to them quicker than just search on google the same thing again and again and my favorite tool for saving code snippet is gist so you can see here I save some a lot of them and another one if you are using VS code another good extension is VS code snippet creator so I can show you really quick here so with VS code snippet creator you can just highlight the text then click control shipy and create snippet and give it a name for example convert minute to day time and then description is similar minute to day time and then in the future if you want to access to it just say ok I want to convert minute to day time and here you have it within your script so it's really cool and to sum up my presentation I will summarize what I have covered so far so to start learn data science through project start with taking one or two courses then to get the inspiration for your project start with an interesting question or data then break the big question down into small goals to enable to finish all those goals you can find online resources to help you such as google book research paper expert and in the case that you want to find ideas out of your domain or the ideas that you cannot find through asking questions you can subscribe to resources such as github medium or other platforms then once you already have the incoming resources you can organize them using actual or organize your articles using github issues or save the code snippet using either github github or if you are using VS Code VS Code snippet creator then if you are ready to put your upgrade your skills in another domain of data science again take one or two courses but this time be selective about the courses and the material that you will take in just take the one that you feel relevant to you and discard the rest because you are more efficient and you learn much more that way and that's it thank you for listening to my presentation and let me know if you have any question gamung huyen did I say it right? can you say again? gamung hui, thank you yes I was trying to say thank you in Vietnamese my Vietnamese is terrible thank you thank you thank you thank you I mean how should we call you queen or tran you can call me queen that's my first name and everybody call me that okay queen thank you queen I know Kako have a lot of free data that we can use to do whatever we want but do you have another website which do you know another website which have why we can find some data to yeah I think I don't remember on the top but like what I often do to search for data and you know but I think I remember before I found some interesting point by going to US government data set and you can find some they said about US government whether yeah oh it's data.gov that is a good one okay thank you and and when did you start to learn why are you interested to data science and all of this kind of yeah so it's really it was my luck I think I attend a math conference and then there's a speak I didn't know what to do with my math major but I don't want to get into biology and you know I don't know what to do with it and I listened to a speaker he was a mathematician and at the time that he presented he was a data engineer so he said he feel really satisfied with his career as a data engineer so after his presentation I asked him more about it and he shared his experience and he shared where I can learn more about data science and that's how I you know after what he said I just find a book practice some Python and after Python I go data science so it's going from there I learn non-stopping okay cool and I have a question can you we don't have the address of your website can you is there the way that you can share with us so it needs math data simplified .com I don't know I can I don't know I can paste it on the comments you can paste on the comment here and we will again if you want you can paste it in the private chat in our streaming platform and we will copy it on YouTube thank you thank you okay and do you have the recommendation because I know some people use R to to do some I don't know I don't know R but I don't know if you like recommend R Python to start I guess the answer is Python but I have a reason for Python as well because I found that many open source on GitHub they use Python if you want to use the new tools and I feel like if you use Python you will more likely to be able to expose interesting tools than using R and I like for my team right now I think like also a lot of team record data sign team require Python because for my team some team member don't know how to use Python and we kind of ask the team member to start learning Python so that you know we can have the same code like same language for across the team so I would recommend Python I wouldn't say that R is a bad language but in my experience I recommend Python okay I have a question from Lytica it is important to have background in mathematics in order to pursue data science I would say don't I get asked a question even though I'm from a math background the reason why I said no was because so I also attempted to take some courses at my school that are really heavy on both math and machine learning but after the course I feel like I ask myself what did I learn and you know I feel like it's not like it's important but you shouldn't start from math what you should start is some basic data try to solve a problem with it and then ask yourself why do you use this method over the other and you deeper into the math of the machine learning algorithm that is a process I'm taking now and I think it's really efficient because I understand much better the math behind it then learn math first and then couple months later try to solve a data science problem okay I have another question from John Doe do you use Panda? Panda? yeah I do use Panda would you recommend it for the newbie? yeah absolutely I actually provide a lot of tips from Panda on my website because unless you work with a super big data Panda is a good tool because you can manipulate your data really easily with Panda okay I know a bit about Panda but is there alternative to Panda? I mean alternative in like so alternative in a way that you want to use it for big data or you wanted to assess to manipulate data faster is that why you want alternative? yeah no I mean because for me when I learn something I try to it's maybe not the maximum in my time but when I learn something I like to see what is the difference between tools so I can maybe choose the right tools or something like that do you mind if I share my screen now? yeah yeah go ahead go ahead so also you asked to save something that I think I think it's no let me I don't remember I think it's sorry for that Panda not this one QML is a good one QDF so the advantage of QDF is it allows you to it's kind of like almost similar to Panda is one of the plus because I don't need to learn the new syntax and it can work with the big data really efficient also it's raised no it's not raised oh I think H2O I haven't tried H2O yet but I heard a lot of people say it's a good one Vax Vax is I also really recommend Vax Vax I don't know how to say it but it's similar syntax can do it really quick yeah I mean that's right in the top of my head there's more but okay thank you very much we have two more questions and I think we will need to leave it's a bit late we will go with the two questions can you share any resource to access Panda I don't understand this question can you share any resource to access Panda do you mean like the Pandas documentation or do you mean by assess Pandas yeah I don't know too because I just read the question from our YouTube channel maybe we can go to the next question and we can come back any recommendation for learning prediction method like courses or website can I recommend the book I like books so sure okay let me share my screen again so that's a good one called Python Machine Learning it's cover a lot of things like it tell you okay the whole process of machine learning and how to data processing it cover different machine learning methods so that is a really good one if you're into books and hands-on machine learning this is the first book that I read after I talked to the data science engineer I read this book and it's like if you know Python you look at this book wow you can actually do something like this with Python so it's really cool and those are the two books about machine learning that I recommend also if you're interested in future engineering for machine learning yeah alright I don't have anymore unless you can try to answer the question can you share any resources to access Panda do you mean to understand pandas yeah I'm not sure about the question so anyway are you still stay with us to our social meeting after that maybe maybe that people can oh yes please yes please okay okay I would recommend my website because I actually write a lot of pandas here so if you can see there's a lot of I actually show a lot of pandas also so that is a resource that you want to have updated about pandas but I also recommend books again for that there's two books Python for Data Analysis so it shows you how to use here destination call getting started with pandas and it will prepare you from the basic to the advanced so it's pretty cool I think like if you go through this book you can actually kind of feel confident about pandas but otherwise you can just search on google if you want to do a particular thing just search on google on pandas how do I say assess the certain index of a pandas data frame for example it will show up and you can just follow what they show you on Stack Overflow or other websites okay alright thank you very much Queen and I hope we can see more of your work on LinkedIn and on your website thank you very much I think we will close thank you Hrion and yes we're done with the presentations part of the meeting but the meeting is not over because we invite you all to our virtual happy hour I'm going to just mention a couple things and then we'll join you over there so we invite you to join here at mtl by mtl-meat.fjna.ca slash event 82 the link is in the description of this video on youtube and we also invite you to fill out our satisfaction survey because we like to know what you like what we should do in our future events what kind of presentation so please fill that very very short five questions maybe even less than that survey that's going to really help us I have a couple other things that I want to mention let me just see my notes and this again okay thanks to fgni our partner who's hosting our virtual happy hour thank you guys that's really helpful and don't forget to follow us on social medias if you're into social medias the links to our Facebook and LinkedIn pages are in the description of the video on youtube and for Montreal Python 83 Montréal-Piton 83 we already have a presentation it's going to be Christian Udon who's going to talk to us about code profiling and we're looking for other presenters so if you want to talk to Montréal-Piton contact us either on Slack or by couriel and the couriel address is in the description of the youtube channel I think that's all we had to mention last chance yes I'm just going to wish our audience a good year I hope it's not too late because we're just long I think I'm still in time and it's going to be a very good year for us full of events so stay with us and propose to us and try to respond to the needs and desires of everyone I'm going to let you translate it into English so Happy new year Pythonistas we have a busy year ahead of us lots of great events I hope and we need help so please join us for attending these events but also join us to organizing them because it's always more fun that way and that's it yeah we see you at the social meeting thank you Yannick thank you everyone