 Bonjour, bonsoir tout le monde, bienvenue à Moréane Piton, excusez-moi, je vais juste mettre mon truc comme ça, juste pour voir si je vois bien mon slide ici, c'est bon, ok, c'est que là, oui, tout le monde de vraiment, je vais juste mettre le truc, parce que j'ai deux écrans, j'ai deux fois, ok, c'est bon, c'est bon, mais bonsoir tout le monde, bienvenue à Moréane Piton 92, Wi-Fi dentaire, c'est la première fois que je suis capable de lire le nom de notre éveillement correctement, Bonjour tout le monde, bienvenue à Moréane Piton 92, Wi-Fi dentaire. Alors, avant que nous commençons, j'aimerais dire qu'on a un code de conduct à Moréane Piton, c'est assez simple, on veut que tout le monde soit bon avec l'autre, donc si vous voyez quelque chose qui n'est pas bon, vous pouvez nous mettre sur le slide, moi et mon équipe, nous serons là pour fixer le problème, et le lien de notre slide est dans le channel YouTube, donc vous pouvez nous joindre à lire et tout, avant de commencer, j'aimerais vous parler de notre code de conduct, à Moréane Piton, nous avons le code de conduct qui est, on veut que tout le monde soit gentil avec tout le monde, donc si vous voyez quelque chose qui n'est pas correct, et vous voulez signaler, vous pouvez nous rejoindre sur notre slide, notre équipe est là pour régler ces problèmes-là, ou si non, vous pouvez juste rejoindre cela pour que vous chartez aussi avec du monde, ça va être toujours le plaisir, et après l'événement, nous allons avoir un 5 à 7, donc le lien de 5 à 7 aussi est sur notre channel YouTube, en parlant de 5 à 7, j'aimerais remercier notre partenaire, qui est FGNR, c'est eux autres qui font l'ébergement de notre plateforme Titsi, qu'on utilise pour faire notre 5 à 7. Après l'événement, nous allons avoir une heure 30, et j'aimerais inviter tout le monde à nous rejoindre, pour parler de tout ce que vous voulez, et pour parler d'une heure 30, j'aimerais remercier notre partenaire, FGNR, qui est le host de la plateforme Titsi, le chat où nous pouvons utiliser une heure 30. Et la dernière chose que j'aimerais annoncer, c'est que nous allons avoir le spin de la traduction, nous allons le faire pour 2 semaines, et ça va commencer à la fin de l'année, et nous n'avons pas le temps, et comment nous allons le faire, et pour sûr nous allons le lancer à la fin de l'année. Et ça va être la traduction de la documentation, la documentation officielle de Python, nous allons focusser sur Python 3.10, et on va envoyer plus d'informations sur la chaîne Slack, qui est Hackathon.python.fr. C'est ça, pour le dernier annonce ce soir, c'est que j'aimerais vous inviter à notre spin de traduction, et on va traduire la documentation officielle de Python. On va focusser sur Python 3.10, et si ça on va traduire l'anglais vers français, donc on n'a pas beaucoup plus d'informations en ce moment, sur comment on va faire et tout ça, et là aussi, mais c'est sûr qu'on va lancer ça le 5 avril, donc j'ai tous invité, et aussi vous fait inviter vos amis et tout. Donc sans plus tarder, pour que ce soit, je vais aller retourner dans mon studio ici, je vais enlever moi-même, et je vais amener notre premier présentateur, qui est Kiyom. Kiyom est un développeur à Canonico, il va nous parler de l'application que l'autre attendait. Ok, c'est bon. Ok, j'ai bien Kiyom ici. Ok, c'est bon. Kiyom, je te laisse te présenter un petit peu, et je te laisse prendre le contrôle, on revient après. Ok, parfait. Est-ce que les gens peuvent poser des questions en passant, c'est juste une question que j'ai oublié de te demander? Oui, après ta présentation, on va avoir comme 5-10 minutes que les gens puissent poser des questions. Ok, parfait. Et si on étudie le chat, ou c'est directement en parlant? Il va avoir Yannick qui va gérer ça, parce que Yannick est déjà connecté sur toutes les plateformes que les gens puissent poser des questions, et il va... Ok, parfait. Donc, Yannick, n'hésite pas à m'interrompre si il y a des questions à paraître, parce que je ne vois pas les questions en ce moment, je vois seulement mes slides. Donc, s'il y a des questions au courant de la présentation, ça va me faire plaisir de répondre. Aucun problème, on va te relayer ces questions-là de vive voix, ça va nous faire très plaisir. Merci. Donc, ma première question, c'est est-ce que tout le monde parle français, ou est-ce que je serai mieux de la faire en anglais? C'est à ton choix. On a un groupe très bilingue. Donc, je pense qu'on a peut-être certaines personnes qui ne parlent pas français, mais je pense que la majorité peuvent comprendre. Ok, je vais la faire en français, mais si tu as des commentaires pop-up, des gens qui ne comprennent pas ce que je dis, je ne la range pas de changer. Ça vaut la peine de traduire cette partie-là. Je vais faire la présentation en français. Ou je peux le faire en anglais ou en français. Je veux savoir si il y a des personnes qui ne parlent pas français. Je vais le faire en anglais. Ou si il y a des personnes qui ne parlent pas anglais, je peux le faire en français. À ce point, je ne suis pas certain d'où est le meilleur. En tout cas, pour tout de suite, les commentaires qu'on a ont l'air très français. Donc, je t'encourage fortement à garder cette langue pour l'instant. Ok, parfait. Merci. Je suis en anglais, mais je vais traduire du mieux que je peux. Bonjour, je m'appelle Guillaume Bellanger. Je suis Engineering Manager pour l'équipe Telco chez Canonical. Canonical, c'est la compagnie derrière Ubuntu. La présentation s'appelle Operating Your Private LTE Network for Free. L'opération de votre réseau LTE gratuitement. Tout d'abord, qu'est-ce qu'un core network? Je vais dire le mot core network parce que je n'ai jamais entendu de la traduction en français. Qu'est-ce qu'un core network? Quand on parle de core network, on parle de la partie d'un réseau de télécommunications sans fil qui est responsable de plusieurs fonctions, incluant l'authentification, l'adresse IP, le routage de paquets, d'enforcer les data rates et faire aussi la comptabilité. Donc, toutes les fonctionnalités réseaux qui sont typiquement abstraites à un utilisateur. Parce que je ne sais pas si vous mettez votre carte-sim dans votre téléphone cellulaire. Ce que vous allez voir, c'est que ça prend une couple de secondes et éventuellement, tu as accès au réseau. Mais qu'est-ce qui se passe en arrière? C'est typiquement toutes ces fonctionnalités-là et autres. Donc, un réseau, un core network, il y a plusieurs fonctionnalités. Certaines sont là. La plupart de ces fonctionnalités-là, quand vous allez rechercher sur Internet, ils ont des noms plus complexes avec des acronymes. Mais ultimement, le point est pas mal là. Ces fonctionnalités-là font en sorte, ultimement, que vous êtes capable de mettre une carte-sim dans votre téléphone cellulaire et en quelques secondes, être capable de faire un message texte, un appel ou d'aller sur Internet. Donc, ça, c'est un core network, mobile core aussi, vous allez voir. En pratique, de quoi ça a l'air, ce core network-là? Surtout, il y a quelques années, si vous êtes une compagnie comme Bell, Roger, Stedus, une compagnie télécommunications, vous allez acheter ce core-là, un vendeur comme Cisco, Nokia, Ericsson aussi. Sous forme de hardware. C'est littéralement une boîte que vous achetez et implementent toutes les fonctionnalités réseaux que vous avez besoin pour opérer votre réseau. Ils vont tout être à l'intérieur de cette boîte-là. Vous allez appeler Cisco et vous allez dire, OK, j'ai 10 000 clients à servir à travers 5 villes. Qu'est-ce que vous pouvez faire pour m'aider? Cisco va vous dire, OK, on vous vend 15 boîtes et ça va coûter 3 millions de dollars. Ça, c'était le processus historique avec les années, depuis toutes les modes vers la virtualisation, de plus en plus, ces fonctionnalités-là maintenant sont virtuelles. Au lieu d'avoir une boîte de Cisco que vous achetez qui vous coûte très cher, les compagnie ont maintenant leur propre infrastructure. Ils ont des centres de données avec des serveurs de HP, ou peu importe la compagnie d'ordinateur que vous pouvez acheter. Ce qu'ils vont faire, les compagnie comme Cisco vont vendre des machines virtuelles qui vont contenir ces fonctionnalités-là. C'est la même fonctionnalité, c'est la même chose, mais un autre packaging. Ils vendent du software maintenant, des machines virtuelles. Puis, ce software-là, tu peux le faire fonctionner sur ton infrastructure. En termes de prix, ça ne l'a pas changé beaucoup. Les prix ont été vraiment semblables, mais l'idée d'utiliser des serveurs, le gros avantage pour une compagnie comme Bell, ou Roger, c'est que c'est beaucoup plus facile de scaler. Si tu dois servir deux fois plus de clients, si tu dois faire quoi que ce soit, tu as besoin d'installer une nouvelle machine virtuelle, ou de la cloné. C'est juste beaucoup plus simple que d'appeler Nokia et dire, je vais t'acheter 10 boîtes, ça pèse des kilos. Ils sont lourds, mais sont réutilisables pour d'autres choses, que juste des Core Networks. Ça fait qu'il y a un trend vers la virtualisation. En ce moment, depuis quelques années, surtout avec le 5G, une nouvelle trend pour certaines de ces fonctionnalités résolues est des années vers le cloud. Dans le 5G, un gros découplage de ces fonctionnalités résolues sont plus en plus indépendantes, si on veut, c'est des microservices. Ils peuvent fonctionner dans... Tu peux les mettre où est-ce que tu as envie. La tendance n'est pas trop importante pour une certaine fonctionnalité, mais tu peux la mettre chez Google Cloud ou AWS et tu vas être capable d'atteindre ton objectif sans avoir à gérer des serveurs à l'intérieur de tes murs. OK. Sur cette slide, je veux vraiment mettre en place le fait que servir des communautés avec des réseaux wireless ça coûte cher. Au Canada, on a un gros pays, pas très dense, et ça fait en sorte que pour une compagnie comme Videotron ou Belle, ça coûte vraiment cher d'aller dans le nord du Québec, par exemple, servir une petite communauté de 50 personnes. Et cher au point où le jour ne vaut pas la chandelle. Parce que, comme vous êtes certaines de ces communautés-là, c'est seulement accessible en avion. Pour les servir en termes d'internet sans fulge, il faudrait que quelqu'un décide de passer plein de fibres jusqu'à la beurre. Après ça, tu mettes les équipements que je montrais de Cisco, Nokia qui coûtent une fortune, et après ça, tu as installé des antennes. Tout ça coûte extrêmement cher. Au Canada, on a la CRTC. Un de leurs objectifs, c'est que le plus de gens possèdent l'accès à Internet. Pour ce faire, on a un fonds qui sert justement à donner à une raison à ces compagnies-là d'aller dans ces communautés-là. Si toi, tu es Videotron, tu te dis, je vais aller servir telle communauté, tu peux aller devant la CRTC pour faire une demande. Ce projet-ci va coûter 30 millions de dollars. Est-ce que vous pouvez le financer? Si le projet CRTC juge que c'est un bon plan, cette communauté-là, par Internet, grâce à ce projet-là, ils vont avoir Internet. Ils vont vous donner le financement que vous avez besoin. Mais ça coûte quand même cher. C'est juste qu'au lieu d'être belle ou reduce qui paie pour l'infrastructure, ça va être hyper de taxe qui, à travers ce fonds-ci. Jusqu'à aujourd'hui, ce fonds-là est utilisé à 186 millions. C'est environ 30 000 personnes qui ont été servies grâce à ce fonds-là. J'espère que c'est ça. Avec le temps, de plus en plus de communautés devraient avoir accès à Internet. Mais ça coûte quand même extrêmement cher de servir tout le monde au Canada. Fait que Magma, je vais vous parler d'un projet open source qui s'appelle Magma. Magma, c'est un core réseau, un core network gratuit, open source, qui vient justement, si on veut remplacer les fonctionnalités réseaux que tu achèterais par exemple d'un Cisco, d'un Nokia, tu peux utiliser ce projet-ci. Comme je disais, c'est gratuit. Il y a d'autres projets open source qui ont la même objectif que d'avoir un réseau 4G ou 5G. Mais Magma, c'est de loin dans ce que j'ai vu que c'est le plus utilisé. Les contextes dans lesquels je l'ai vu utiliser, c'est un peu pour la partie communauté, sur des communautés éloignées, comme je disais, mais beaucoup dans des contextes de réseau privé. Par exemple, vous avez une mine, vous êtes dans le nord du Québec, extrêmement loin, vous avez une mine, puis vous aimeriez, soit que vos employés puissent communiquer entre eux avec leurs téléphones cellulaires, ou que les machines puissent communiquer entre elles. De plus en plus, les machines sont connectées. Maintenant, ils ont des quartiers, ils peuvent envoyer du data sur leur état, mais aussi sur ce qu'ils sont en train de faire. Il y a beaucoup de machines maintenant qui sont contrôlées à distance. D'utiliser soit le 4G ou 5G, c'est super utile. C'est dans ce contexte que j'ai vu Magma être le plus utilisé. Facebook était la plus grosse compagnie si on veut derrière Magma. En fait, c'est un projet qui était à Facebook, qui était Close Source avant, mais là, ils ont Open Source. Facebook, c'est un des contributeurs, mais maintenant, il y a plein d'autres compagnies qui se sont jointes, donc c'est vrai que ce projet fonctionne bien. Inculant des grosses compagnies, comme ARM, Qualcomm, Red Hat, Canonical, depuis quelques mois, on fait partie des membres également. C'est dans ce contexte que je fais ma présentation, c'est pour parler de Magma, principalement. Si vous voulez en apprendre plus sur Magma, c'est magmacore.com ou sur GitHub, vous allez juste chercher Magma. Magma, comme je le disais, c'est un projet Open Source qui existe indépendamment de nous. Il existe déjà des compagnies qu'ils utilisent. Mais où est-ce que Canonical vient s'impliquer dans tout ça? Comme je disais, Canonical c'est la compagnie derrière Ubuntu pour ceux qui ne savent pas. Et le but spécifique d'équipe dans laquelle je travaille, c'est d'offrir une alternative abordable, automatique et secure pour déployer son propre réseau privé. Plus abordable parce que Magma comme tel est gratuit. C'est absolument gratuit mais vous avez quand même besoin d'avoir une infrastructure, d'avoir des serveurs sur lesquels Magma va fonctionner. Ou un compte avec Google Cloud avec AWS. Vous avez besoin d'infrastructure d'antenne. Il y a des choses qu'on ne peut pas... Il y a des choses qui vont rester payantes si on veut. Mais de toute façon notre compagnie n'offre pas ces services. Nous on se concentre vraiment sur offrir Magma de la façon la plus simple possible. Et en pratique ce que ça veut dire, Magma a plusieurs composantes. C'est la partie access gateway qui est la partie qui est le coeur du réseau. Avec les fonctionnalités réseaux. C'est l'équipe dans laquelle je travaille on est en train d'écrire un snap. Avec Ubuntu c'est des snaps qu'on utilise pour installer des softwares sur Ubuntu. Pour access gateway qui est le coeur du réseau on en train d'écrire un snap. En ce moment vous pourriez simplement faire snap install Magma access gateway. Ça contraste avec la façon actuelle d'installer Magma. Si vous allez sur le site de Magma et vous allez lire la documentation vous allez vous rendre compte rapidement que ce n'est pas trivial d'installer Magma. C'est plutôt compliqué. Vous avez besoin d'installer un script. Vous allez utiliser Ansible. C'est plutôt complexe comme processus. On peut vraiment simplifier ça le plus possible. Un autre des composants de Magma c'est l'orchestrator. L'idée c'est que vous avez un core network. Mettez-vous à la place d'une compagnie. Une compagnie avec plusieurs core networks. Ça traversent potentiellement plusieurs villages. Mais orchestrator permet d'avoir une interface graphique et aussi de connecter les métriques. Il y a 52 clients. Il y a un nouveau que c'est connecté. D'avoir d'informations sur ton réseau. Cette partie-ci ça se déploie sur Kubernetes. Je ne sais pas si tout le monde est confortable avec Kubernetes. Mais si vous avez des questions spécifiques à Kubernetes, n'hésitez pas à me les poser. On peut répondre. L'idée c'est dans ce contexte, on utilise un outil qui s'appelle Juju. Juju est un outil qui te permet d'abstraire l'infrastructure sur laquelle tu trouves pour déployer ton application. On peut installer Juju et faire un Juju deploy Magma orchestrator. C'est un infrastructure que Kubernetes va déployer. En ce contexte, on ne s'intéresse pas où est-ce que ton Kubernetes est sur Google Cloud, Amazon Web Services ou sur ton laptop. Ça ne change rien. Ça va fonctionner. En plus de faire la partie déploiement, Juju te permet de gérer le lifecycle. Ça fait que les événements de vie d'une application. Par événement, je veux dire que vous allez vouloir upgrader votre application à un certain point. Vous allez vouloir la scaler. Vous allez vouloir la détruire potentiellement. Toute la logique qui permet de gérer ces événements-là, c'est tout écrit en Python. Juju va exécuter le code Python relié à chacun de ces événements-là. Je vais vous montrer ça dans quelques secondes. Je rendais la démo. Est-ce que vous avez des questions de ce que j'ai raconté jusqu'à date? Ou est-ce que je continue? Je ne vois pas de questions. Je vais encourager tout le monde pour poser des questions. Tout le monde, vous pouvez vous poser vos questions dans le chat sur YouTube ou sur Slack, dans le canal Meeting. Si vous avez des questions, c'est un bon moment. Vous pouvez les poser dans la chat ou sur Slack. Je serai très heureux de les donner à Guillaume. Je pense que tout le monde est clair. Je vous encourage d'y aller. Parfait. Ce que je vais vous montrer c'est comment déployer Magma Orchestrator sur Kubernetes. Pendant que ça va se déployer je vais vous montrer le framework en Python. Qu'est-ce qui se passe en arrière? Pour la démo actuelle, j'ai un compte avec Google Cloud si vous ne connaissez pas l'interface de Google Cloud c'est ça que ça a l'air. J'ai un cluster Kubernetes qui roule là-dessus. C'est avec cluster 2. Il n'y a pas un excellent nom. Il ne va avoir absolument rien en ce moment. Il n'y a aucun service, aucune application. Je vais vérifier qu'il n'y a rien. Je vais aller sur ma machine ici. Ici je peux lancer des commandes avec kube citiel. Je peux faire get nodes. Je vois mes différentes murs. Une petite intervention si je peux me permettre de s'interrompre. Ça a l'air un peu petit à l'écran pour les gens qui suivent ça sur la radio de diffusion. Ça a l'air tellement mieux. Merci beaucoup. Désolé pour ça. Ultimement, c'est bon voie avec mes commandes de Kubernetes. Ce que je vais faire ici c'est que je vais aller dans console Montréal et je vais aller déployer mon application. J'ai une machine Ubuntu. Ça c'est sur mon laptop ici. Je vais aller ajouter mon cluster Kubernetes à Juju. Juju va prendre connaissance. Il s'appelle tel nom. On va l'appeler demo ici. Après ça maintenant il y a accès à ces nouveaux credentials pour se connecter à Kubernetes. Juju bootstrap demo. Ce qui va se passer en arrière c'est qu'on va créer un contrôleur. Ce contrôleur va rouler sur mon cluster Kubernetes. Quand je vais déployer des applications c'est ce contrôleur qui va être responsable de communiquer avec Kubernetes et faire les opérations. Toute la partie de communication avec Kubernetes va être abstraite pour l'utilisateur. L'utilisateur n'a pas besoin de savoir tout ce qui se passe en arrière. Mais en pratique ce qui va se passer c'est qu'on va voir un nouveau service apparaître pour le contrôleur puis une nouvelle application apparaître. Ça va prendre quelques secondes et après ça je vais déployer l'application. Juju est utilisé pour déployer plein de types d'applications. Il y a des bases de données que tu peux utiliser pour déployer Kubernetes en tant que tel. Tu peux faire un Juju déployer Kubernetes. Ça fait que c'est des serveurs physiques que tu peux utiliser pour déployer des serveurs physiques. Tu peux penser à n'importe quel type d'application. Ça peut être déployé par Juju. Comme je disais c'est particulièrement util lorsqu'il est question de gérer les événements de vie d'une application. Normalement pour beaucoup de compagnie tu vas avoir des scripts à l'intérieur de la compagnie qui vont être quelques développeurs quelques gens en opération qui vont avoir leurs scripts quand je fais tel upgrade il faut faire telle chose. Ces choses-là qui sont par exemple je ne sais pas aller changer le web pour dire qu'on va faire un backup d'une base de données. Toutes ces opérations sont typiquement écrits dans des scripts ou ça peut être dans des scripts anti-ball souvent utilisé pour ce genre d'opération-là. Dans notre cas ça va être écrit à travers du cas de Python. Je vais gérer ces différents événements de vie. On va aller voir ce qui se passe ici. Notre contrôleur est créé je crois qu'on ne le voit pas ici. Je ne suis pas dans le bon name space. Exactement. On voit notre nouveau service pour le contrôleur et il faudrait avoir un nouveau workload ici pour notre contrôleur. Ce même contrôleur sera utilisé pour déployer n'importe quel type d'application. Je vais créer un nouveau modèle. Dans Kubernetes pour du tout un nouveau modèle l'équivalent c'est d'un nouveau name space dans Kubernetes. On va l'appeler whatever en pratique ce qu'on va voir ici c'est qu'un nouveau name space va être créé mais il n'y a rien dans ce name space pour l'instant. Maintenant qu'on a un nouveau name space on a un nouveau modèle je vais faire un tout de plus de magma orchestrator je vais spécifier qu'on lui fait confiance parce qu'il va faire des changements en notre cluster Kubernetes puis ça devrait c'est vrai bon en ce moment notre application on est en train de travailler dessus et pas encore disponible dans un channel stable si on veut on doit spécifier qu'on veut la version qui est sur le channel edge pas exactement stable donc Juju en arrière qui est en train de faire il communique avec notre store puis il voit tous les différents morceaux qui sont nécessaires pour créer cette application donc orchestrator c'est une application en arrière c'est 25 micro services qui communique entre eux qui sont connectés à une base de données qui sont connectés à des services c'est plutôt complexe mais comme je disais comme toute cette complexité plutôt abstraite à l'opérateur il n'y a pas besoin de savoir tous les détails mais si tu veux savoir tous les détails comme je disais tout ça c'est open source ça va continuer en arrière on prend quand même quelques minutes et je voulais vous montrer ici c'est le code derrière l'application donc on a un projet qui comme je disais c'est tout open source c'est la licence Apache donc si vous voulez vous pouvez l'utiliser vous pouvez même partir une compagnie puis l'utiliser puis faire de l'argent avec si vous voulez c'est tout open source vous pouvez même contribuer on a des guidelines pour contribuer pour venir contribuer à notre projet puis je vais vous montrer un petit peu plus de ce qui se passe en arrière ce que je dis c'est chacun des composants ici on voit chacun des composants qui forment orchestrator c'est plutôt complexe mais je n'ai pas envie d'expliquer toutes les interrelations entre ces composants on va en prendre un on va prendre celui-ci ça c'est un composant on appelle ça un term un composant si on veut là-dedans le code piton le code piton se trouve dans SRC ah Guillaume je me permets une autre interruption ça a pas l'air de rafraîchir ici pour au moins quelques utilisateurs on voit encore qu'est-ce que vous voyez en ce moment on termine moi je vois ton terminal puis t'as commande juju deploy magma orchestrator qui n'est même pas terminé mais je pense que tu l'as terminé donc ça ne juste pas rafraîchir je ne sais pas ce qu'il se passe tu t'essayais de départager et de repartager ton écran ? oui je suis désolé pour ça aucun problème on fait ça live on est tout courant, on peut avoir des petits problèmes techniques et voilà est-ce que vous voyez maintenant moi je vois le Chrome qui est dans Chrome ça a de la très bonne ça ok on est reparti ok parfait je vais un peu répéter ce que je disais ça c'est notre projet qui est sur GitHub projet s'appelle Charmed Magma c'est open source c'est gratuit, c'est licence Apache puis je vais vous montrer un des composants je vais prendre celui-ci ici chacun des composants à peu près le même genre de structure ce que vous allez voir c'est que dans SRC c'est ici qu'on va avoir notre code Python c'est ça que je vais montrer on est à Python Montréal je pense que c'est ici que je devrais m'arrêter mais je parle un peu plus tôt que on a du code qui s'occupe de gérer les événements de vie d'une application mais c'est exactement ce qu'on va voir ici puis ici on a seulement implémenté des actions pour quatre événements de vie puis ce que vous allez voir ici entre les lignes 45 puis 50-60 c'est les événements qui sont reliés à okbacos lorsque j'installe mon application ce que je produise c'est ce que ça s'appelle Pebble Ready ça veut dire lorsque le workload est prêt à être utilisé qu'est-ce que je fais lorsque j'ai ma relation avec la base de données qui est joint, qu'est-ce que je fais un remove, qu'est-ce que je fais c'est différent de ces événements de vie qui arrivent à l'application puis il y en a beaucoup d'autres qui ne sont pas ici que implémentés dans lequel vous allez insérer votre logique donc là ici ce qu'on dit c'est qu'okbacos d'événements un install arrivent moi je veux que tu appelles la méthode un install donc on va aller voir ça ici c'est l'implémentation de cette méthode ce qui se produit c'est que lorsque cette méthode est arrivée dans ce contexte et ce qu'on fait on va aller créer des secrets dans Kubernetes on va aller monter ces secrets-là comme des volumes puis c'est pas mal tout ce qui arrive et ça c'est quand on installe, on veut que ça passe on veut seulement que ça arrive quand on installe seulement une fois puis quand on veut former l'application qu'on va la détruire on va vouloir aller détruire ces secrets-là je parlais de logique business pas nécessairement business mais relier à l'application quand l'événement se produit je veux faire quelque chose mais si c'est tout codé un opérateur qui va aller installer cette application si il n'y a pas besoin de tout savoir j'ai besoin de faire juju deploy telle application tout ça ça va se faire par magie quand il va upgrader c'est pas nécessaire pour cette application si puis c'est pas mal je voulais pas entrer trop en détail dans le code Python parce que je pense que ça peut être ennuyant de l'aide du code dans une démo mais je peux revenir sur le framework ici un autre des fichiers importants ça va être le fichier méthode data de YAML puis dans ici ici on va avoir la description de notre application donc dans notre cas notre application c'est 1 container il y a 1 volume puis un des concepts extrêmement intéressant avec juju c'est la partie relation tu as deux types de tu as deux côtés face à une relation tu as le côté provider puis require fait que si on passe à une base de données la base de données va offrir une certaine interface puis d'autres applications vont pouvoir aller l'utiliser pour se relier à cette base de données fait que la base de données par exemple va te donner l'information pour te connecter à elle puis l'autre application va aller utiliser ces données pour se connecter on n'a pas besoin de souvenirs de tout ça mais c'est juste que je vais seulement introduire l'idée de relation il y a plusieurs services qui ont des relations entre eux puis ils se passent d'informations entre eux puis c'est pas mal ça en termes de démo est-ce qu'il y a des questions je vais voir si l'application je pense pas qu'elle va finir de déployer parce qu'elle prend pas mal de temps à déployer mais ce qu'on voit ici l'application est en train d'être déployée ça prend pas mal de temps parce que c'est 25 microservice sur Kubernetes entre autres la donne a une base de données on est en train d'attendre qu'elle se déploie puis les autres applications comme on voit sont en train d'attendre que la base de données soit déployée pour pouvoir s'y relier c'est pas mal ça ultimement l'idée c'est pour ce composant que très facilement quelqu'un soit capable de le déployer là je vous ai seulement montré l'opération de déploy mais dans le futur on va aussi avoir des logiques concernant les upgrades pour ce qu'est-ce qu'il se passe quand on se kille fait que toutes ces opérations sont nécessaires pour opérer comme une application à aussi grande échelle comme une grosse application est-ce que d'autres questions parce que pour la démo c'est pas mal ça mais je peux d'oublier cliquer sur quelque chose si vous voulez on a deux questions il y en a une qui est la mienne je vais la garder donc la première question c'est quoi la base de données ? quelle genre de base de données utilisée par cette application ? c'est pour ce Gaskier et puis Mac si vous voulez sur toutes les applications qui font partie toutes les applications pour lesquelles il y a des charms des choses sur lesquelles on peut faire des jujus déploy se trouve sur charm hub.io et puis si vous allez on le voit ici on fait il y a PostgreSQL vous avez seulement besoin de déployer PostgreSQL puis le n ici c'est la quantité de pods que vous avez besoin pour votre application et puis là tu vas faire un multi master PostgreSQL par défaut oh wow c'est super ça puis tu peux ça c'est toutes les plusieurs opérations reliées à Scali pour certaines autres applications en fait si on va prendre une application un peu plus complexe mettons j'allais prendre ETH donc en fait c'est utilisé pour le monitoring tu peux tu déploies ton application mais après ça tu peux relier deux applications entre elles faisant juju Relate CubeStateMetrics, puis Prometheus CubeState c'est une application qui est responsable pour les métriques dans Kubernetes puis comme opérateur tu fais juste Relate les deux. Tu n'as pas besoin de savoir tous les détails de ce qui se passe dans cette relation mais ce que tu vas voir c'est que dans Prometheus tu vas pouvoir observer que maintenant tu as des métriques sur Kubernetes toute la complexité reliée à les deux est abstraite à l'opérateur ok donc juste pour revenir en arrière un petit peu pour les gens qui sont moins familiers avec cet écosystème donc juju est un orchestrateur qui est spécifique à Kubernetes ou est-ce qu'il fonctionne avec des choses comme Docker cluster pour les containers c'est spécifique à Kubernetes par contre il y a des applications qui peuvent être déployées sur des serveurs physiques par exemple je ne sais pas si j'ai des ici vous allez voir l'icône de Kubernetes mais il y a certaines applications qui peuvent être déployées soit sur Kubernetes ou sur des machines virtuelles ou des serveurs il y a des deux types excellent donc la question que j'avais un peu plus tôt donc il y a plusieurs compagnies qui ont des réseaux cellulaires privés entre autres pour tester une connexion dégradée, une 2G ou une connexion avec beaucoup de pertes de paquets est-ce que c'est quelque chose qui serait facile à faire avec ou c'est quelque chose de complètement différent il faudrait que je comprenne mieux c'est quoi les types de tests qui font mais entre autres c'est ça les compagnies qui font beaucoup de développement mobile ils vont vouloir tester comment l'application ce qu'on porte dans un endroit où la connexion n'est pas bonne il y a beaucoup de pertes de paquets pour raison de quelqu'un donc il peut prendre ça facile à leur développeur de se connecter sur ce réseau cellulaires privés qui est dégradé rapidement comme ça je dirais que ça serait probablement plutôt facile à faire parce que t'es en contrôle de tout ce qu'il faut pour dégrader ton réseau comme si c'était Mike Ma comme ça c'est open source d'accès à toutes les services dans ce cas-ci on voudrait sûrement avoir un genre de générateur de trafic puis le faire envoyer des trucs super lentement ça existe déjà des projets open source pour générer différents types de trafic je pense vraiment que oui ça serait relativement facile à faire mais je dois avouer que je n'ai pas touché ça peut-être pour se donner une idée si quelqu'un vous dirait se lancer dans un projet on parle de quoi comme coût pour avoir une petite antenne qui va couvrir un bureau ou quelque chose du genre il faudrait que je cherche mon j'ai pas il faudrait que les antennes parce que les antennes ça varie beaucoup il y en a comme à quelques dollars puis il y en a à quelques milliers de dollars dépendant de la à quel point ils se rendent loin et tout mais on va y sur je vais répondre ça en plan réel c'est le documentation officiel mais malheureusement on va y voir des prix requis si je me trompe pas, il parle d'antennes et il donne pas des indices mais des exemples d'antennes qu'on peut utiliser on va y voir celle-ci juste pour voir le prix il faut vraiment mieux entendre pour voir des détails c'est souvent ça mais soit tu peux trouver un genre de c'est 4 000 dollars pour l'antenne c'est quand même raisonnable il y en a encore moins cher que ça mais qui sont plus utilisés pour mettre un studio testé chez toi dans ton sous-sol il y en a un de mes collègues il y en a une qui a payé je pense comme 40 ou 50 dollars mais c'est vraiment pas puissant tu peux pas servir plus qu'une personne de deux avec ça on peut avoir une antenne qui est étudiée réellement en production par ça c'est ouais, par des gens super, ok, suite à la question précédente donc la base de n'est pas au digresse est installée en mode state forward donc on peut la fermer la réelle humaine on va pouvoir nous donner c'est exact ? oui excellent, super ça c'est tout pour la question pour l'instant je sais pas si le la démo finit on va aller voir que ça il y en a encore deux qui sont en train la base de n'est active il reste deux applications en processus de se connecter d'ici quelques secondes ça va être en train de fonctionner mais en termes de démo c'est pas mal, rien d'autre à présenter ultimement à la fin de tous les services qui sont up and running parce que comme je n'en ai pas tout ok, Shredder c'est ce qui permet l'interface graphique ici on voulait aller voir l'interface graphique, c'est relativement simple tout ce qu'on aurait à faire si je vais retourner dans Google Cloud on va aller voir les services puis on va aller voir toutes ceux qui sont external load balancer comment ça on lui voit c'est parce que ça n'a pas ajouté certains de nos services c'est external load balancer c'est possible de l'extérieur de Google Cloud donc n'importe qui en ce moment si vous voulez vous pouvez le faire vous pouvez appeler un de ces services avec le port que vous voyez puis vous devrez recevoir une réponse ça va sûrement vous demander d'être connecté mais vous allez quand même être capable d'y accéder les services sont accessibles publiquement la chose chose qui restera après ça ça serait d'associer ces adresses-là avec Google Domain vous dites que 34.148.196.234 c'est égal guillaume.com puis il y a aussi les câbles d'accéder à ces services c'est pas mal ça en termes de démo je vais pas nécessairement aller plus loin c'est tout ce que j'avais à présenter mais si vous avez d'autres questions qui vous viennent ou si vous êtes intéressés à contribuer ou à faire du feedback des choses que vous n'aimez pas des choses que vous voulez mieux comprendre n'hésitez pas à me rejoindre c'est guillaume.billanger.com ou sinon sur GitHub pour ouvrir un bug n'importe quoi je suis quand même ouvert merci beaucoup super merci beaucoup guillaume merci guillaume mais c'est ça tu restes notre 5 à 7 moi je reste ici ok si il y a des gens qui ont d'autres questions mais vous pouvez nous rejoindre 5 à 7 et on va continuer à discuter avec guillaume je vais juste enlever yannick ici enlever guillaume et je vais tout de suite vous amener notre prochain présentateur qui il est jeune mais ça fait déjà la deuxième fois qu'aujourd'hui c'est la deuxième fois c'est ça il s'appelle George donc je voudrais vous vous introduire notre prochain présentateur il est jeune il est déjà la deuxième fois ce soir qu'il va présenter l'événement hey George hey comment vas-tu ? je suis bien vous avez un slide ou quelque chose que vous voulez partager ? je fais je vais juste faire sure que ça va c'est le right place c'est le one-side parce que j'ai shared le wrong screen c'est ok c'est sure ok on va voir tout le slide je vais vous prendre et yannick va revenir pour vous demander ok merci je suis George la présentation va être en anglais mais si vous avez des questions en français de mon idée c'est pas de problème je vais parler un peu de l'internet distance projet c'est un peu similaire à la présentation il y a des facteurs qui ne sont pas similaires mais il n'est pas très avancé et c'est un peu différent on va parler un peu le projet et ce qu'on a fait et où on va c'est un projet que j'ai fait avec quelqu'un que j'ai rencontré en anglais et on a commencé de parler et de travailler et le but est j'avais un long holiday break cette année j'ai commencé à penser comment l'internet fonctionne comment l'internet ressemble physiquement et le plus je l'ai apporté le plus j'ai commencé à être intéressé l'idée que chaque fois que vous faites un google search ou chaque fois que vous regardez sur Netflix ou chaque fois que vous regardez sur un site c'est quelque chose de physique qui se passe quand vous regardez sur le cloud et comment l'internet est wireless instantané mais beaucoup de gens ne réalisent pas que l'internet est une très grande physique et carbon mais il y a une grande physique pour l'internet donc l'idée est d'actuellement figure out pour comprendre tangibly ce que l'internet est et je vais passer au next slide c'est un slide d'une image d'all these submarines internet cables et vous pouvez voir qu'il y a plein de elles et c'est tout ce qui transporte les données du monde donc si j'ai envoyé quelque chose pour l'Indien ça peut prendre un de ces passages mais c'est un de ces cables pour l'indien et la même chose c'est la Chine peut-être par ici ou par ici donc il y a évidemment quand l'internet s'est travaillé l'internet s'est physically travelé d'une place à d'autres donc le projet c'est d'actuellement montrer cette distance par exemple un site web qui s'est hosté en Californie on va le voir plus tard mais si on regarde Apple.com et Apple a leurs servers en Californie ça signifie que mon search quand je veux accéder à leur site mon data va aller à Californie et ça va revenir et puis j'ai une page de l'internet mais parce que la salle de l'internet est si rapide donc on ne pense pas vraiment qu'il y a un impact d'un de ces cables c'est une énorme industrie avec des entreprises comme Facebook et Google et je ne sais pas si Netflix a une, peut-être qu'ils ont mais Microsoft lait ces cables sur la salle de l'internet payant 100 millions de dollars et je pense qu'il y a un nouveau câble qui peut transforer 150 terabytes de seconde c'est rigolo c'est tout je vais donner un démon d'un petit projet ici allez-y laissez-moi savoir si la salle de l'internet est trop petite je vais augmenter ceci un petit peu je vais parler un peu de la salle de l'internet mais je vais vous montrer ce qu'il fait maintenant j'ai mentionné Apple je vais vous montrer ceci c'est un applet d'Apple qui est le site de la salle de l'internet Cupertino, California et je vais aller à la salle de l'internet pour aller à la salle de l'internet pour aller à la salle de l'internet Mais le site s'éteint que si on va essayer quelque chose un modèle ? C'est à Virginia 43 Je vais vous le montrer il y a un applet qui se connait pour voir son salle de l'internet Living Montreal et l'Internet 64 sur Les web site ou Il y a des affaires en муз啊 chantons C'est intéressant, j'explique plus tard, il y a 1100 km, on peut voir que c'est en New York ou New Jersey. C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, C'est un projet qui nous aide à donner une idée à l'avantage d'une personne qui n'est pas vraiment into la compétition, Ok, donc, le code. Donc, pour faire le code, je ne vais pas expliquer chaque ligne, mais je vais donner un détail sur ce que c'est en fait en fait, et sur ce que les flaws sont dans le système, parce qu'il y a beaucoup de flaws dans le fait que nous avons fait ça. Donc, oui, ok. Donc, les premières choses, l'IP Info est un très bon... C'est un API qui vous permet de trouver la location d'un IP adresse. Si votre computer fait un Google search, ou un search sait où aller, mais d'actuellement obtenir la valeur, comme convertir l'IP adresse en location, vous avez besoin d'un truc pour que vous puissiez faire ça, et l'IP Info est la chose que nous avons utilisé, et ça marche très bien. Donc, vous pouvez voir ici, c'est le domaine pour l'input, c'est l'URL, et puis vous pouvez obtenir l'IP d'un socket libraire, vous pouvez aller par le nom d'un host, c'est sur Google.com, vous pouvez obtenir l'IP adresse, puis, par l'IP adresse, vous utilisez l'IP Info, c'est l'IP adresse pour obtenir la location d'un IP adresse. Et puis, par la base de ça, vous pouvez obtenir la longitude et la latitude de cette location. Puis, par là, vous pouvez obtenir la distance entre les coordonnées de votre IP adresse, vous pouvez obtenir vos coordonnées d'IP par Python. Et puis, vous pouvez comparer toutes ces coordonnées, vous pouvez comparer les distances, et en utilisant un GOPy, vous pouvez obtenir la distance entre les deux coordonnées. Et puis, c'est juste un petit code pour obtenir la map de la ligne. Une des belles choses sur Python, c'est que je n'ai pas de translation dans le JavaScript, et c'est vraiment difficile. Il y a quelques centaines de lignes, et ça ne fonctionne pas comme ceci. Python a déjà fait 40 lignes de code. C'est l'une des raisons que j'adore Python. Donc, c'est la façon dont ça fonctionne, et c'est la façon dont c'est calculé la distance entre les coordonnées, et que vous avez pu voir ces détails que nous avons dans la démarche. Donc, je vais vite retourner aux slides pour un second. Il y a un problème avec la extension de Chrome. Je vais vous montrer ce que j'ai fait. Si quelqu'un ne sait pas ce que la extension Chrome est, je vais vous montrer rapidement. C'est essentiellement ici. Les gens ont un blog ou vous pouvez avoir des apps que vous pouvez utiliser. Ils sont construits dans votre browser qui vous aide à faire des choses. J'ai vécu un extension Chrome avant Google, et j'ai vécu des choses comme ça, des apps. Donc, la raison pour laquelle nous avons dû faire un API c'est que c'est assez impossible dans un JavaScript de créer d'avoir de transmettre l'adresse de l'IP sans obtenir d'un appui super expensif. Nous ne voulions pas faire ça. Nous avons réussi à utiliser Heroku et d'avoir un API sur Heroku. C'est assez standard. C'est essentiellement de transmettre les codes que j'avais dans le précédent. Et ensuite, c'est possible d'avoir un request de l'API et d'avoir des informations. Je ne sais pas si je l'ai dit, mais la raison pour laquelle nous avons besoin d'utiliser un API c'est parce que d'abord, vous devez avoir des extensions en JavaScript, HTML et CSS, mais vous devez l'utiliser parce qu'il n'y a pas le moyen de convertir l'adresse de l'IP dans un JavaScript. C'est pourquoi nous avons besoin d'utiliser ça. Les problèmes d'attention sont construits avec HTML et CSS. Nous avons créé un API pour l'API. Alors, un des problèmes que nous avons, je vais vous montrer ça rapidement. C'est le request que vous devez faire afin d'utiliser l'API. Et puis, les portions de l'application ou vous devez provider votre propre adresse d'IP. C'est l'adresse d'IP où je suis. Et puis, basé sur ça, vous devez calculer l'adresse de l'API et puis, ça retient à un code JavaScript qui utilise l'adresse de l'application. J'espère que ça marche, parce que parfois, c'est bizarre. Je clique entrer. Nous allons faire un request maintenant. J'espère que ça fonctionne. Il y a un peu de temps à faire, mais vous pouvez voir la distance. Je vais vous expliquer dans quelques minutes, pourquoi c'est problématique. Vous pouvez dire que la distance est 8000 km, c'est le service IP, c'est ça, c'est Google, parce que j'ai Google là, et puis le service location est US. Si je mets quelque chose, c'est Apple.com. Apple.com. Il devrait être un peu plus classique maintenant. Vous pouvez voir que c'est en Cupertino, California. La distance est 8000 km, et le service IP, c'est ça. Je vais juste faire un plus pour bonne chance. Je ne sais pas. Je vais essayer YouTube. Vous pouvez voir la distance est 1624 km. L'IP c'est ça. Le service location est en Washington, US. On va parler d'un truc qui est un peu intéressant. Juste un second. Il y a un problème avec la façon dont on fait ça. N'a-t-il quelqu'un qui a une idée? Si il y a un commentateur, si il n'y a rien, je vais continuer. Je veux juste clarifier qu'il y a des questions. Je vais continuer. Ok, merci. Ok. L'issue que nous avons, et ça a été un jour pour savoir pourquoi toutes les rédénies que nous avons utilisées quand nous avons utilisé l'extension chroma, on a finalement donné que le service Heroku que nous avons utilisé pour réunir l'API est en l'est de l'U.S. Donc, pour exemple, quand je fais une entrée de ma propre adresse et essayer de trouver la plus proche Google pour exemple, je l'ai fait avant, ici. J'ai juste interprété Youtube. Et la location de service de Youtube est en Washington, US. Si je le fais sur ma propre 1 ici, sur ma propre computer, pas sur l'API sur Youtube.com vous devez voir que la location de service de Youtube est Montréal, en Canada, qui est 0 km de la place parce que j'ai utilisé le Montréal et l'IPS. Donc, ça ne fait pas le sens. Pourquoi quand j'utilise l'API est ma location de service 1,600 km de la place et pourquoi quand j'utilise ma propre computer est-ce que c'est 0 km de la place? Et la raison pourquoi c'est parce que les plus cloués Youtube et les entreprises Google et Netflix, ont un tout petit de différents présences physiques de leurs websites. Un tout petit peu de différents services qui ont mis leurs websites parce que, pensez-vous, les searches Google sont en 1 seconde pour faire ça. Il y a des constraints pour comment les façons peuvent aller. Ils tentent de mettre as many nodes as possible, as many services comme close to Montréal, or close to New York, or close to California, or close to London, or different population centers. Donc, ça veut dire que quand je cherche Montréal, je cherche le plus cloué de Montréal, qui est en Montréal. Mais quand je cherche de l'API qui est au nord de la U.S., la plus clouée de la service Youtube est à Washington, D.C., qui, si vous dites OK, je sais que je vais locater l'Ontario de Montréal, qui est au fur et à la fin. Je sais que c'est en Washington. Ça va vérifier la distance entre Montréal et la distance entre mon computer et la service Google. C'est un peu plus élevé que ça. C'est l'issue que nous avons. La distance n'est pas actuelle, et nous essayons de se résoudre. Le projet reste dans le travail. C'est l'issue majeure. L'autre issue que nous avons, c'est qu'il y a des entreprises, chaque fois que je regarde l'Ontario de Montréal, c'est toujours en Cupertino, en Californie. Ça serait toujours correct. Si j'utilise l'API, c'est toujours correct, parce que l'API est en train d'avoir le plus cloué de la service Apple, qui sera la même chose que si je regarde l'Ontario de Montréal. C'est pourquoi c'est un peu bizarre. L'autre issue que nous avons, c'est que l'Ontario de Montréal fonctionne dans les coulisses qui sont en train d'établir les coulisses, qui signifient qu'elles sont parfaitement straight. Si vous étudiez une map de l'Ontario de Montréal et que l'Ontario de Montréal arrive à Los Angeles, il y aura des coulisses, il y aura des trucs différents des points de check-points, des places où l'Ontario va probablement avoir un peu de distance pour ma search, ce qui n'est pas reflécté en calculant la distance. Les next steps font différentes calculations sur l'ISP. Nous pouvons avoir une meilleure idée d'où la location physique de l'Ontario est, pour Bell ou Roger, ou quelque chose comme ça. L'exemple extrême est Starlink. Si vous savez où est Starlink, c'est une des companies de SpaceX qui a des satellites dans l'espace et vous pouvez probablement trouver un moyen d'incorporer la distance et leur infrastructure physique de la distance. Mais aussi, je ne sais pas exactement comment le nom est, parce que les gens font différents noms pour traverser l'Atlantic, la plupart des données américaines quand vous faites une search ou quand vous demandez quelque chose, il y a un terminal qui est dans la ville de New York. Je suis sûr qu'il y a un terminal en London quand ils tentent d'accepter des choses dans la ville de New York. Donc l'incorporation des aspects comme ça serait plus réalistique et c'est pour l'aide du projet. C'est ça. Si il y a d'autres questions, laissez-moi le savoir. Je vais vous donner de la question de Yannick. Merci Yannick. C'est excellent. Merci George. Tout le monde, s'il vous plaît. Dans les commandes YouTube ou sur Slack, je serai très heureux d'en parler avec George. Et je vais vous donner des questions. Mais je vais vous demander de la question que les packets ne s'entendent pas d'en savoir exactement où les cables sont lancés. Le route de trace semble être de bonne approximation. Je sais que vous pouvez impliquer le route de trace en Python. Je ne sais pas si c'est du boulot. Donc si vous voulez vous donner un peu de thought sur comment ça fonctionne, je peux vous ajouter. Je ne suis pas très familiar C'est bon pour moi parce que je vais travailler sur ça plus tard. Mais la chose que j'ai... J'ai essayé de googler ça et j'ai lu ça... Oh, pardon, je sais pas ce qu'il y a sur Tracerot. Je sais pas. Je sais pas ce qu'il y a, mais dans un contexte différent. Je savais que vous pouvez l'implier en termes, je pense que vous pouvez l'utiliser. Mais je n'en sais pas si vous pouvez l'utiliser en téléphone, c'est cool. Oui, c'est correct. C'est trop basé dans les détails parce que je vais laisser les autres personnes poser des questions. Mais basicalement, vous avez changé le TTL, c'est-à-dire comment beaucoup de temps un packet peut survivre. Et vous l'incriser par un jusqu'à que vous atteignez votre service. Et quand votre packet ne peut pas atteindre le service, vous allez avoir un message. Oh, c'est tout à fait ce service. Vous avez l'application IP de l'intermediate routière. Il y a un command sur le terminal qui s'appelle Tracerot, ou Tracerot 64 IPv6 qui vous donnera cette information. Vous pouvez le faire en Python avec le module socket. C'est quelque chose que vous pourriez regarder. Oui, absolument. Excellent, et sans question, quelqu'un a donné nous un lien sur comment implementer Tracerot en Python. Je vais le mettre dans la chat de YouTube, parce que je pense que c'est très... C'est vraiment aidant. C'est ce que je vais travailler sur. Et la personne qui nous a donné cette information est Guillaume. Merci, Guillaume. Guillaume, c'est notre présentateur. Tout le monde, d'autres questions pour George? Parce que je pense que c'était très intéressant. Peut-être qu'il y avait un peu d'inquiétude, parce qu'il a shared avec nous beaucoup d'informations. Peut-être que c'est pourquoi ils ne m'ont pas demandé. Ou peut-être que c'était excellently clair, et c'est pourquoi nous n'avons pas de questions. Oh, attends, il y a une question. Ok, donc, George s'est dit, vous avez un cas de utilisation spécifique pour l'application? Vous m'avez mentionné que vous étiez inquiets sur comment l'interdit fonctionne, mais quel serait le problème typiquement que vous essayez de solider ici? Je ne sais pas exactement, un gros problème. Je ne sais pas ce que c'est, parce que j'étais intéressé par l'interdit, et on a fait une extension chronique, mais ça ne marche pas toujours, et j'ai eu beaucoup d'inquiétude. Mais le but, le but d'application, et j'ai quelques amis qui sont en train, c'est d'avoir une extension chronique et de savoir comment vos paquets sont réveillés au cours d'un an. Alors, on va dire, j'ai fait toutes ces searches sur Google d'un an, dans ma vie quotidienne, j'ai eu un Gmail, j'ai eu 1 000 différents websites, et à la fin de 6 mois, à la fin de l'année, j'ai traversé 115... Je n'ai pas d'idée de ce qu'il y aurait, mais 1,5 million de kilomètres, ou 2 millions de kilomètres, que vos paquets sont réveillés, et on est toujours tentant de faire l'extension chronique, finaliser et ne pas avoir les erreurs que j'ai mises avant. C'est très cool, oui, c'est vrai que c'est très bien summarisé, nous avons cette belle infrastructure que nous prenons pour garantir, c'est juste magique, mais il y a beaucoup de travail qui se fait chaque seconde que nous avons utilisé cette machine magique, c'est Internet. Ah ah ah... C'est un comment par Yvan, TCPIP step counter. C'est un petit peu de contexte pour moi d'être capable de phrase-le comme question, mais je pense que c'est une suggestion pour un futur improvement de l'extension chronique. Absolument, bien merci. Excellent, merci, et je vous remercie. Merci George et Yannick. Ok, je pense que je vais juste vous remercier George, parce que je pense que j'ai oublié quelque chose. Oui, je pense que nous allons avoir l'événement, le programme C'est vrai. J'espère que vous vous remerciez et vous avez fait. Ok, vous voulez parler de ça un peu ? Certainement, le prochain mois à 17 on va avoir notre deuxième programme de l'année, et le programme de l'année est que nous fâchons un notebook Python et nous écrivons des codes ensemble. On pense que c'est un petit peu d'apprentissage d'apprentissage, d'apprentissage le prochain mois on va parler d'analyses de plus de manipulation d'analyses, mais un petit peu d'analyses avec Pandas. Il va être en français, mais bien sûr, si vous parlez en anglais, venez, et si vous êtes bon avec nous, beaucoup de français vont répondre à toutes vos questions que vous demandez en anglais. Ok, donc il va être à 7 p.m. si je suis correct. 7 p.m. le lien ne peut pas être dans la description mais vous avez le lien pour tous nos événements en meet-up dans la description de YouTube et vous cliquez sur ça, et ça sera le prochain événement. Ok. Est-ce qu'on doit répéter un petit peu en français, juste pour que les gens ... Ça me fait très plaisir, parce que je pense que c'est très divertissant comme soirée. Lundi prochain, on a la deuxième soirée de programmation. C'est une soirée de pair programming en français. J'essaie de ... surtout que je vais être dans le spray de la traduction, mais bon. On va faire le pour le pair programming. On ouvre un iPad. Ça aussi, je le trouve en français. Et on va la programmation ensemble. On va travailler avec Pandas la semaine prochaine. Oui, la semaine prochaine, lundi prochain. 7 heures. Et puis le lien vers nos événements meet-up. Et dans la description, je pense qu'on n'a pas le lien pour cet événement-là en particulier. Et vous cliquez sur événement. Et boum, ça va être le prochain événement. Ok, cool. Bon, je pense que c'est ça que j'avais oublié, mais je pense qu'on n'est pas mal tout de bon. On devrait être bon au 5 à 7. On s'en va au 5 à 7, à l'instant. Ok, bien je vous invite à nous rejoindre à notre 5 à 7. Comme Yannick a dit, le lien, c'est sur notre page de YouTube. Donc, nous aimerions inviter tout le monde à nos happy hours. Donc, le lien est sur notre YouTube channel. Donc, hey, everybody, have a good night. Bye bye. Bonne journée, tout le monde. Je vous rapporte une expérience de programmation enregistrée.