-
Notifications
You must be signed in to change notification settings - Fork 6
/
schedule.json
1 lines (1 loc) · 223 KB
/
schedule.json
1
{"schedule": {"2024-11-02": {"510": {}, "540": {"1": {"code": "JDQLRV", "speakers": [{"code": "MNMGGN", "name": "Lucie Anglade", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_IVxfMJT.jpg"}], "title": "Accueil / Welcome", "submission_type": {"en": "Short plenary", "fr": "Pl\u00e9niaire courte"}, "submission_type_id": 8, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Session d'ouverture de PyConFR 2024.\r\n\r\nOpening talk for PyConFR 2024.", "duration": 30, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T09:00:00+01:00", "end": "2024-11-02T09:30:00+01:00"}, "image": null, "resources": [], "answers": [], "created": "2024-08-07T10:51:59.044668+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "570": {"1": {"code": "LAXRUP", "speakers": [{"code": "9HXPDQ", "name": "Houleymatou Bald\u00e9", "biography": "Venue d\u2019ailleurs, fille d\u2019analphab\u00e8te, surmontant des obstacles : pr\u00e9jug\u00e9s, patriarcat, in\u00e9galit\u00e9s sociales, racisme, sexisme \u2026 \r\n\r\nDe orpheline \u00e0 l\u2019\u00e9coli\u00e8re, du th\u00e9\u00e2tre au chronique radio, de l\u2019engagement \u00e0 l\u2019action, de la s\u00e9rie de mon enfance (24h chrono) au double dipl\u00f4me d\u2019ing\u00e9nieur Tech (DEV & DATA), j\u2019ai toujours su bien m\u2019entourer, entreprendre et aller de l\u2019avant. \r\n\r\nJe suis Houleymatou Bald\u00e9, fondatrice de Yeeso.fr & du r\u00e9seau IT Woman, \r\nIng\u00e9nieure Solution Tech chez Novodev (un \u00e9diteur logiciel), \r\nConf\u00e9renci\u00e8re Professionnelle (Tech, Inclusion, Leadership F\u00e9minin, TEDx & Keynote).", "avatar": "https://cfp.pycon.fr/media/avatars/Photo_Profil_Houleymatou_QxvXlBj.png"}], "title": "De villageoise \u00e0 l\u2019itWoman\u2026 Quelles actions pour faire de mon r\u00eave TECH une r\u00e9alit\u00e9 ?", "submission_type": {"en": "Plenary", "fr": "Pl\u00e9ni\u00e8re"}, "submission_type_id": 5, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Aujourd\u2019hui, les m\u00e9tiers de l\u2019IT font partie des secteurs qui recrutent le plus. Par cons\u00e9quent, le faible pourcentage de femmes sp\u00e9cialis\u00e9es dans ce domaine se r\u00e9percute dans le monde de l\u2019entreprise. \r\n\r\nLe probl\u00e8me viendrait-il des pr\u00e9jug\u00e9s ? \r\nLes in\u00e9galit\u00e9s dans la tech seraient-elles le reflet de la soci\u00e9t\u00e9 ? \r\nLe choix des actions aurait-il une importance sur la r\u00e9duction des injustices ? \r\n\r\nLa mixit\u00e9 \u00e9tant un vecteur de performance, il est donc dans l\u2019int\u00e9r\u00eat de toutes et tous que les m\u00e9tiers de la TECH se f\u00e9minisent.\r\n \r\nAlors, si vous voulez donner confiance et inspirer les femmes et les hommes pour g\u00e9n\u00e9rer encore plus de valeurs via la mixit\u00e9 et l\u2019\u00e9quit\u00e9. \r\n\r\nDu r\u00eave \u00e0 la r\u00e9alit\u00e9 : venez d\u00e9couvrir comment d\u00e9passer les barri\u00e8res et aller de l\u2019avant !", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T09:30:00+01:00", "end": "2024-11-02T10:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 14, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "LAXRUP", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-17T18:21:28.298544+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "600": {}, "630": {"6": {"code": "GDDRLW", "speakers": [{"code": "SMBJJ9", "name": "Stefanie Molin", "biography": "[Stefanie Molin](https://stefaniemolin.com/) is a software engineer at Bloomberg in New York City, where she tackles tough problems in information security, particularly those revolving around data wrangling/visualization, building tools for gathering data, and knowledge sharing. She is also a core developer of [numpydoc](https://github.com/numpy/numpydoc) and the author of \u201c[Hands-On Data Analysis with Pandas: A Python data science handbook for data collection, wrangling, analysis, and visualization](https://www.amazon.com/Hands-Data-Analysis-Pandas-visualization/dp/1800563450),\u201d which is currently in its second edition and has been translated into Korean and Chinese. She holds a bachelor\u2019s of science degree in operations research from Columbia University's Fu Foundation School of Engineering and Applied Science, as well as a master\u2019s degree in computer science, with a specialization in machine learning, from Georgia Tech. In her free time, she enjoys traveling the world, inventing new recipes, and learning new languages spoken among both people and computers.", "avatar": "https://cfp.pycon.fr/media/avatars/portrait_MJgUyD6.jpeg"}], "title": "Introduction to Data Analysis Using Pandas", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Working with data can be challenging: it often doesn\u2019t come in the best format for analysis, and understanding it well enough to extract insights requires both time and the skills to filter, aggregate, reshape, and visualize it. This session will equip you with the knowledge you need to effectively use pandas \u2013 a powerful library for data analysis in Python \u2013 to make this process easier.\r\n\r\nPandas makes it possible to work with tabular data and perform all parts of the analysis from collection and manipulation through aggregation and visualization. While most of this session focuses on pandas, during our discussion of visualization, we will also introduce at a high level Matplotlib (the library that pandas uses for its visualization features, which when used directly makes it possible to create custom layouts, add annotations, etc.) and Seaborn (another plotting library, which features additional plot types and the ability to visualize long-format data).\r\n\r\n#### Section 1: Getting Started With Pandas\r\n\r\nWe will begin by introducing the Series, DataFrame, and Index classes, which are the basic building blocks of the pandas library, and showing how to work with them. By the end of this section, you will be able to create DataFrames and perform operations on them to inspect and filter data.\r\n\r\n#### Section 2: Data Wrangling\r\n\r\nTo prepare our data for analysis, we need to perform data wrangling. We will learn how to clean and reformat data (e.g. renaming columns, fixing data type mismatches), restructure/reshape it, and enrich it (e.g. discretizing columns, calculating aggregations, combining data sources).\r\n\r\n#### Section 3: Data Visualization\r\n\r\nThe human brain excels at finding patterns in visual representations of the data; so in this section, we will learn how to visualize data using pandas along with the Matplotlib and Seaborn to help us better understand our data.", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 6, "room": {"en": "C04", "fr": "C04"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T12:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 70, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "GDDRLW", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-15T00:12:24.969776+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "5": {"code": "GRRZX9", "speakers": [{"code": "M37Z9Y", "name": "Adrien Montagu", "biography": "Adrien Montagu est le CTO de DressKare et poss\u00e8de une vaste exp\u00e9rience en tant qu'architecte logiciel. Passionn\u00e9 par les d\u00e9fis techniques de haut niveau, il excelle dans la gestion de la complexit\u00e9 du code et de la maintenance \u00e0 long terme.\r\n\r\nConsid\u00e9rant le code comme une forme d'artisanat, Adrien s'efforce de mettre en \u0153uvre ses comp\u00e9tences pour cr\u00e9er des solutions logicielles \u00e9l\u00e9gantes et efficaces. Sa vision est de concevoir des logiciels comme on cr\u00e9e des \u0153uvres d'art, avec un souci constant de la qualit\u00e9 et de la perfection.\r\n\r\nSorry j'ai utilis\u00e9 chatgpt ;)", "avatar": "https://cfp.pycon.fr/media/avatars/Adrien-1_qlgcDY8.jpg"}], "title": "Apprendre \u00e0 utiliser Open Telemetry", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "#### OpenTelemetry ?\r\n\r\nOpenTelemetry est un cadre open-source qui fournit des outils et des API pour la collecte, la transformation et l'exportation de donn\u00e9es de t\u00e9l\u00e9m\u00e9trie (comme les traces, les m\u00e9triques et les logs) \u00e0 partir de syst\u00e8mes et d'applications. Il est con\u00e7u pour faciliter l'observation et le monitoring des performances des applications en fournissant des normes unifi\u00e9es et des biblioth\u00e8ques pour divers langages de programmation.\r\n\r\n#### L'atelier\r\n\r\nVenez apprendre \u00e0 cr\u00e9er logs et trace avec des technologies open source comme OpenTelemetry, Grafana, Jaeger, OpenSearch et autres pour reprendre la main sur vos applications.\r\n\r\n#### Les pr\u00e9requis\r\n\r\nDocker est n\u00e9cessaire. Les docker seront fournis ainsi qu'un repo de demo mais vous \u00eates libre de venir avec votre propre application. L'atelier ne couvre que l'installation et l'utilisation en local et non le d\u00e9ploiement.", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 5, "room": {"en": "C01", "fr": "C01"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T12:55:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/GRRZX9/resources/Open_telemetry_atelier_HJuFpI2.pptx", "description": "slide"}], "answers": [{"id": 92, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "GRRZX9", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-05T10:30:58.086827+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "8XMBS3", "speakers": [{"code": "DCWZNW", "name": "Victor Stinner", "biography": "Contributeurs c\u0153ur au projet Python depuis 2010, je maintiens Python pour Red Hat upstream (python.org) et downstream (Fedora et RHEL).", "avatar": "https://cfp.pycon.fr/media/avatars/2022_profile_c65IbD0.jpg"}], "title": "Nouveaut\u00e9s de Python 3.13", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Python 3.13 apporte plusieurs am\u00e9liorations majeures : nouveau REPL, mise en couleur des erreurs, compilateur \u00e0 la vol\u00e9e exp\u00e9rimental, ex\u00e9cution exp\u00e9rimentale en parall\u00e8le sur plusieurs CPUs, Apple iOS et Android sont support\u00e9s officiellement, etc. Faisons un tour rapide de l'ensemble des changements de Python 3.13.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T10:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 4, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "8XMBS3", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-09T10:52:24.424951+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "MMKK3N", "speakers": [{"code": "K8NGW8", "name": "Mykalin Jones", "biography": "Mykalin Jones is a Particle Physicist-turned-Data Analyst with over a decade of teaching experience. She has written curricula for various topics including Python for Children, The Basics of Python, Intermediate Python, and Data Science for Beginners. She provides individual and group classes on all of these topics as well as maths, science, and standardized test prep. She is based in France and especially enjoy traveling as much as possible and discovering different cultures and languages.", "avatar": "https://cfp.pycon.fr/media/avatars/mj_photo_iOx2pes.jpg"}], "title": "Teaching Children Python\u202f\u2013 What Works?", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Have you ever tried to teach your kids programming? Do you have friends trying to learn as an adult? Have you ever wondered if you would have been better off learning to code earlier in life? The push for more people to learn to code has caused an explosion in the educational industry. Boot camps and certification programs of dramatically varying quality have emerged in nearly every corner of the world. These programs are often accompanied by lofty claims and promises. Children have been no exception to this, as more and more companies attempt to capitalize on the claim that children should start learning early because it's \"like learning a language\". However, research suggests that this might not be the most solid argument. What benefits are there in teaching them early? How do children acquire programming knowledge? How does our language around the concepts affect their understanding? Can the answer to these questions inform how we teach adults coming in from non-STEM fields? This talk will focus on these questions by presenting the current data we have, in conjunction with anecdotal evidence from sessions with children who code in python.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T10:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 128, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "MMKK3N", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-16T14:40:46.025924+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "UNYDSY", "speakers": [{"code": "FD7UPW", "name": "Dorian Turba", "biography": "", "avatar": null}, {"code": "CS7XHU", "name": "Karine Bauch", "biography": null, "avatar": null}], "title": "Zero Python", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Zero Python, a minimalist learning Python tool stripping back features to the bare essentials. This talk delves into coding without for loops, try-excepts, method calls, most built-ins and more (or less ;) ), challenging traditional approaches and fostering creativity in constraint-based programming.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T10:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 3, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "UNYDSY", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-08T22:59:14.155226+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "7": {"code": "L8X9WW", "speakers": [{"code": "CPUYPE", "name": "Pierre-Loic Bayart", "biography": "Ing\u00e9nieur en g\u00e9nie \u00e9nerg\u00e9tique et nucl\u00e9aire de formation, j'ai d\u00e9couvert le langage Python en 2012 gr\u00e2ce au Raspberry Pi. Compar\u00e9 au C, que j'ai \u00e9tudi\u00e9 durant mes \u00e9tudes et au VBA que j'utilisais dans mes postes d'ing\u00e9nieur, Python m'a imm\u00e9diatement s\u00e9duit par sa diversit\u00e9 d'applications et sa facilit\u00e9 d'utilisation. Apr\u00e8s sept ann\u00e9es pass\u00e9es dans l'ing\u00e9nierie nucl\u00e9aire, fascin\u00e9 par l'essor de l'\u00e9cosyst\u00e8me de la data science en Python, j'ai d\u00e9cid\u00e9 de changer de carri\u00e8re en 2016 pour devenir formateur ind\u00e9pendant en donn\u00e9es et intelligence artificielle.\r\n\r\nDepuis septembre 2023, je suis ing\u00e9nieur de recherche p\u00e9dagogique en intelligence artificielle \u00e0 l'Institut interdisciplinaire d'intelligence artificielle de Grenoble (MIAI), travaillant sur le projet de l'\u00c9cole fran\u00e7aise de l'intelligence artificielle (EFELIA). Je co-anime \u00e9galement le Meetup Python de Grenoble et je suis b\u00e9n\u00e9vole dans deux associations, Data for Good et Latitudes, qui \u0153uvrent pour un d\u00e9veloppement num\u00e9rique raisonn\u00e9.", "avatar": null}], "title": "Partage d'exp\u00e9riences sur l'animation d'une communaut\u00e9 Python", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "L'objectif de cet atelier est de partager des exp\u00e9riences et des bonnes pratiques sur l'organisation d'\u00e9v\u00e9nements locaux autour de Python, tels que des Meetups. Cet atelier s'adresse \u00e0 la fois aux personnes d\u00e9j\u00e0 impliqu\u00e9es dans l'organisation d'\u00e9v\u00e9nements et \u00e0 celles souhaitant se lancer dans l'animation d'une communaut\u00e9 Python locale. Voici quelques axes de discussion :\r\n\r\n- Quels lieux choisir pour organiser les \u00e9v\u00e9nements ?\r\n- Quels outils utiliser pour la communication ?\r\n- Quelle fr\u00e9quence adopter pour les \u00e9v\u00e9nements ?\r\n- Quels formats d'\u00e9v\u00e9nements privil\u00e9gier ?\r\n- ...", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 7, "room": {"en": "C05", "fr": "C05"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T12:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 203, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "L8X9WW", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T18:05:09.176841+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "3W3VTR", "speakers": [{"code": "EEJCZU", "name": "Thevenel Joazard", "biography": "", "avatar": null}], "title": "Wagtail\u202f: un CMS puissant pour les sites web modernes", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Vous cherchez un syst\u00e8me de gestion de contenu (CMS) performant et facile \u00e0 prendre en main pour votre site web ? Je vous pr\u00e9sente Wagtail, un CMS bas\u00e9 sur **Python** et **Django**, qui r\u00e9volutionne la cr\u00e9ation et la gestion de sites web dynamiques.\r\n\r\n**Public cible:** \r\n- D\u00e9veloppeurs web \u00e0 la recherche d'une solution CMS flexible et efficace.\r\n- \u00c9diteurs de contenu et cr\u00e9ateurs de sites web en qu\u00eate d'une interface d'\u00e9dition intuitive.\r\n- Chefs de projet int\u00e9ress\u00e9s par une plateforme \u00e9volutive pour le d\u00e9veloppement de sites web.\r\n\r\n**Objectifs de la pr\u00e9sentation :**\r\n- D\u00e9couvrir les fonctionnalit\u00e9s principales de Wagtail.\r\n- Comprendre les avantages de Wagtail par rapport aux CMS traditionnels.\r\n- Voir des exemples concrets d'utilisation de Wagtail.\r\n- Susciter l'int\u00e9r\u00eat pour explorer et adopter Wagtail.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T10:30:00+01:00", "end": "2024-11-02T10:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 48, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "3W3VTR", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-05-31T14:31:55.630883+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "660": {"1": {"code": "KT3V9P", "speakers": [{"code": "ZLAD93", "name": "Philippe Gregoire", "biography": "I am an old-timer passionate software developer (if you still code at this age, it means you're really hooked).\r\nI had been working for IBM in various technical roles since graduating in 1989, and switched about 3 years ago to work as a SW development consultant for Meritis PACA, a regional ESN based in Sophia Antipolis, France.\r\nAfter enjoying SW trends over the year, from C, C++, Java, I came to Python working on integrating the Pepper robot with then-emerging Cloud-based IA and IoT.\r\nThis naturally led me to get involved in python-based Data Science and ML.\r\nWorking as a consultant for my customer in the travel industry, I came to apply python development to production-grade level in Cloud-based environments, with a strong focus on software quality and continuous operability.", "avatar": "https://cfp.pycon.fr/media/avatars/378b5b78abe38333015dd43699cab2ff_bYq73mA.jpg"}], "title": "Comment et pourquoi (bien) tester en Python", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "* Petit retour th\u00e9orique sur les tests\r\n * La fameuse pyramide des tests... (ou la toupie, ou le clou, ou la tajine...)\r\n * unit, integration, end-to-end, ... tests\r\n * tests techniques ou fonctionnels, quel est le role de la QA?\r\n * Les diverses \u00e9coles et approches. full unit, unit through integration\r\n * Restons bien couverts: Le coverage, ses bienfaits et ses travers\r\n * Code coverage, branch coverage...\r\n * Attention \u00e0 ne pas p\u00eacher par omission\r\n * Comment \u00e9valuer ses besoins et sa compl\u00e9tude en tests\r\n * 100% c'est bien mais c'est pas assez...\r\n * tester \u00e0 200%, 300% ??\r\n * A trop tester on teste mal... Sachons raison garder\r\n* Technologies de test\r\n * Ducky (le canard) s'mock-on? Le `Mocking`\r\n * Faut-il piquer le canard? Injection vs Mock\r\n* Tests et Coverage, les IDEs \u00e0 la rescousse!\r\n * petite demo d'integration des tests et coverage dans VSCode.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T11:00:00+01:00", "end": "2024-11-02T11:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 153, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "KT3V9P", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-19T17:11:45.356160+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "CERM79", "speakers": [{"code": "GGLDAR", "name": "Samuel de Framond", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/16279fecd2640d2fbad3bd93b5d0ff1f_YDeE8FJ.jpg"}], "title": "Covariance de type, contravariance et aspirine", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Progressivement, python supporte de mieux en mieux le **typage statique**.\r\n\r\nCette conf\u00e9rence d\u00e9mystifie le concept de **variance de type** afin de pouvoir utiliser toute la puissance de ces nouvelles fonctionnalit\u00e9s. \r\n\r\nNous en tirerons quelques **bonnes pratiques concr\u00e8tes** \u00e0 utiliser tous les jours.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T11:00:00+01:00", "end": "2024-11-02T11:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 188, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "CERM79", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-21T12:03:19.501115+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "BMZUPU", "speakers": [{"code": "J3F7KS", "name": "Reynald Riviere", "biography": "", "avatar": null}, {"code": "XLUTSY", "name": "Hasco\u00ebt Camille", "biography": "Je suis un passionn\u00e9 d'intelligence artificielle, avec une exp\u00e9rience enrichissante dans la recherche pour une IA plus \u00e9cologique, acquise lors de mon stage de fin d'\u00e9tudes. J'ai eu l'opportunit\u00e9 de combiner ces deux domaines fascinants et de partager mes connaissances \u00e0 plusieurs reprises lors de talks et m\u00eame d'ateliers/formations.", "avatar": "https://cfp.pycon.fr/media/avatars/linkedin_AiGS2ly.jpeg"}], "title": "IA, potion ou poison ?", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Green AI, est-ce la nouvelle r\u00e9bellion de nerds \u00e9colos ?\r\nL\u2019IA, ce n\u2019est pas juste du code python pour cr\u00e9er un mod\u00e8le, c'est aussi un code de conduite. \r\nA l\u2019\u00e8re de l\u2019urgence climatique, \"coder vert\" c'est comme trier ses d\u00e9chets.\r\nLes r\u00e8gles du jeu changent et nous data scientists avons le devoir de se mettre au vert.\r\n\r\nDans notre talk qui ne se veut non plus d\u00e9nonciateur de notre profession, nous y pr\u00e9senterons une m\u00e9thode pour faire des IA frugales ! Nous vous montrerons des pratiques concr\u00e8tes et applicables pour r\u00e9duire de moiti\u00e9 la consommation \u00e9nerg\u00e9tique de nos chers r\u00e9seaux de neurones ... sans qu\u2019ils perdent le nord pour autant. On y verra comment PyTorch permet d'optimiser les nombreux calculs matriciels de nos IA.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-02T11:00:00+01:00", "end": "2024-11-02T11:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 151, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "BMZUPU", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-19T12:06:07.561487+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "HDMKBS", "speakers": [{"code": "SZ3H8V", "name": "Carmen Alvarez", "biography": "Backend developer at Genymobile, working on the Genymotion Cloud SaaS application.", "avatar": "https://cfp.pycon.fr/media/avatars/1704218900512_0YJUGG0.jpeg"}], "title": "Optimizing SQL Queries in Django and SQLAlchemy: Tackling the N+1 Problem with ORMs", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "In this talk, we will introduce the N+1 query problem, a common pitfall encountered when using Object-Relational Mappers (ORMs) like Django's ORM and SQLAlchemy. We'll see how ORMs simplify our lives compared to maintaining raw SQL queries.\r\n\r\nWe'll demonstrate how to debug the SQL queries generated by the ORM.\r\n\r\nWe'll explain the concept of lazy loading in ORMs and how it can lead to the N+1 query problem if we're not careful. Using a practical example of a CRUD application, we'll show how lazy loading can result in multiple SQL queries, thus degrading performance.\r\n\r\nWe will then provide a solution to the N+1 problem by using the select_related method in Django or joinedLoad in SQLAlchemy to optimize query performance, reducing the number of SQL queries to just one.\r\n\r\nAdditionally, we'll introduce Django's CaptureQueriesContext and get_record_queries from Flask-SQLAlchemy, tools that can be used in unit tests to ensure that our application remains optimized as it evolves, preventing regressions related to N+1 queries.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T11:00:00+01:00", "end": "2024-11-02T11:55:00+01:00"}, "image": null, "resources": [{"resource": "https://docs.google.com/presentation/d/1kyjjEuIE3h_NPaVvrsx1MtsdXrAHGTmi-EUxq25dSCE/edit", "description": "Google slides"}], "answers": [{"id": 81, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Intermediate", "answer_file": null, "submission": "HDMKBS", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-01T10:41:26.117379+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "690": {}, "720": {"1": {"code": "TPW3KE", "speakers": [{"code": "WBWCRW", "name": "Julien Lenormand", "biography": "Ing\u00e9nieur DevOps et Responsable Software \u00e0 Kaizen Solutions\r\n\r\nD\u00e9veloppeur Python convaincu par l'Agile, le Craft, Accelerate et la philosophie grecque antique.\r\nConsultant dans de grands groupes industriels (SNCF, EDF, Thales, Schneider).\r\nMeetupeur grenoblois investi : Human Talks, Python, Craft et Web.\r\nOrganisateur d'\u00e9v\u00e8nements, speaker et accompagnant technique \u00e0 Kaizen Solutions.", "avatar": "https://cfp.pycon.fr/media/avatars/bcca0b5a3f34e5dabbf75c5197e35999_2yP9rhZ.jpg"}], "title": "Je fais encore du Python\u202f2 en 2024\u2026", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Et c'est infernal ! Mais pourquoi s'infliger cette douleur ? Et au fait, qu'est-ce que \u00e7a change ?\r\n\r\nJe voudrais vous partager ma frustration de devoir encore maintenir du code dans une version d\u00e9pr\u00e9ci\u00e9e du langage (c'est-\u00e0-dire vous vanter toutes les bonnes choses de Python3 !). Et ce sera l'occasion de faire un petit retour sur les origines du Python que nous aimons tant, son h\u00e9ritage qui perdure encore aujourd'hui (pour le meilleur et parfois pour le pire !).\r\n\r\nVous ferez gaffe \u00e0 la prochaine offre d'emploi qui ne pr\u00e9cise pas la version de Python ! :D", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T12:00:00+01:00", "end": "2024-11-02T12:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 143, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "TPW3KE", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-18T18:13:28.761315+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "XQQGMC", "speakers": [{"code": "RFSKWG", "name": "Michal Korbela", "biography": "Michal is a Staff Backend Developer at Kiwi.com, where he works extensively with Python and Go languages to build large-scale systems processing billions of travel itineraries daily. \r\nHe is passionate about improving the developer experience and creating exciting open-source tooling like the Flask-Ninja package. \r\nMichal is always enthusiastic about discussing new features, industry developments, and the latest advancements in technology.", "avatar": "https://cfp.pycon.fr/media/avatars/Sn%C3%ADmka_obrazovky_zo_d%C5%88a_2024-07-21_23-07-29_32fh3qq.png"}], "title": "Easy Service to Service Communication Using Pydantic Models", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Microservices architecture, while offering flexibility and scalability, introduces significant complexity in communication between services. Each API call involves creating and parsing request and response bodies on both the server and client sides, not to mention additional challenges like validation and maintaining API documentation. This multi-step process adds considerable overhead to both development and integration.\r\n\r\nFastAPI and Pydantic have made substantial improvements in managing these complexities on the server side. However, when using frameworks like Django or Flask, similar efficiencies can be harder to achieve. Despite these server-side advancements, simplifying the client-side experience remains crucial. One key challenge is managing request and response models without duplicating them across services.\r\n\r\nIn this session, we will demonstrate easy generation of OpenAPI documentation for Django or Flask servers using django-ninja and flask-ninja packages. Additionally we show sharing Pydantic models from the server with clients through Python packages that significantly simplify integration and eliminate code duplication.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T12:00:00+01:00", "end": "2024-11-02T12:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 215, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "XQQGMC", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-21T23:59:23.728182+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "750": {"8": {"code": "MRHUVD", "speakers": [{"code": "MNMGGN", "name": "Lucie Anglade", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_IVxfMJT.jpg"}, {"code": "YBWBW8", "name": "Sarah Abderemane", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/7684d945a38d1c60e64cae48dc0b7b29_maEI1Pp.jpg"}, {"code": "V9ANYB", "name": "Mojdeh Rastgoo", "biography": null, "avatar": null}], "title": "D\u00e9jeuner PyLadies / PyLadies Lunch", "submission_type": {"en": "Lunch", "fr": "D\u00e9jeuner"}, "submission_type_id": 7, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "(English below)\r\n\r\nLa PyConFR accueille un d\u00e9jeuner PyLadies. Ce d\u00e9jeuner est gratuit mais une [inscription est demand\u00e9e](https://www.helloasso.com/associations/afpy/evenements/dejeuner-pyladies-a-la-pyconfr-2024).\r\n\r\nDestin\u00e9 \u00e0 rassembler les femmes ([cis](https://fr.wikipedia.org/wiki/Cisgenre) et [trans](https://fr.wikipedia.org/wiki/Transgenre)), les hommes [trans](https://fr.wikipedia.org/wiki/Transgenre), les personnes [non-binaires](https://fr.wikipedia.org/wiki/Non-binaire) ou les [agenr\u00e9\u22c5es](https://fr.wikipedia.org/wiki/Non-binarit%C3%A9#Identit%C3%A9s_de_genre) qui font du Python, cet \u00e9v\u00e9nement a pour but de les aider \u00e0 devenir des membres actifs et des moteurs de la communaut\u00e9. Un des objectifs est \u00e9galement de tisser des liens entre la communaut\u00e9 PyLadies et le reste de la communaut\u00e9 Python francophone.\r\n\r\nCe d\u00e9jeuner est organis\u00e9 par l'Association Francophone Python et Sarah Abderemane, du [chapitre parisien de PyLadies](http://www.pyladies.com/locations/paris/)\u202f; et est sponsoris\u00e9 par Kraken Tech.\r\n\r\nR\u00e9serv\u00e9 aux femmes ([cis](https://fr.wikipedia.org/wiki/Cisgenre) et [trans](https://fr.wikipedia.org/wiki/Transgenre)), aux hommes [trans](https://fr.wikipedia.org/wiki/Transgenre), aux personnes [non-binaires](https://fr.wikipedia.org/wiki/Non-binaire) et aux [agenr\u00e9\u22c5es](https://fr.wikipedia.org/wiki/Non-binarit%C3%A9#Identit%C3%A9s_de_genre), nous demandons aux hommes [cis](https://fr.wikipedia.org/wiki/Cisgenre) de ne pas s'inscrire ou de tenter de participer \u00e0 ce d\u00e9jeuner.\r\n\r\nLe repas sera compos\u00e9 d'un buffet compatible avec les r\u00e9gimes alimentaires v\u00e9g\u00e9tarien et v\u00e9gan.\r\n\r\n// English\r\n\r\nPyConFR hosts a PyLadies luncheon. This lunch is free but [registration is required](https://www.helloasso.com/associations/afpy/evenements/dejeuner-pyladies-a-la-pyconfr-2024).\r\n\r\nAimed at bringing together women ([cis](https://en.wikipedia.org/wiki/Cisgender) and [trans](https://en.wikipedia.org/wiki/Transgender)), [trans](https://en.wikipedia.org/wiki/Transgender) men, [non-binary](https://en.wikipedia.org/wiki/Non-binary_gender) or [agender](https://en.wikipedia.org/wiki/Non-binary_gender#Agender) people who do Python, this event is designed to help them become active members and drivers of the community. One of the aims is also to forge links between the PyLadies community and the rest of the French-speaking Python community.\r\n\r\nThis luncheon is oragnized by the Association Francophone Python and Sarah Abderemane, from the [Paris chapter of PyLadies](http://www.pyladies.com/locations/paris/); funded by Kraken Tech.\r\n\r\nReserved for women ([cis](https://en.wikipedia.org/wiki/Cisgender) and [trans](https://en.wikipedia.org/wiki/Transgender)), [trans](https://en.wikipedia.org/wiki/Transgender) men, [non-binary](https://en.wikipedia.org/wiki/Non-binary_gender) and [agender](https://en.wikipedia.org/wiki/Non-binary_gender#Agender) people, we ask [cis](https://en.wikipedia.org/wiki/Cisgender) men not to register or attempt to attend this lunch.\r\n\r\nThe meal will consist of a buffet compatible with vegetarian and vegan diets.", "duration": 85, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 8, "room": {"en": "C06", "fr": "C06"}, "start": "2024-11-02T12:30:00+01:00", "end": "2024-11-02T13:55:00+01:00"}, "image": null, "resources": [], "answers": [], "created": "2024-08-07T10:01:46.348048+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "780": {}, "810": {"2": {"code": "NKNHFZ", "speakers": [{"code": "ZGGVHD", "name": "Riccardo Magliocchetti", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/61ba6f6b1fb82707b9344259f74a81b3_MjsKE1N.jpg"}], "title": "Anatomy of a Python OpenTelemetry instrumentation", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "OpenTelemetry Python instrumentations may seem indistinguishable from magic: they can be bootstrapped from your installed dependencies, they are able to patch your code without even noticing and most often they work out of the box automatically! Fortunately there's no magic spell involved and they are mostly the combination of not well known Python features, standing on the shoulders of powerful libraries and work done by the community to improve the reach and the quality of the code. Let's dig a bit into the code to see what's inside the black box.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T13:30:00+01:00", "end": "2024-11-02T13:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 2, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "NKNHFZ", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-05-08T22:28:23.903611+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "LWYFJB", "speakers": [{"code": "NCL3FZ", "name": "L\u00e9o Ecrepont", "biography": "Je suis dipl\u00f4m\u00e9 en G\u00e9nie \u00c9lectrique de l'INSA de Strasbourg. Passionn\u00e9 par les technologies, j'ai d'abord explor\u00e9 l'\u00e9lectronique avant de me lancer dans le d\u00e9veloppement informatique appliqu\u00e9 \u00e0 l'industrie.\r\n\r\nFort de 8 ann\u00e9es d'exp\u00e9rience en tant que d\u00e9veloppeur Python, j'ai eu l'opportunit\u00e9 de participer \u00e0 divers projets qui m'ont permis de consolider mes comp\u00e9tences, que je perfectionne chaque jour. J'ai notamment travaill\u00e9 dans le secteur automobile en Allemagne, puis \u00e0 la direction du mat\u00e9riel de la SNCF sur un projet de datascience visant \u00e0 instaurer la maintenance pr\u00e9dictive des \u00e9quipements.\r\n\r\nDepuis mi-2023, je fais partie de l'\u00e9quipe de Mergify, compos\u00e9e d'experts en CI/CD. Notre mission est d'am\u00e9liorer la qualit\u00e9 et la rapidit\u00e9 du d\u00e9veloppement informatique chez nos clients gr\u00e2ce \u00e0 des outils de pointe.", "avatar": "https://cfp.pycon.fr/media/avatars/1571999945224_mpMNhcz.jpg"}], "title": "Garantir la robustesse du CI/CD des BDD relationnelles avec SQLAlchemy et Alembic", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Les changements effectu\u00e9s sur une base de donn\u00e9es de production sont toujours un moment risqu\u00e9, crucial, chronophage et pouvant m\u00eame rendre l\u2019application momentan\u00e9ment indisponible. Dans le contexte du Continuous Delivery, de nombreux changements de mod\u00e8les ou d\u2019attributs peuvent advenir dans la m\u00eame journ\u00e9e.\r\n\r\nComment garantir la s\u00e9curit\u00e9 du d\u00e9ploiement, l\u2019int\u00e9grit\u00e9 des donn\u00e9es de production et une continuit\u00e9 parfaite du service dans un processus enti\u00e8rement automatis\u00e9 ?\r\n\r\nDans cette pr\u00e9sentation, nous parlerons du cheminement qui nous conduit aux migrations automatis\u00e9es. Puis nous parlerons d\u2019un ensemble de techniques pouvant \u00eatre mises en place avec les librairies SQLAlchemy et Alembic, afin d\u2019automatiser et consolider le CI/CD et ainsi d\u00e9ployer sans risque ni interruption les migrations de sch\u00e9ma de base de donn\u00e9es.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T13:30:00+01:00", "end": "2024-11-02T13:55:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/LWYFJB/resources/changements_bdd_ci_cd_pyconfr24_ecrepont_leo_bNTc6L1.pdf", "description": "slides"}], "answers": [{"id": 66, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "LWYFJB", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-14T16:46:21.173791+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "Q3NGHD", "speakers": [{"code": "DDMNFT", "name": "Melcore", "biography": "Stand-upper en devenir, humoriste d'internet, et vice pr\u00e9sident de l'AFPy.", "avatar": null}], "title": "Pythonade\u202f\u2013 Humour en Python", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Blague de dev, croissantage, XKCD\u2026 l\u2019humour a toujours \u00e9t\u00e9 au c\u0153ur de la communaut\u00e9 des d\u00e9veloppeurs. Avec \u201c**Les Pythonades**\u201d, plongez dans un tourbillon de rires et de code. D\u00e9couvrez un sketch sur les boucles infinies, les erreurs de syntaxe, et les modules qui disparaissent myst\u00e9rieusement. \u00c0 travers des anecdotes cocasses et des gags sur les gal\u00e8res du quotidien des d\u00e9veloppeurs, cette conf\u00e9rence courte c\u00e9l\u00e8bre les joies et les frustrations de la programmation en Python.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T13:30:00+01:00", "end": "2024-11-02T13:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 207, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "Q3NGHD", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T22:38:25.781733+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "840": {"2": {"code": "YFKQHF", "speakers": [{"code": "BDKLGC", "name": "Johannes Bechberger", "biography": "Johannes Bechberger is a JVM developer working on profilers and their underlying technology in the SapMachine team at SAP. He started at SAP in 2022 after two years of research studies at the KIT in Java security analyses. His work today comprises many open-source contributions and his blog, where he writes regularly on in-depth profiling and debugging topics and works on his JEP Candidate 435 to add a new profiling API to the OpenJDK. He has been an avid Python user for almost 10 years, with a special interest in type systems and debuggers.\r\nSince 2023 he's touring through the meet-ups and conferences of Europe, like JavaZone and Devoxx Belgium to speak on various topics.", "avatar": "https://cfp.pycon.fr/media/avatars/1D4_0564_memostlynerdless.de_smallest_GrpdTcf.jpg"}], "title": "Python 3.12's New Monitoring and Debugging API", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Python long lagged a good monitoring and profiling API. It had only the simplistic sys.settrace API, which had a high overhead and couldn't be configured appropriately. The new API, released in October 2023, will change this by offering a proper fine-grained and well-designed monitoring API while also making the commonly used operations fast.\r\n\r\nThis talk will give you an introduction to the new API and its design major design decisions and show you how you can use it to write a simple debugger from scratch.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 64, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "YFKQHF", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-06-14T13:10:34.279309+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "6": {"code": "WFPYJE", "speakers": [{"code": "K8NGW8", "name": "Mykalin Jones", "biography": "Mykalin Jones is a Particle Physicist-turned-Data Analyst with over a decade of teaching experience. She has written curricula for various topics including Python for Children, The Basics of Python, Intermediate Python, and Data Science for Beginners. She provides individual and group classes on all of these topics as well as maths, science, and standardized test prep. She is based in France and especially enjoy traveling as much as possible and discovering different cultures and languages.", "avatar": "https://cfp.pycon.fr/media/avatars/mj_photo_iOx2pes.jpg"}, {"code": "CYANQX", "name": "Anne Francia", "biography": "\u00c9tudiante en Master CAWEB, j'aspire \u00e0 devenir d\u00e9veloppeuse web full stack. Je me lance donc pleinement dans le monde informatique en participant \u00e0 Pycon 2024, notamment en me portant volontaire en tant qu'assistante de conf\u00e9rence. (Merci \u00e0 Mykalin Jones)", "avatar": "https://cfp.pycon.fr/media/avatars/li-profile-photo-400-x-400-img_2023-07-01-19-39-01-577-jpg_custom_resized_nHRaH99.jpg"}], "title": "Your First Web App in Python \u2013 Build a Frontend for Your Data Science Project!", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Are you eager to create and deploy your first web application but unsure where to start? This hands-on workshop is designed for beginners who want to dive into the world of web app development in Python. This workshop will introduce you to popular libraries you may want to consider when building a front-end for your data science project. We will discuss considerations before starting a project such as: project complexity, ease of use of various libraries, performance, scalability, development speed, maintenance effort, security, and costs. We will also cover accessibility and managing bilingual apps. By the end of this session, you will have built a fully functional web application and deployed it live on the internet using Streamlit.", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 6, "room": {"en": "C04", "fr": "C04"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 129, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "WFPYJE", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-16T15:01:16.256363+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "R3JB9K", "speakers": [{"code": "PXTG9M", "name": "Arthur Vuillard", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/arthur_portrait_f1NhX7m.jpg"}], "title": "Tout ce que vous ne vouliez pas savoir sur le DNS... en Python", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "DNS c'est facile, c'est juste un annuaire qui fait le lien entre un nom human-readable et une adresse IP.\r\n\r\nAlors oui, mais non. DNS est beaucoup plus que \u00e7a !\r\n\r\nAu cours de cette pr\u00e9sentation, je vais vous expliquer quelques fonctionnement fondamentaux du DNS, et d'Internet, avec des exemples illustr\u00e9s en Python, parce que c'est la PyConFr", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 155, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "R3JB9K", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-19T20:54:20.193325+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "C9W8ZZ", "speakers": [{"code": "MHGEXV", "name": "Virginie Dewulf", "biography": "Virginie est la directrice ex\u00e9cutive de l'OCA, Odoo Community Association depuis cette ann\u00e9e. En 2018 et 2022, elle a co-fond\u00e9 deux coop\u00e9ratives \u00e0 Bruxelles, l'une dans les services autour du logiciel de gestion Odoo (Coop IT Easy) qui propose des solutions de gestion libres au secteur de l'\u00e9conomie sociale et solidaire, l'autre dans le secteur de la comptabilit\u00e9, toujours autour d'outils de gestion libres.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_pic_virginie_dewulf_O4zXect.png"}, {"code": "UGZPGE", "name": "Pierre Verkest", "biography": "Auto-entrepreneur, j'accompagne les entreprises sur l'ensemble du cycle de vie de leurs applications m\u00e9tiers, int\u00e9gr\u00e9es dans leur \u00e9cosyst\u00e8me opensource.\r\n\r\nDe formation g\u00e9om\u00e8tre topographe, je suis tr\u00e8s vite attir\u00e9 par le d\u00e9veloppement d'outil pour me simplifier les t\u00e2ches. J\u2019approfondis ma soif d'apprendre avec une licence dans les Syst\u00e8me d'Information G\u00e9orgraphique (SIG), je tests et d\u00e9couvres plusieurs langages de programmations et technologies.\r\n\r\nAu fils de mes exp\u00e9riences, depuis 2012, j'arrive au d\u00e9veloppement et l'int\u00e9gration d'outils de gestion pour les entreprises d\u00e9velopp\u00e9 en python - ce langage ne me quitte plus depuis !\r\n\r\nAujourd'hui encore, passionn\u00e9 par les m\u00e9tiers de l'informatique, j'explore l'univers num\u00e9rique et ses \u00e9co-syst\u00e8mes de leurs utilisations aux m\u00e9thodes de gestion de projet en passant par le cycle de d\u00e9veloppement des projets.", "avatar": "https://cfp.pycon.fr/media/avatars/1fa58452b26390ffc82dc22c149d8bea_Lg87UMW.jpg"}], "title": "\u00c0 la d\u00e9couverte de la communaut\u00e9 libre autour de l'outil de gestion Odoo", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Odoo est un outil de gestion d\u2019entreprise avec un mod\u00e8le \u00e9conomique open core.\r\n\r\nEn tant que libristes, nous sommes convaincus de la n\u00e9cessit\u00e9 des outils de gestion libres pour les entreprises. Nous vous partageons nos convictions et nos exp\u00e9riences pour y arriver dans l'\u00e9cosyst\u00e8me Odoo : Odoo S.A., l\u2019Odoo Community Association (OCA), l\u2019association Odoo espagnole (AEOdoo), l\u2019association Odoo Italia, \u2026", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 150, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "C9W8ZZ", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-19T11:59:25.196711+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "7DNDLP", "speakers": [{"code": "7LRXXV", "name": "Agn\u00e8s Haasser", "biography": null, "avatar": null}], "title": "Temp\u00eate de boulettes g\u00e9antes\u202f\u2013 le retour", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Qui, parmi les d\u00e9veloppeuses et d\u00e9veloppeurs, n\u2019a jamais gaff\u00e9 ? N\u2019a aucune boulette \u00e0 raconter ? N\u2019a pas d\u2019erreur tr\u00e8s embarrassante dans son historique ? Aucun\u00b7e. Comme le dit le dicton, il y a deux sortes de technicien\u00b7ne\u00b7s : celles et ceux qui ont d\u00e9j\u00e0 fait tomber un serveur, et celles et ceux \u00e0 qui \u00e7a va bient\u00f4t arriver.\r\n\r\nJe suis d\u00e9veloppeuse depuis bient\u00f4t 15 ans, j\u2019appartiens r\u00e9solument \u00e0 la premi\u00e8re cat\u00e9gorie.\r\nLaissez-moi vous raconter l\u2019histoire de ma plus Grande Boulette de Tous Les Temps, et les Grandes Boulettes des autres. Rions un brin. Puis r\u00e9fl\u00e9chissons, apprenons, progressons. Laissons-nous illuminer par la pure essence des Boulettes pour progresser en tant que dev, en tant qu\u2019\u00e9quipe, en tant que personnes. Si, si, c\u2019est possible.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 6, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "7DNDLP", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-14T11:30:24.761069+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "5": {"code": "JTPUNL", "speakers": [{"code": "XDAMDT", "name": "Thierry Chappuis", "biography": "Apr\u00e8s des \u00e9tudes d'ing\u00e9nieur et un doctorat \u00e0 l'Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne, je suis professeur de chimie industrielle et de mod\u00e9lisation au sein de l'institut ChemTech \u00e0 la Haute Ecole d'Ing\u00e9nierie et d'Architecture de Fribourg (Suisse), et formateur freelance avec PlacePython, . Dans le contexte de mes travaux de recherche et d'enseignement, j'utilise Python pour ses qualit\u00e9s en mati\u00e8re de programmation web et d'APIs (essentiellement avec Django et Django Rest Framework), d'analyse de donn\u00e9es et d'apprentissage statistique, notamment pour l'optimisation et le contr\u00f4le de proc\u00e9d\u00e9s chimiques industriels. \r\nA ma sortie du bureau, je m'int\u00e9resse aux diff\u00e9rentes innovations du langage et \u00e0 leur enseignement. Dans ce contexte, je forme en ligne des adultes en reconversion sur Python, Django et Wagtail depuis 2017. Utilisateur de Python depuis sa version 2.0, je scripte ma vie en .py au quotidien et j'essaie \u00e0 chaque occasion de transmettre cette passion. \r\nBref! Python est une composante essentielle de ma vie depuis plus de 20 ans et mon couteau suisse digital.", "avatar": "https://cfp.pycon.fr/media/avatars/Thierry_mv6A1az.png"}, {"code": "F8FZBM", "name": "Gabriel Trouv\u00e9", "biography": null, "avatar": null}], "title": "Cr\u00e9ez votre site web dynamique avec Wagtail\u202f: un CMS puissant et flexible", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Vous souhaitez d\u00e9couvrir un syst\u00e8me de gestion de contenu (CMS) moderne et flexible pour cr\u00e9er des sites web dynamiques ? Rejoignez notre workshop d\u00e9di\u00e9 \u00e0 Wagtail, un CMS open source bas\u00e9 sur Django, reconnu pour sa simplicit\u00e9, sa puissance et son extensibilit\u00e9. Que vous soyez d\u00e9veloppeur d\u00e9butant ou exp\u00e9riment\u00e9, ce workshop vous fournira les comp\u00e9tences n\u00e9cessaires pour tirer parti de Wagtail et cr\u00e9er des sites web personnalis\u00e9s et performants.\r\n\r\nLe workshop d\u00e9butera par une introduction \u00e0 Wagtail, o\u00f9 nous pr\u00e9senterons ses principales fonctionnalit\u00e9s et le comparerons \u00e0 d'autres CMS populaires, en soulignant les avantages de son utilisation dans des projets web. Vous apprendrez ensuite \u00e0 installer et configurer Wagtail, avec une attention particuli\u00e8re sur la cr\u00e9ation de votre premier projet Wagtail.\r\n\r\nNous passerons ensuite \u00e0 la cr\u00e9ation de pages et de contenus, en expliquant la structure de donn\u00e9es de Wagtail et en montrant comment cr\u00e9er des mod\u00e8les de page et utiliser les blocs de contenu StreamField. Vous verrez \u00e9galement comment g\u00e9rer les contenus, en ajoutant, modifiant et organisant les informations de mani\u00e8re efficace.\r\nLa personnalisation et l'extensibilit\u00e9 de Wagtail seront \u00e9galement abord\u00e9es. Vous apprendrez \u00e0 ajouter des fonctionnalit\u00e9s personnalis\u00e9es, \u00e0 \u00e9tendre les capacit\u00e9s du CMS, et int\u00e9grer Wagtail avec d'autres applications Django. Nous aborderons \u00e9galement la gestion des utilisateurs et des permissions, en configurant les r\u00f4les et les permissions pour une gestion fine des utilisateurs, et en personnalisant l'interface d'administration pour les \u00e9diteurs de contenu.\r\n\r\nEnfin, nous discuterons des bonnes pratiques pour optimiser la performance de votre site Wagtail, et des strat\u00e9gies de d\u00e9ploiement et d'h\u00e9bergement de votre application.\r\nL'objectif de ce workshop est de vous offrir une immersion compl\u00e8te dans l'univers de Wagtail, en vous fournissant les outils et les connaissances n\u00e9cessaires pour cr\u00e9er et g\u00e9rer des sites web dynamiques. Vous repartirez avec une compr\u00e9hension approfondie de Wagtail, pr\u00eat \u00e0 l'utiliser pour vos propres projets web.\r\n\r\nCe workshop s'adresse aux d\u00e9veloppeurs web, aux designers, aux gestionnaires de contenu, ainsi qu'\u00e0 toute personne int\u00e9ress\u00e9e par la cr\u00e9ation de sites web dynamiques avec un CMS moderne et flexible. Une connaissance de base de Django et du d\u00e9veloppement web est recommand\u00e9e, mais pas obligatoire.\r\n\r\nRejoignez-nous pour ce workshop interactif et pratique, et d\u00e9couvrez comment Wagtail peut transformer votre mani\u00e8re de cr\u00e9er et de g\u00e9rer des sites web.", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 5, "room": {"en": "C01", "fr": "C01"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 160, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "JTPUNL", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-20T15:09:12.541055+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "7": {"code": "KZTCQS", "speakers": [{"code": "ZZKWMM", "name": "Soufiane Khoudmi", "biography": "Anciennement Data Science Manager, je suis passionn\u00e9 par les approches data et analytiques qui commencent par le business, finissent par le business, avec de la tech au milieu.\r\n\r\nJ'ai d\u00e9cid\u00e9 de cr\u00e9er Make Open Data car j'ai toujours \u00e9t\u00e9 frustr\u00e9 de voir que les m\u00eames op\u00e9rations sur les m\u00eames donn\u00e9es publiques sont r\u00e9alis\u00e9es par des \u00e9quipes diff\u00e9rentes dans leurs coins.", "avatar": "https://cfp.pycon.fr/media/avatars/resized_6jlxmjQ.jpeg"}], "title": "Make Open Data\u202f: les donn\u00e9es publiques accessibles gr\u00e2ce \u00e0 la Modern Data Stack", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Utilisateurs potentiels par commune, Transactions immobili\u00e8res par d\u00e9partement, Nombre de logements vacants, etc\r\n\r\nEn voila des donn\u00e9es \u00e0 saupoudrer dans de la BI, des analyses ou des mod\u00e8les de machine learning pour donner plus de go\u00fbt aux produits et aux d\u00e9cisions.\r\n\r\nEt pourtant... Combien de tickets d'analyse ou d'exploration impliquant ces donn\u00e9es ont fini dans le cimeti\u00e8re du Backlog en raison de leur difficile exploitation ?\r\n\r\nMake Open Data a pour ambition de rendre les donn\u00e9es publiques comestibles en centralisant la logique d'ingestion, stockage, transformation, documentation, tests, etc.\r\n\r\nDans cet atelier nous allons examiner le potentiel d\u2019utilisation de ces donn\u00e9es pour enrichir des/vos applications et voir pourquoi il est necessaire d\u2019adopter des bonne pratiques en termes de data.\r\n\r\nOptionnel : vous pouvez vous familiariser avec le repo en le d\u00e9ployant en local ou dans le Cloud. \r\n\r\nM\u00eame si Make Open Data peut \u00eatre deploy\u00e9 sur une instance Postgre en local, une instance Postgres, avec des donn\u00e9es ing\u00e9r\u00e9s, dans le cloud peut-\u00eatre fournie pour faciliter les d\u00e9veloppements.\r\n\r\nQue vous soyez un pro de data ou pas, il s'agit d'une bonne opportunit\u00e9 de se faire la main avec des donn\u00e9es en production, volumineuses et ambigues.\r\n\r\nResources :\r\n\r\n- https://make-open-data.fr/\r\n- https://github.com/make-open-data/make-open-data\r\n- https://docs.getdbt.com/faqs/Project/example-projects\r\n- https://www.data.gouv.fr/fr/organizations/make-open-data/#/datasets", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 7, "room": {"en": "C05", "fr": "C05"}, "start": "2024-11-02T14:00:00+01:00", "end": "2024-11-02T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 195, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "KZTCQS", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T15:47:15.132956+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "870": {}, "900": {"3": {"code": "ZNCSVE", "speakers": [{"code": "SQBMFV", "name": "Christophe Papazian", "biography": "After a lifetime working in computer science at university, I'm now a software engineer at Datadog since 2022.", "avatar": null}], "title": "Quelques challenges techniques rencontr\u00e9s sur l'auto instrumentation", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Travaillant sur le traceur python de Datadog depuis deux ans, cette session vous pr\u00e9sentera quelques challenges techniques particuliers que nous avons rencontr\u00e9s en travaillant sur l'auto instrumentation des environments Python.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-02T15:00:00+01:00", "end": "2024-11-02T15:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 56, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "ZNCSVE", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-06T13:52:45.588860+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "XHB8Y7", "speakers": [{"code": "87HGZ8", "name": "Lorenzo Mele", "biography": "With over 20 years of experience in the IT sector and more than a decade dedicated to Python programming, I currently serve as the Python Tech Lead at Kraken Tech.\r\nBeyond technology, I am passionate about 'unrelated things' (philosophy, psychology, debate, ...) which I believe enrich my professional approach.\r\nI am also among the organizers of PyMI, the Python community in Milan.", "avatar": "https://cfp.pycon.fr/media/avatars/squared-me_05C7r09.jpeg"}], "title": "Programming and Philosophy: Beyond the Code", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Philosophy and programming intersect more than you could think.\r\nThis talk explores how philosophical principles can benefit programmers in addressing any challenge.\r\n\r\nWe\u2019ll start by examining key philosophical concepts, showing their relevance to our day-to-day job. \r\nWe'll see how philosophy can help navigate issues like ethics, AI, and developers' responsibilities.\r\n\r\nHistorically, programmers have engaged with philosophical questions, it's clear that philosophy is a crucial tool for addressing our profession's complexities, especially in 2024.\r\n\r\nThis talk is accessible to all programming levels, with no prior philosophical or programming knowledge required. Attendees should come with an open mind, ready to explore new perspectives.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T15:00:00+01:00", "end": "2024-11-02T15:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 59, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "XHB8Y7", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-07T18:07:53.811510+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "G9MTJS", "speakers": [{"code": "9ECLEP", "name": "HS-157", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/typhlo_ZFlC9Xc.png"}], "title": "Pathlib, mangez-en\u202f!", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Connaissez-vous cette merveilleuse biblioth\u00e8que qui permet de manipuler des chemins syst\u00e8me ?\r\nPr\u00e9sentation et d\u00e9monstration de cet outil formidable, facile d\u2019utilisation et disponible partout car \u00e9tant dans la biblioth\u00e8que standard.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T15:00:00+01:00", "end": "2024-11-02T15:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 169, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "G9MTJS", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-20T21:40:20.558700+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "QPGXP9", "speakers": [{"code": "7MTSUN", "name": "Guillaume Fassot", "biography": "Je suis Guillaume Fassot, d\u00e9veloppeur et data scientist passionn\u00e9 avec 5 ans d'experience, sp\u00e9cialis\u00e9 en Python, JavaScript et Rust. J'utilise principalement les frameworks NextJS, NodeJS et FastAPI pour mes projets.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_eVIoWik.png"}], "title": "Rust pour les d\u00e9veloppeurs Python : Avantages et int\u00e9gration", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "D\u00e9couvrez comment Rust peut compl\u00e9ter vos comp\u00e9tences en Python. Cette conf\u00e9rence explore les avantages de Rust en termes de performance et de s\u00e9curit\u00e9, et montre comment int\u00e9grer Rust dans vos projets Python existants. Apprenez \u00e0 tirer parti des points forts de chaque langage pour cr\u00e9er des applications plus efficaces et robustes.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T15:00:00+01:00", "end": "2024-11-02T15:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 178, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "QPGXP9", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-20T23:48:26.238902+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "930": {"3": {"code": "WQEXVB", "speakers": [{"code": "HKJWKJ", "name": "Corentin Normant", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/me_3dNmHcI.png"}, {"code": "JGHJ7S", "name": "Damien Ramelet", "biography": "Former forensic scientist, i am a self-taught Python and back-end developer for 4\u00a0years. After working for a FinTech company, i joined pass Culture in mid-2023, where we deal with millions of users every day.\r\nAt that scale, every line of code has to be carefully thought out. It\u2019s a challenging environment where i learn every day.\r\nDuring my spare time, i am a CTF\u00a0player (cybersecurity competitions). This allows me to go deep into a wide range of subjects that i would never encounter otherwise.", "avatar": "https://cfp.pycon.fr/media/avatars/IMG-20230710-WA0027_uj5yvjX.jpg"}], "title": "Mettre \u00e0 jour le sch\u00e9ma d\u2019une vaste base de donn\u00e9es sans downtime et sans stress", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Aujourd\u2019hui, le [pass Culture](https://pass.culture.fr) devient le GPS de la Culture pour 4 millions d\u2019utilisateurs avec plus de 200 millions d\u2019offres. \r\n\r\nDans ce contexte, comment appliquer sereinement une migration du sch\u00e9ma de base de donn\u00e9es *sans downtime* ?\r\n\r\nD\u00e9couvrez ce que nous avons mis en place pour \u00e9viter les incompatibilit\u00e9s entre code Python et tables Postgresql, verrouiller sans anicroche, et ce que nous avons appris sur le chemin.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-02T15:30:00+01:00", "end": "2024-11-02T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 138, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "WQEXVB", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-18T12:48:39.269861+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "XG8BFG", "speakers": [{"code": "LG3VYQ", "name": "Michel Kl\u00fcger", "biography": "As a Software Engineer, Michel engages in identifying, developing, and testing software solutions for IT-related work, in addition to supporting the data analysis team in creating internal programs and automating tasks that can help in executing the projects efficiently.\r\n\r\nMichel studied aerospace engineering at UFABC in Brazil, after which he worked in the technology sector as a software developer. His project experience includes supporting the Galileo global navigation satellite system (GNSS) constellation at the German Aerospace Center (DLR) and serving as a field engineer at Halley Research Station in Antarctica.", "avatar": "https://cfp.pycon.fr/media/avatars/bd5d2462b6efc4ba663ec226142585e1_TWN6V25.jpg"}], "title": "Sparse Dataframes, a Memory Must", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "In this short talk, I will show some examples of how sparse dtypes in dataframes can be great for memory saving when working with sparsely populated data.\r\n\r\nShowing the benefits of using metadata\u2014 alongside the pitfalls and the conversion costs\u2014we can compare the pandas approach versus the pure NumPy/ SciPy approach.\r\n\r\nFinally, using linear systems problems (with LCA backgrounds) as examples, we can compare a few methods and see what stands out.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T15:30:00+01:00", "end": "2024-11-02T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 115, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Intermediate", "answer_file": null, "submission": "XG8BFG", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-12T18:39:28.227856+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "NDKGFA", "speakers": [{"code": "BJ7BC8", "name": "P\u00e9n\u00e9lope Gittos", "biography": "Titulaire d'un Bac +5 en gestion et commerce international de Sorbonne Universit\u00e9, j'ai d\u00e9cid\u00e9 de me sp\u00e9cialiser dans la data en 2023 avec Le Wagon, avant de rejoindre Probabl en tant que Business Developer. Aujourd'hui je contribue au d\u00e9veloppement de cette start-up fran\u00e7aise en promouvant scikit-learn \u00e0 travers la construction du service de Formation et Certification.", "avatar": "https://cfp.pycon.fr/media/avatars/1701860254551_j468iVl.jpeg"}], "title": "Introduction \u00e0 l\u2019apprentissage automatique avec scikit-learn", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "D\u00e9couvrez comment les machines apprennent \u00e0 faire des pr\u00e9dictions \u00e0 partir des donn\u00e9es gr\u00e2ce \u00e0 scikit-learn, la biblioth\u00e8que de machine learning en Python. Lors de cette pr\u00e9sentation, nous explorerons les concepts de base du machine learning et la mani\u00e8re dont scikit-learn facilite la mise en \u0153uvre de ces techniques. \u00c0 travers des exemples pratiques, vous apprendrez comment charger, pr\u00e9traiter et analyser des donn\u00e9es pour entra\u00eener des mod\u00e8les capables de pr\u00e9dire des r\u00e9sultats. Cette session est id\u00e9ale pour les d\u00e9veloppeurs et analystes d\u00e9butants souhaitant se lancer dans le machine learning avec scikit-learn.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T15:30:00+01:00", "end": "2024-11-02T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 217, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "NDKGFA", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-23T11:00:08.669334+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "HPT3HQ", "speakers": [{"code": "T3T8VS", "name": "Yann Bouvet", "biography": "D\u00e9veloppeur Fullstack Senior chez [Shodo Lyon](https://shodo.io/), je suis tomb\u00e9 dans le software craft r\u00e9cemment.\r\nSes pratiques et m\u00e9thodes m'\u00e9merveillent et facilite mon travail, c'est pour \u00e7a que j'aime en parler.", "avatar": "https://cfp.pycon.fr/media/avatars/snowcamp20241_9tSk3sD.jpg"}], "title": "Il n'est jamais trop tard pour redevenir junior", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Je suis d\u00e9veloppeur en Entreprise de Service Num\u00e9rique (ESN) depuis 6 ans. Je suis s\u00fbr de moi et de mes comp\u00e9tences. Pour moi, le Domain-Driven Design (DDD) et l\u2019architecture hexagonale ne sont que des buzzwords, un effet de mode que mes amis junior d\u00e9veloppeur.euse.s utilisent. On me demande en entretien de justifier l\u2019int\u00e9r\u00eat de d\u00e9coupler l\u2019infrastructure du code m\u00e9tier et si je pratique le Test-Driven Development (TDD). Je me fais ramasser, c\u2019est la premi\u00e8re fois que \u00e7a m\u2019arrive. Je suis compl\u00e8tement perdu et d\u00e9couvre un nouvel oc\u00e9an de bonnes pratiques : le Software craft.\r\n\r\nComment se relever apr\u00e8s une exp\u00e9rience comme celle-ci ? Comment sortir de sa zone de confort pour r\u00e9inventer sa fa\u00e7on de travailler ? Comment mettre l'\u00e9go de c\u00f4t\u00e9 pour apprendre de d\u00e9veloppeur.euse.s plus jeunes et/ou avec moins d'ann\u00e9es d'exp\u00e9rience que nous ?\r\n\r\nIl n'est jamais trop tard pour repartir de z\u00e9ro ! \u00c0 travers mon exp\u00e9rience, je vais vous donner les \u00e9tapes simples qui m\u2019ont permis de changer mes pratiques rapidement :\r\n* comment j\u2019ai utilis\u00e9 une m\u00e9thode d'am\u00e9lioration continue pour facilement mettre en place et suivre l\u2019\u00e9volution de mes pratiques,\r\n* comment trier et s\u00e9lectionner des ressources efficacement,\r\n* comment se mettre dans une position pour apprendre de tout le monde,\r\n* comment valoriser l\u2019exp\u00e9rience pr\u00e9c\u00e9demment accumul\u00e9e.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T15:30:00+01:00", "end": "2024-11-02T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 23, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "HPT3HQ", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-24T09:58:19.887317+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "960": {}, "990": {"1": {"code": "TWSJCW", "speakers": [{"code": "XDTLAR", "name": "Antoine Rozo", "biography": "D\u00e9veloppeur Python chez Alma.\r\n\r\n<https://entwanne.github.io>", "avatar": "https://cfp.pycon.fr/media/avatars/schtroumpf_flat_rounded_big_md8PJUj.png"}], "title": "La m\u00e9canique des imports", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Voyage au c\u0153ur du m\u00e9canisme des imports en Python afin de comprendre comment ils fonctionnent et comment nous pouvons agir sur leur comportement, \u00e0 travers l'\u00e9criture de _finders_ et de _loaders_ personnalis\u00e9s.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T16:30:00+01:00", "end": "2024-11-02T16:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 15, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "TWSJCW", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-05-19T18:40:31.999326+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "WHCMJS", "speakers": [{"code": "XBHTKR", "name": "Sara Iris Garcia", "biography": "Sara is a seasoned software developer and a data science enthusiast. She is particularly interested the application of artificial intelligence in health care and all things Python. When she is not analyzing data, she spends her free time learning how to grow vegetables and becoming self sustainable.", "avatar": "https://cfp.pycon.fr/media/avatars/20220922_141623_5DgwsxI.jpg"}], "title": "Duckdb for Data Scientists: Handling Large Data Files in Jupyter Notebook", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Duckdb is a free, open-source analytical database management system (DBMS) that supports SQL. It is fast and memory-efficient and has support of various data formats including CSV, parquet and JSON, and databases including MySQL and Postgres.\r\n\r\nAdding Duckdb to your data science toolbox can help you to speed up your data analysis with the comfort of the old reliable SQL within your Jupyter Notebook.\r\n\r\nIn this talk, I will cover:\r\n\r\n- What is Duckdb and why you should use it\r\n- How to incorporate Duckdb into your data science workflow\r\n- Getting started with Duckdb for data science", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-02T16:30:00+01:00", "end": "2024-11-02T16:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 49, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "WHCMJS", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-05-31T18:55:53.943621+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "HNF3ZU", "speakers": [{"code": "VKUPLZ", "name": "Flavien Lambert", "biography": "Flavien Lambert est physicien de formation. Apr\u00e8s cinq ann\u00e9es de recherche au Commissariat\r\n\u00e0 l\u2019\u00c9nergie Atomique, travaillant sur la conception d\u2019exp\u00e9riences sur le LASER M\u00e9gaJoule, il\r\nrejoint en 2014 un laboratoire du MIT \u00e0 l\u2019universit\u00e9 de Singapour pour explorer des m\u00e9thodes\r\nd\u2019analyse statistique sur des sujets d\u2019urbanisme et de mobilit\u00e9. Tent\u00e9 par le milieu des startups,\r\nil prend la t\u00eate mi-2015 d\u2019une petite \u00e9quipe d\u2019analyse de donn\u00e9es chez Piktochart, une startup\r\nmalaisienne qui offre un outil de design en ligne. En 2020, de retour en France, il met ses\r\ncomp\u00e9tences \u00e0 disposition de Fieldbox, une startup bordelaise proposant des solutions\r\nd\u2019intelligence artificielle pour l\u2019industrie, en tant que Lead Data Scientist \u00e0 la t\u00eate d\u2019une \u00e9quipe\r\nd\u2019une dizaine de personnes en charge du d\u00e9veloppement de logiciels de maintenance\r\npr\u00e9dictive. Flavien est, depuis mi-2022, manager et tech lead chez Sencrop, o\u00f9 son \u00e9quipe g\u00e8re\r\nles donn\u00e9es m\u00e9t\u00e9orologiques de 35000 stations connect\u00e9es.", "avatar": null}, {"code": "LK8CHX", "name": "Paul Arnaud", "biography": "Ing\u00e9nieur sp\u00e9cialis\u00e9 en informatique, je suis depuis quatre ans Data Engineer chez Sencrop, une startup de l'Agtech situ\u00e9e \u00e0 Lille qui aide les agriculteurs\u00b7ices \u00e0 g\u00e9rer leur exploitation. Python est mon outil quotidien pour concevoir et maintenir nos API internes (FastAPI) et nos pipelines ETL (Airflow, kedro).", "avatar": null}], "title": "Python et Kedro au service de l'agriculture de pr\u00e9cision", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Les activit\u00e9s agricoles sont particuli\u00e8rement d\u00e9pendantes des conditions m\u00e9t\u00e9orologiques dans les champs ou vergers. Lors de cette pr\u00e9sentation, nous expliquerons comment Sencrop a utilis\u00e9 Python, le framework kedro et FastAPI pour construire des pipelines et servir les donn\u00e9es m\u00e9t\u00e9orologiques relev\u00e9es par nos 35000 stations ainsi que les pr\u00e9visions de diverses institutions internationales. Nous mettrons en particulier l'accent sur l'exp\u00e9rience de d\u00e9veloppement offerte par kedro afin de construire des pipelines reproductibles, maintenables et facilement d\u00e9ploy\u00e9s dans un environnement de production.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-02T16:30:00+01:00", "end": "2024-11-02T16:55:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/HNF3ZU/resources/Python__kedro_pour_lagriculture_de_pr%C3%A9cision_Hs5M67V.pdf", "description": "Pr\u00e9sentation"}], "answers": [{"id": 147, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "HNF3ZU", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-19T10:07:11.610979+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "1020": {"1": {"code": "88RCKR", "speakers": [{"code": "WLFZBG", "name": "Fran\u00e7oise Conil", "biography": "Je suis d\u00e9veloppeuse logiciel depuis 1990, d'abord dans les t\u00e9l\u00e9communications\r\npendant une dizaine d'ann\u00e9es puis dans un laboratoire de recherche en\r\ninformatique, le LIRIS \u00e0 Lyon, en tant que personnel CNRS d'appui \u00e0 la recherche.\r\n\r\nJe d\u00e9veloppe en Python depuis plus de quinze ans, que ce soit pour du d\u00e9veloppement web ou de la manipulation de donn\u00e9es.\r\n\r\nJe suis membre du CA de l'APRIL depuis le d\u00e9but de cette ann\u00e9e.", "avatar": "https://cfp.pycon.fr/media/avatars/portrait-2023_j1R8X4T.jpg"}], "title": "Recherche des bonnes pratiques de packaging", "submission_type": {"en": "Plenary", "fr": "Pl\u00e9ni\u00e8re"}, "submission_type_id": 5, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Dans mon environnement, on d\u00e9veloppe beaucoup de prototypes. Le packaging de\r\nprojets n'est pas forc\u00e9ment bien connu des membres.\r\n\r\nL'histoire du packaging en Python est longue et mouvement\u00e9e et Python est un\r\nlangage qui a plus de 30 ans et doit g\u00e9rer un \"existant\" tr\u00e8s important.\r\n\r\nLa communaut\u00e9 a d\u00e9fini un mode de fonctionnement d\u00e9claratif qui a permis\r\nl'apparition de nouveaux outils de packaging.\r\n\r\nAujourd'hui, il y a un grand nombre d'outils et cette pr\u00e9sentation correspond \u00e0\r\nmon parcours pour d\u00e9terminer les \u00e9tapes et le / les outils que je souhaite\r\nproposer sur les projets \"pur Python\" auxquels je contribue.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-02T17:00:00+01:00", "end": "2024-11-02T17:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 7, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "88RCKR", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-05-14T18:58:56.309402+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "1050": {}}, "2024-11-03": {"510": {}, "540": {"2": {"code": "YDYYJR", "speakers": [{"code": "MNMGGN", "name": "Lucie Anglade", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_IVxfMJT.jpg"}], "title": "Assembl\u00e9e g\u00e9n\u00e9rale de l\u2019AFPy", "submission_type": {"en": "General Assembly", "fr": "Assembl\u00e9e g\u00e9n\u00e9rale"}, "submission_type_id": 9, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Assembl\u00e9e g\u00e9n\u00e9rale de l'Association Francophone Python, organisatrice de l'\u00e9v\u00e9nement.\r\nVous pouvez venir pour conna\u00eetre le bilan de cette ann\u00e9e et participer aux choix des prochaines \u00e9ditions.\r\nLes membres \u00e0 jour de cotisation peuvent \u00e9galement prendre part aux votes et candidater pour faire partie du comit\u00e9 de direction.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T09:00:00+01:00", "end": "2024-11-03T09:55:00+01:00"}, "image": null, "resources": [], "answers": [], "created": "2024-08-12T16:10:13.337003+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "570": {}, "600": {"1": {"code": "SVUGC3", "speakers": [{"code": "98TUDC", "name": "Ines Montani", "biography": "Ines Montani is a developer specializing in tools for AI and NLP technology. She\u2019s the co-founder and CEO of Explosion and a core developer of spaCy, a popular open-source library for Natural Language Processing in Python, and Prodigy, a modern annotation tool for creating training data for machine learning models.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_ines_CwI4Z0j.jpg"}], "title": "Reality Is Not an End-to-End Prediction Problem: Applied NLP in the Age of Generative AI", "submission_type": {"en": "Plenary", "fr": "Pl\u00e9ni\u00e8re"}, "submission_type_id": 5, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Large Language Models (LLMs) and in-context learning have introduced a new paradigm for developing natural language understanding systems: prompts are all you need! Prototyping has never been easier, but not all prototypes give a smooth path to production. In this talk, I'll share the most important lessons we've learned from solving real-world information extraction problems in industry, and show you a new approach and mindset for designing robust and modular NLP pipelines in the age of Generative AI.\r\n\r\nBreaking down larger business problems into actionable machine learning tasks is one of the central challenges of applied natural language processing. I will walk you through example applications and practical solutions, and show you how to use LLMs to their fullest potential, how and where to integrate your custom business logic and how to maximize efficiency, transparency and data privacy.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T10:00:00+01:00", "end": "2024-11-03T10:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 31, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "SVUGC3", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-25T15:53:47.792388+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "630": {}, "660": {"4": {"code": "9YNYJQ", "speakers": [{"code": "YPFTWA", "name": "David Rigaudie", "biography": "Passionn\u00e9 par le d\u00e9veloppement depuis de nombreuses ann\u00e9es j'aime d\u00e9couvrir de nouveau concept pour acqu\u00e9rir de nouvelle comp\u00e9tence", "avatar": "https://cfp.pycon.fr/media/avatars/profil_rond_blanc_smaller_0VAGmCN.png"}], "title": "Une application versionn\u00e9e automatiquement", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Cette pr\u00e9sentation mettra en oeuvre l'utilisation de la librairie python-semantic-release dans un projet python. C'est un package qui permet de mettre \u00e0 jour la version de votre application en fonction de la structure des messages de commit (encore une raison de bien \u00e9crire vos commits). Ce fonctionnement repose sur SemVer et la convention Angular.\u00a0On va voir les concepts et du code bien s\u00fbr !\r\n\r\nLe processus que je vais \u00e9voquer sera connect\u00e9 \u00e0 une CI Gitlab pour automatiser tout cela au maximum\r\n\r\nPas d'inqui\u00e9tude si la stack technique n'est pas celle que vous utilisez car cette convention peut \u00eatre impl\u00e9ment\u00e9 dans d'autre langage, nous allons voir les principes qui se cachent derri\u00e8re", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-03T11:00:00+01:00", "end": "2024-11-03T11:25:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/9YNYJQ/resources/release_jrITvCu.pdf", "description": "Slides de pr\u00e9sentation"}], "answers": [{"id": 13, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Intermediate", "answer_file": null, "submission": "9YNYJQ", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-05-17T17:36:54.959491+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "5": {"code": "SCFDL7", "speakers": [{"code": "HMC8KE", "name": "Vous / You", "biography": "", "avatar": null}], "title": "C\u2019est vous qui choisissez\u202f! / It\u2019s up to You", "submission_type": {"en": "Lightning Talk", "fr": "Conf\u00e9rence \u00e9clair"}, "submission_type_id": 6, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "#### Qu\u2019est-ce qu\u2019un Lightning Talk\u202f? / What is a Lightning Talk?\r\nLes Lightning Talks sont des formats de pr\u00e9sentations tr\u00e8s courts (5 / 10 min maximum), avec ou sans support, o\u00f9 les sujets sont libres.\r\n\r\nLightning Talks are very short presentation formats (5 / 10 min maximum), with or without support, where subjects are free.\r\n\r\n\r\n#### Qui peut pr\u00e9senter\u202f? / Who can present?\r\nTout le monde.\r\n\r\nEveryone.\r\n\r\n#### Quoi pr\u00e9senter\u202f? / What to present?\r\nUn outil que vous utilisez beaucoup trop cool, une biblioth\u00e8que que vous venez de d\u00e9couvrir, un projet que vous trouvez int\u00e9ressant\u2026\r\n\r\nA tool you use that's way too cool, a library you've just discovered, a project you find interesting...\r\n\r\n#### Est-ce que j\u2019ai besoin d\u2019un support de pr\u00e9sentation\u202f? / Do I need a slideshow?\r\nC\u2019est comme vous voulez.\r\nVous pouvez pr\u00e9parer deux ou trois slides si vous avez envie. Mais n\u2019oubliez pas, c\u2019est un format court\u202f!\r\n\r\nIt's up to you.\r\nYou can prepare two or three slides if you like. But remember, it's a short format!\r\n\r\n#### Je peux venir m\u00eame si je ne veux rien pr\u00e9senter\u202f? / Can I come if I don\u2019t want to present something?\r\nBien s\u00fbr :)\r\nLe format Lightning Talks permet d\u2019aborder plein de sujets diff\u00e9rents, ce qui permet de d\u00e9couvrir de nouveaux outils, projets et autre\u202f!\r\n\r\nOf course :)\r\nThe Lightning Talks format allows us to tackle lots of different topics, which makes it easy to discover new tools, projects and more!", "duration": 115, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 5, "room": {"en": "C01", "fr": "C01"}, "start": "2024-11-03T11:00:00+01:00", "end": "2024-11-03T12:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 218, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "SCFDL7", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-23T11:55:54.692207+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "NR88BG", "speakers": [{"code": "R9BUF8", "name": "Antoine Rigoureau", "biography": "D\u00e9veloppeur backend chez XMCO", "avatar": null}], "title": "D\u00e9d\u00e9\u202f! Des d\u00e9s aux donn\u00e9es\u202f: analyse de tirages al\u00e9atoires avec l\u2019outil Random Test Tool", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Jeux en ligne, transactions s\u00e9curis\u00e9es ou encore g\u00e9n\u00e9ration de mots de passe, les nombres al\u00e9atoires sont partout. Face \u00e0 ces cas d\u2019usage sur des fonctionnalit\u00e9s souvent consid\u00e9r\u00e9es comme critiques, comment s\u2019assurer que les donn\u00e9es al\u00e9atoires g\u00e9n\u00e9r\u00e9es sont de qualit\u00e9 suffisante ? \r\n\r\nCette conf\u00e9rence sera articul\u00e9e autour de l\u2019audit s\u00e9curit\u00e9 d\u2019un jeu (fictif) de poker en ligne.\r\n\r\nDans un premier temps, nous rappellerons bri\u00e8vement ce qu\u2019est une donn\u00e9e al\u00e9atoire.\r\n\r\nDans un second temps, nous effectuerons une analyse statistique des tirages de cartes sur cette application. Vous d\u00e9couvrirez ainsi un outil python permettant d\u2019\u00e9valuer les sorties de g\u00e9n\u00e9rateurs al\u00e9atoires : **Random Test Tool (RTT)**. \r\n\r\nSuite \u00e0 cette revue de donn\u00e9es g\u00e9n\u00e9r\u00e9es, nous vous pr\u00e9senterons une br\u00e8ve analyse du code de l\u2019application vuln\u00e9rable. \r\n\r\nEnfin, nous listerons les \u00e9cueils \u00e0 \u00e9viter et les bonnes pratiques \u00e0 mettre en \u0153uvre lors de l\u2019utilisation de g\u00e9n\u00e9rateurs al\u00e9atoires au sein des applications.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T11:00:00+01:00", "end": "2024-11-03T11:25:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/NR88BG/resources/rtt_pyconfr_2024_d7HeQh5.pdf", "description": "Slides (format PDF)"}], "answers": [{"id": 88, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "NR88BG", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-04T14:36:13.128226+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "LY3N8V", "speakers": [{"code": "SMBJJ9", "name": "Stefanie Molin", "biography": "[Stefanie Molin](https://stefaniemolin.com/) is a software engineer at Bloomberg in New York City, where she tackles tough problems in information security, particularly those revolving around data wrangling/visualization, building tools for gathering data, and knowledge sharing. She is also a core developer of [numpydoc](https://github.com/numpy/numpydoc) and the author of \u201c[Hands-On Data Analysis with Pandas: A Python data science handbook for data collection, wrangling, analysis, and visualization](https://www.amazon.com/Hands-Data-Analysis-Pandas-visualization/dp/1800563450),\u201d which is currently in its second edition and has been translated into Korean and Chinese. She holds a bachelor\u2019s of science degree in operations research from Columbia University's Fu Foundation School of Engineering and Applied Science, as well as a master\u2019s degree in computer science, with a specialization in machine learning, from Georgia Tech. In her free time, she enjoys traveling the world, inventing new recipes, and learning new languages spoken among both people and computers.", "avatar": "https://cfp.pycon.fr/media/avatars/portrait_MJgUyD6.jpeg"}], "title": "Getting Started with Open Source Contributions", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "The open source community is all about giving back and learning from one another. No matter how small, every contribution is valuable. And everyone can contribute something with a little bit of help. The hardest part is finding something to work on that fits your interests and skills.\r\n\r\nIn this talk, I will provide five ways that I used to get started contributing to different open source projects. I also share some guidance on selecting projects to contribute to and how to set yourself up for success. Get ready to start your open source journey!", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T11:00:00+01:00", "end": "2024-11-03T11:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 67, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "LY3N8V", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-15T00:08:35.752637+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "UJXEWA", "speakers": [{"code": "JFQBHZ", "name": "Darko Stankovski", "biography": "Consultant ind\u00e9pendant, Python est mon langage de pr\u00e9dilection depuis plus de 10 ans. J'anime \u00e9galement des formations et communique sur l'importance de l'apprentissage de la programmation.", "avatar": "https://cfp.pycon.fr/media/avatars/darko-stankovski_rbtDb0l.jpeg"}], "title": "Int\u00e9grer un CMS aux applications Django avec Wagtail", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Publier du contenu \u00e9ditorial est fondamental pour la communication des entreprises, associations, collectivit\u00e9s\u2026 Les CMS (Content Management System) r\u00e9pondent \u00e0 ce besoin. Dans ce domaine, les offres historiques sont en PHP et dominent toujours le march\u00e9.\r\n\r\nQuand on utilise Django, on aimerait profiter de la puissance de ce framework. L'offre est certes plus r\u00e9duite mais parmi ces projets, Wagtail se d\u00e9marque en tant que CMS complet qui respecte l\u2019esprit des applications Django. Wagtail de pr\u00e9sente comme une app utilisable de de mani\u00e8re ind\u00e9pendante ou int\u00e9gr\u00e9 \u00e0 votre application.\r\n\r\nCette pr\u00e9sentation s\u2019appuiera sur un retour d\u2019exp\u00e9rience d\u2019une migration et int\u00e9gration de Wagtail.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T11:00:00+01:00", "end": "2024-11-03T11:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 196, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "UJXEWA", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-21T17:04:02.445571+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "690": {"1": {"code": "7RMCMA", "speakers": [{"code": "HEAGCX", "name": "L\u00e9a", "biography": "Ing\u00e9nieure, vendeuse de popcorn, prof de maths puis d\u00e9veloppeuse, je suis arriv\u00e9e dans \u201cla tech\u201d en 2020 par une formation de reconversion courte. Apr\u00e8s de nombreuses p\u00e9rip\u00e9ties, ce virage professionnel est aujourd\u2019hui une r\u00e9ussite.\r\nJe vous partage avec beaucoup de plaisir (et une goutte de vitriol) mon point de vue, mes \u00e9tonnements et stup\u00e9factions concernant cet univers passionnant ainsi que sur celles et ceux qui y travaillent.", "avatar": "https://cfp.pycon.fr/media/avatars/4558c7cae0fae300acac8fbde230bdf5_PjwVbFZ.jpg"}], "title": "Les gens ne savent pas ce qu'ils font, la plupart du temps\u202f!", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Quand on est enfant, on pense que nos parents savent tout, voient tout, peuvent tout ! Et puis on grandit et finalement on se rend compte qu'ils sont humains : parfois faillibles, parfois d\u00e9bord\u00e9s, ou m\u00eame fatigu\u00e9s !\r\n\r\nDans le monde de la technologie, j'ai \u00e9t\u00e9 confront\u00e9e \u00e0 la m\u00eame illusion - l'id\u00e9e que tout le monde ma\u00eetrise parfaitement son domaine. Cependant, comme pour mes parents, la r\u00e9alit\u00e9 m'a rattrap\u00e9e, et je me suis demand\u00e9e, dans la col\u00e8re de la desillusion, si tout le monde est fondamentalement incomp\u00e9tent.\r\n\r\n\r\nSuite \u00e0 cette prise de conscience, j'ai r\u00e9alis\u00e9 que non, les gens ne sont pas fondamentalement incomp\u00e9tents, mais beaucoup dissimulent leurs difficult\u00e9s par peur. Peur d'\u00e9chouer, peur d'\u00eatre jug\u00e9, peur pour son emploi, ou simplement peur d'avoir l'air b\u00eate. Cette peur entrave leur progression individuelle et celle du groupe. C'est l\u00e0 que j'ai d\u00e9couvert la s\u00e9curit\u00e9 psychologique - cr\u00e9er un environnement o\u00f9 chacun se sent \u00e0 l'aise pour \u00e9chouer et apprendre de ses erreurs.\r\n\r\nDans ma pr\u00e9sentation, je partagerai des m\u00e9thodes concr\u00e8tes pour mettre en \u0153uvre la s\u00e9curit\u00e9 psychologique, que ce soit au sein des \u00e9quipes ou au niveau des entreprises, en utilisant des exemples tir\u00e9s de mes exp\u00e9riences. \r\nVenez voir comment accueillir les \u00e9checs et les erreurs peut stimuler la cr\u00e9ativit\u00e9, favoriser l'inclusivit\u00e9 et augmenter la productivit\u00e9.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T11:30:00+01:00", "end": "2024-11-03T12:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 55, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "7RMCMA", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-03T16:35:39.411038+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "BWEYME", "speakers": [{"code": "9BDHY7", "name": "L\u00e9ni Gauffier", "biography": null, "avatar": null}, {"code": "M37Z9Y", "name": "Adrien Montagu", "biography": "Adrien Montagu est le CTO de DressKare et poss\u00e8de une vaste exp\u00e9rience en tant qu'architecte logiciel. Passionn\u00e9 par les d\u00e9fis techniques de haut niveau, il excelle dans la gestion de la complexit\u00e9 du code et de la maintenance \u00e0 long terme.\r\n\r\nConsid\u00e9rant le code comme une forme d'artisanat, Adrien s'efforce de mettre en \u0153uvre ses comp\u00e9tences pour cr\u00e9er des solutions logicielles \u00e9l\u00e9gantes et efficaces. Sa vision est de concevoir des logiciels comme on cr\u00e9e des \u0153uvres d'art, avec un souci constant de la qualit\u00e9 et de la perfection.\r\n\r\nSorry j'ai utilis\u00e9 chatgpt ;)", "avatar": "https://cfp.pycon.fr/media/avatars/Adrien-1_qlgcDY8.jpg"}], "title": "Faire du gRPC simplement avec Django", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "#### gRPC ?\r\n\r\ngRPC est un protocole **RPC** (Remote Procedure Call) **open source et haute performance** cl\u00e9 en main. Bas\u00e9 sur **HTTP2** il fournit l'ensemble des fonctionnalit\u00e9s pour connect\u00e9 plusieurs services supportant l'ensemble des **langages les plus utilis\u00e9s**.\r\n\r\n#### Django-socio-grpc\r\n\r\nAfin d'utiliser la performance de gRPC avec la simplicit\u00e9 et le pragmatisme de Django la librairie Django-socio-grpc \u00e0 \u00e9t\u00e9 cr\u00e9\u00e9 afin de reproduire la syntaxe connu de Django-REST-framework en rempla\u00e7ant le protocol.\r\n\r\n#### Why ?\r\n\r\n- Performance\r\n- Streaming cl\u00e9 en main\r\n- S\u00e9rialisation binaire\r\n- Multi langage architecture\r\n- Contrat d'API fort", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T11:30:00+01:00", "end": "2024-11-03T12:25:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/BWEYME/resources/DSG_presentation_pOl7ihs.pptx", "description": "slide"}], "answers": [{"id": 90, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "BWEYME", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-05T10:22:45.238594+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "XLMNJG", "speakers": [{"code": "3TW3UK", "name": "Roxane Bellot", "biography": "", "avatar": null}], "title": "Petit manuel de d\u00e9minage de l\u2019ORM Django", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Depuis la nuit des temps, les Djangonautes manipulent leurs bases de donn\u00e9es en utilisant l'ORM. Cependant, en abstrayant la r\u00e9alit\u00e9 des requ\u00eates ex\u00e9cut\u00e9es, il est facile de tomber sur des pi\u00e8ges de performance qui alourdissent nos applications.\r\n\r\n\r\nPour \u00e9viter ces mines, nous allons nous pencher sur quand et comment la base de donn\u00e9es est interrog\u00e9e. Vous repartirez avec un maximum de cl\u00e9s pour d\u00e9samorcer tous vos probl\u00e8mes li\u00e9s aux performances de l'ORM : quels sont les motifs \u00e0 rep\u00e9rer ? Les outils \u00e0 votre disposition ? Les pi\u00e8ges \u00e0 \u00e9viter ?", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-03T11:30:00+01:00", "end": "2024-11-03T12:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 183, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "XLMNJG", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-21T10:13:44.855432+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "ZTEUPC", "speakers": [{"code": "7VWQCE", "name": "Pawe\u0142 Zaj\u0105czkowski", "biography": "Pawe\u0142 has been working in Wroc\u0142aw IT since 2009. He was digging through the code in a Finnish telecom, German logistics, a Swiss bank, a car factory, a travel startup, British compliance, and villa rental. Currently, he has gone to the dark side and takes care of a flock of programmers and team leaders, a mentoring program, a guild and is sticking his nose wherever else he can. \r\nPersonally, he likes to read, play board games, analog and computer RPGs. He practices powerlifting and collects vintage Lego Technic. Writes about software, peopleware and dragons on HowToTrainYourJava.com.", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_4_WsiSLqn.png"}], "title": "Impostor Syndrome in Tech", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Do you ever get that awful feeling that you're not good enough to do your job? That you lack skills, intelligence and talent? That everyone around you knows what they're doing, and you just slip through by luck, chance, and appearing to be better than you really are? Do you live in fear that it's only a matter of time before someone discovers you're just a fraud? \r\n\r\nYou are not alone. \r\n\r\nAccording to research, Impostor Syndrome affects almost 90% of people working in IT. In this presentation, I will unravel this phenomenon, explore why it is so dominant in our industry, how one gets into a vicious circle and where it can lead to. I will discuss how the awareness of simple mechanisms will help you see your competencies and what tricks to use to defy the demons of insecurity. \r\n\r\n*May contain traces of rubber ducks.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T11:30:00+01:00", "end": "2024-11-03T12:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 121, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "ZTEUPC", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-15T07:43:22.830111+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "720": {}, "750": {}, "780": {}, "810": {}, "840": {"6": {"code": "YX3EN9", "speakers": [{"code": "MFWSKF", "name": "Nandana Sreeraj", "biography": "Nandana is a data scientist at Censius AI and an incoming MSc student at X-HEC Paris, specializing in Data Science for Business. She holds a bachelor's degree from the College of Engineering, Trivandrum. Nandana has published a research paper in the healthcare domain in an international journal. She has extensive experience working in the commerce and SaaS industries and has been actively involved in projects leveraging Generative AI. Nandana has extensive experience with Python, having used it for six years.", "avatar": "https://cfp.pycon.fr/media/avatars/86199-2_LkzPolO.jpg"}], "title": "Supercharge Your AI with Microservices : A Fun-Filled Journey with Python and Flask", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Have you ever wondered how to transform your AI projects into modular, powerful, and downright delightful applications? Imagine sipping your coffee, sharing a laugh, and coding an awesome AI microservice all at once! In this upbeat session, we'll dive into the magical world of building AI microservices using Python and Flask, ensuring you leave with a smile and a toolkit of new skills.\r\n\r\nWhy Flask, you ask? Because it\u2019s flexible, easy to use, and perfectly suited for integrating with Python\u2019s powerful AI libraries. Together, we'll explore how to blend Flask's versatility with Python\u2019s AI capabilities to create microservices that are not only efficient but also a breeze to manage.\r\n\r\nWe'll kick things off with a whirlwind tour of the fundamentals of microservices and their superpowers in AI applications. Next, we'll dive into the fun part\u2014integrating AI models into these microservices. We will also go through an overview of the coolest Python AI libraries and show you how to coax pre-trained AI models into serving predictions through a Flask microservice. It\u2019s like teaching a robot to bake cookies, but way cooler.\r\n\r\nAnd because we believe in learning by doing, we\u2019ll have a live coding demonstration! Watch as we build an AI microservice from scratch, integrating an AI model right before your eyes. It\u2019s like a magic show, but with code!\r\n\r\nBy the end of this session, you'll gain hands-on experience creating and deploying AI-powered microservices and pick up best practices for scaling and maintenance\u2014all wrapped in a fun, engaging package.\r\n\r\nThis talk is perfect for Python developers, data scientists, and software engineers ready to sprinkle some AI magic into their microservices effortlessly. Join us and empower yourself to build sophisticated AI solutions with Flask while having a blast doing it. See you there, coding superheroes!", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 6, "room": {"en": "C04", "fr": "C04"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 54, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "YX3EN9", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-06-03T13:41:19.215258+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "DHRWQ7", "speakers": [{"code": "CZEFBN", "name": "Cl\u00e9ment Benoist", "biography": "Cl\u00e9ment Benoist, statisticien au CHU de Limoges, travaille sur l'utilisation du deep learning et des statistiques pour la greffe r\u00e9nale et la pharmacologie (pharmacie) associ\u00e9e ; dans ce travail, l'utilisation de python est quotidienne. Il a obtenu un doctorat en machine learning appliqu\u00e9 aux sciences de la Terre, en python notamment. Les connaissances avanc\u00e9es en statistique, machine learning et deep learning ont \u00e9t\u00e9 acquis \u00e0 l\u2019\u00c9cole Normale Sup\u00e9rieure de Cachan et \u00e0 l'universit\u00e9 d'Orsay.", "avatar": null}], "title": "Confidentialit\u00e9 d\u2019un point de vue des bases de donn\u00e9es m\u00e9dicales confidentielles gr\u00e2ce au package synthcity", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "La confidentialit\u00e9 des bases de donn\u00e9es est une pr\u00e9occupation m\u00e9dicale et r\u00e9glementaire majeure. Dans le cadre de l\u2019analyse des r\u00e9sultats en recherche clinique, les donn\u00e9es ne contiennent plus les identit\u00e9s du patient, mais ces donn\u00e9es restent sensibles car on peut potentiellement r\u00e9identifier les patients. L\u2019id\u00e9e est donc de cr\u00e9er des donn\u00e9es de synth\u00e8se, \u00e0 la fois fid\u00e8les (proches des donn\u00e9es initiales) et anonymes (pour lesquelles les donn\u00e9es de synth\u00e8se ne permettent pas de r\u00e9identifier les patients de la base de donn\u00e9es). Des donn\u00e9es anonymis\u00e9es sont tr\u00e8s peu r\u00e9glement\u00e9es et peuvent \u00eatre c\u00e9d\u00e9es ou \u00e9chang\u00e9es librement. Pour mesurer les indicateurs de fid\u00e9lit\u00e9 et d\u2019anonynimisation, nous utilisons [le package synthcity](https://arxiv.org/abs/2301.07573). Ce package permet de synth\u00e9tiser des donn\u00e9es \u00e0 l\u2019aide d\u2019algorithme tels que CT-GAN (conditional tabular-generative adversarial networks), TVAE (tabular variational auto-encoder). J\u2019ai impl\u00e9ment\u00e9 l\u2019algorithme Avatar, qui synth\u00e9tise des donn\u00e9es avec une finalit\u00e9 de confidentialit\u00e9. J\u2019ai test\u00e9 le package sur des donn\u00e9es tabulaires et de survie, relatives \u00e0 la pharmacologie de la transplantation.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T14:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 82, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "DHRWQ7", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-01T14:22:12.662771+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "5": {"code": "HE3KFA", "speakers": [{"code": "8VULFN", "name": "Thomas Eder", "biography": "Docteur en Informatique, ex enseignant-chercheur pass\u00e9 par trois laboratoires fran\u00e7ais dont l'ICube, Thomas est aujourd'hui entrepreneur et dirige Kata.Games\u00a0; une Start-up qui pr\u00e9pare la commercialisation d'une plateforme Gaming nouvelle g\u00e9n\u00e9ration avec entr\u00e9e en activit\u00e9 pr\u00e9vue pour fin 2024.\r\n\r\n_Passionn\u00e9 de jeux vid\u00e9o et d'innovations_, Thomas s'est engag\u00e9 dans la cr\u00e9ation de jeux vid\u00e9o ind\u00e9pendants et de logiciels exp\u00e9rimentaux pour rendre le Web plus ludique. Il est \u00e9galement b\u00e9n\u00e9vole et actuel Pr\u00e9sident au sein de l'association 'Strasbourg Games Community' qui rassemble passionn\u00e9s et professionnels du Jeu Vid\u00e9o.", "avatar": "https://cfp.pycon.fr/media/avatars/profile-pic3_DLnEGHW.jpg"}], "title": "Booster sa cr\u00e9ativit\u00e9 gr\u00e2ce \u00e0 la programmation de jeux vid\u00e9o", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "La cr\u00e9ation de jeux vid\u00e9o est un moyen d'apprentissage dynamique et concret qui stimule la cr\u00e9ativit\u00e9 et renforce les comp\u00e9tences techniques. En cr\u00e9ant vos mini jeux vid\u00e9o en langage Python, vous serez amen\u00e9s \u00e0 d\u00e9couvrir ou approfondir des concepts importants comme la programmation orient\u00e9e objet, ou les patrons de conception.\r\n\r\nCes id\u00e9es sont essentielles pour structurer vos projets logiciels de mani\u00e8re efficace et professionnelle. De plus, la r\u00e9solution de probl\u00e8mes complexes qui intervient parfois dans la cr\u00e9ation de jeux peut \u00eatre mise \u00e0 profit dans d'autres domaines de la programmation.\r\n\r\n#### \u00c0 qui s\u2019adresse l\u2019atelier ?\r\nCet atelier motivera bien s\u00fbr les fans de jeux vid\u00e9o mais il ne s'y limite pas. Il est con\u00e7u plus globalement pour inspirer et \u00e9quiper les d\u00e9veloppeurs et d\u00e9veloppeuses de tous niveaux avec des outils et les connaissances n\u00e9cessaires pour faire progresser leur mani\u00e8re de programmer.\r\n\r\nQue vous soyez un d\u00e9veloppeur d\u00e9butant ou exp\u00e9riment\u00e9, vous en saurez plus sur un nouvel outil open-source servant \u00e0 cr\u00e9er du logiciel interactif.\r\n\r\nVous verrez comment convertir de simples id\u00e9es en jeux captivants et partageables en moins d'une journ\u00e9e avec vos amis ou votre famille. Progresser et apprendre en s\u2019amusant c\u2019est possible, nous allons le d\u00e9montrer !\r\n\r\n#### Pr\u00e9-requis\r\n\r\n- Ordinateur portable\r\n- D\u00e9j\u00e0 avoir Python install\u00e9 sur votre machine\r\n- D\u00e9j\u00e0 conna\u00eetre les fondamentaux Python (boucles, fonctions, types, listes)\r\n- Compte GitHub pr\u00eat\r\n\r\n#### Contenu de l\u2019atelier\r\nPour l\u2019\u00e9dition 2024 de la PyConFR, on propose aux personnes curieuses et/ou fans de jeux vid\u00e9o de venir explorer une nouvelle fa\u00e7on de coder. Rejoignez un atelier captivant sur l'utilisation de \u201cPyved Engine\u201d, un moteur de jeu open-source 100% python en d\u00e9veloppement depuis trois ans.\r\nCet outil a \u00e9t\u00e9 con\u00e7u pour rendre le d\u00e9veloppement de jeux plus accessible et rapide que jamais. Les parties de cet atelier seront :\r\n\r\n_Introduction \u00e0 la cr\u00e9ation de jeux_\r\n- Rappels techniques sur le jeu vid\u00e9o. Rappel sur les outils anciens tels que la c\u00e9l\u00e8bre biblioth\u00e8que Pygame, et mise en lumi\u00e8re de quelques limitations.\r\n- Diff\u00e9rence entre une biblioth\u00e8que Python classique et un moteur de jeu sp\u00e9cialis\u00e9.\r\n\r\n_Prise en main de Pyved Engine_\r\n- Guide pratique : installation via pip et premi\u00e8re d\u00e9mo.\r\nPr\u00e9sentation des fonctionnalit\u00e9s permettant de customiser un template de jeu vid\u00e9o existant.\r\n- Choix d\u2019un d\u00e9fi personnel:\r\nTest rapide pour d\u00e9terminer votre aisance avec la programmation orient\u00e9e objet et proposition de plusieurs exercices au choix ;\r\n- \u00c9tape par \u00e9tape, d\u00e9veloppez votre propre jeu vid\u00e9o simple mais captivant qui utilise Pyved Engine. Vous pourrez ajouter une id\u00e9e originale pour personnaliser votre jeu vid\u00e9o.\r\n\r\n_Configurer et signer votre jeu avant de le partager en ligne_\r\n- Aper\u00e7u des technologies employ\u00e9es par les navigateurs\r\n- R\u00e9sum\u00e9 de la solution Kata.Games, une innovation et une plateforme compl\u00e9mentaire qui permet d\u2019h\u00e9berger et de partager un jeu vid\u00e9o gr\u00e2ce \u00e0 un simple lien URL!\r\n\r\n_Conclusion_\r\n- Br\u00e8ve discussion au sujet du futur de Pyved Engine et des collaborations que nous pouvons avoir sur du logiciel open-source", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 5, "room": {"en": "C01", "fr": "C01"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/HE3KFA/resources/demoPlatformer_kOfargq.zip", "description": "Prototype de jeu utilisant Pyved Engine"}, {"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/HE3KFA/resources/kata.games_overview_dyfPdeS.png", "description": "Aper\u00e7u des projets de la Startup Kata.Games"}], "answers": [{"id": 162, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "HE3KFA", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-20T16:40:26.409213+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "7": {"code": "SQ8YGW", "speakers": [{"code": "VKBT9L", "name": "Romain Dorgueil", "biography": "Artisan logiciel, entrepreneur, musicien et joueur de go.", "avatar": "https://cfp.pycon.fr/media/avatars/5addf5cf7036bb857a464ee5f7775ed4_6QgfUvT.jpg"}, {"code": "8FY9BR", "name": "Arthur Degonde", "biography": null, "avatar": null}], "title": "Lib\u00e9rez-vous de vos API\u202f: premiers pas avec HARP Proxy", "submission_type": {"en": "Workshop", "fr": "Atelier"}, "submission_type_id": 3, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Nous vous proposons de venir d\u00e9couvrir HARP Proxy, les mains dans le cambouis : on prends vos probl\u00e9matiques, vos erreurs 500, vos projets, ... et on impl\u00e9mente des solutions ensemble !\r\n\r\nSi votre projet utilise des APIs HTTP, il y a fort \u00e0 parier qu'en quelques lignes de configuration, un conteneur docker (ou un package pip) et quelques gouttes d'effort nous pouvons rendre votre application plus fiable, plus rapide et observable.\r\n\r\nSelon les participants, l'atelier sera organis\u00e9 en deux parties principales :\r\n\r\n- une vue d'ensemble du syst\u00e8me, de la topologie de services propos\u00e9e comme une solution aux probl\u00e9matiques courantes, de son installation et de sa configuration (30 \u00e0 45 minutes).\r\n- des applications concr\u00e8tes sur vos projets r\u00e9els (en fonction du niveau d'ind\u00e9pendance des participants) et/ou sur un projet bac-\u00e0 sable (\u00e0 volont\u00e9).\r\n\r\nEn fonction du temps restant et de l'int\u00e9r\u00eat des participants, nous pourrons aborder d'autres sujets comme les probl\u00e9matiques d'\u00e9talonnage et de m\u00e9trologie que nous utilisons pour optimiser le syst\u00e8me, les sujets annexes li\u00e9s aux APIs comme l'anonymisation, la pseudonymisation, les techniques de r\u00e9silience, les utilisations \u00ablimites\u00bb du syst\u00e8me hors sentier battus ...", "duration": 145, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 7, "room": {"en": "C05", "fr": "C05"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 198, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "SQ8YGW", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T17:37:02.685900+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "SD3LN8", "speakers": [{"code": "HP9RV3", "name": "Isra Chahrazed Goumiri", "biography": "Hello everyone, I'm Isra Chahrazed, a passionate software engineer with a love for making complex technology accessible and engaging for all. My journey in technology began with earning both Engineering and Master's degrees in Computer Science from the Higher School of Computer Science in 2019. During my time there, I co-founded \"Rubixode,\" a student-led initiative focused on teaching computer science fundamentals through the Rubik's cube.\r\n\r\nBeyond my technical work, I am deeply committed to STEM education. I've had the privilege of mentoring young learners through various virtual and in-person programs, including creating tech courses and overseeing teams of mentors. To further support educators, I established the Young Teachers Community to foster empowerment and collaboration.\r\n\r\nMy advocacy for accessible learning technologies has led me to speak at platforms like TED Talks and at Women Techmakers events, where I share insights into the tech industry and inspire others to pursue careers in STEM. I truly believe in the transformative power of education and love helping young learners discover their passions.", "avatar": "https://cfp.pycon.fr/media/avatars/unnamed_1_MBCGTSD.jpg"}], "title": "The Leaking Bucket: Women in Tech", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Why do we see fewer women in tech, and how can we change this? This talk explores the journey of women in STEM, from young girls fascinated by science and technology to building successful IT careers. We will discuss the barriers women face, such as cultural stereotypes and lack of support, that cause the \"leaking bucket\" effect where women leave the tech pipeline at various stages.\r\n\r\nThrough real-life stories and data, we'll highlight the unique contributions women bring to the tech industry and the importance of their presence. Most importantly, we\u2019ll explore actionable strategies to support and retain women in tech, including mentorship programs, inclusive workplace policies, and community initiatives.\r\n\r\nUnderstand the what, why, and how of empowering women in tech and learn how we can all play a part in fixing the leaks in the bucket, ensuring more women not only enter but thrive in the world of IT.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T14:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 97, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "SD3LN8", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-08T11:05:41.351719+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "UYVYQG", "speakers": [{"code": "EECQMZ", "name": "SebCorbin", "biography": null, "avatar": null}, {"code": "UBSLAJ", "name": "Tristan Benier", "biography": "", "avatar": null}], "title": "Retour d\u2019exp\u00e9rience\u202f: on a cr\u00e9\u00e9 notre SaaS avec le CMS Wagtail", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "En 2023, [RGOODS](https://rgoods.com/) d\u00e9cide de lancer son service de formulaire de dons en ligne pour les ONGs et les associations. Afin d'acc\u00e9l\u00e9rer le d\u00e9veloppement et ne surtout pas r\u00e9inventer la roue, nous d\u00e9cidons de nous reposer sur le framework [Django](https://www.djangoproject.com/) et le [CMS Wagtail](https://wagtail.org/).\r\n\r\nDans cette conf\u00e9rence, nous vous pr\u00e9senterons donc Wagtail et ses principaux atouts, notamment techniques. En prenant des exemples de notre impl\u00e9mentation, nous vous montrerons ce qui fait de Wagtail un socle int\u00e9ressant pour construire une application m\u00e9tier SaaS, hors de son c\u0153ur de m\u00e9tier CMS, et comment nos utilisateurs profitent de ses _\"killer features\"_.\r\n\r\nNous aborderons \u00e9galement notre mani\u00e8re de contribuer au projet en retour.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 110, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "UYVYQG", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-12T10:09:53.927949+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "MZ9T7Y", "speakers": [{"code": "T9XWU3", "name": "Khaznadar Georges", "biography": "Professeur \u00e9m\u00e9rite de sciences physiques, informatique au lyc\u00e9e Jean Bart de Dunkerque", "avatar": "https://cfp.pycon.fr/media/avatars/georgesk1_gaKzZjc.png"}], "title": "SLM \u2013 School Library Management", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "**SLM** est un logiciel qui facilite la **gestion des livres scolaires** par une association coop\u00e9rative, dans un lyc\u00e9e (typiquement : 20\u00a0000 livres, \u00e0 pr\u00eater \u00e0 1\u00a0500 \u00e9l\u00e8ves, en une trentaine d'heures)\r\n\r\n- il s'agit d'une application web : un navigateur et un acc\u00e8s r\u00e9seau sont suffisants pour l'utilisateur\r\n- l'infrastructure est support\u00e9e par **Django** et une base de donn\u00e9es **SQLite3**\r\n- la source contient **18\u00a0000 lignes de code**, dont **50% de Python**, 25% de JavaScript, 20% de HTML/CSS\r\n\r\nDurant la conf\u00e9rence, quelques points seront mis en avant :\r\n\r\n- le choix de Django, les avantages que cette infrastructure a apport\u00e9s\r\n- l'utilisation d'it\u00e9rateurs, pour visiter la base de donn\u00e9es progressivement, sans perte de temps\r\n- l'implication d'\u00e9l\u00e8ves du lyc\u00e9e pour des am\u00e9liorations du code\r\n\r\n**Quelques liens**\r\n\r\n- [SLM](https://forge.apps.education.fr/georgesk/slm)\r\n- [Django](https://docs.djangoproject.com/fr/5.0/intro)\r\n- [Acc\u00e8s aux transparents et \u00e0 leurs source](https://speeches.freeduc.science/2024-slm-pyconfr/slm)", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T14:00:00+01:00", "end": "2024-11-03T14:25:00+01:00"}, "image": null, "resources": [{"resource": "https://cfp.pycon.fr/media/pyconfr-2024/submissions/MZ9T7Y/resources/slm.beamer_AvF4HQh.pdf", "description": "transparents"}], "answers": [{"id": 5, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "MZ9T7Y", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-05-10T10:58:45.327244+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "870": {"3": {"code": "QXTYXN", "speakers": [{"code": "CVA3T8", "name": "Emmanuel Garette", "biography": "Libriste depuis plus de 25 ans. [Freelance](https://www.silique.fr/) depuis 2 ans.\r\nUtilise Python depuis plus de 16 ans dans le cadre du projet de l'\u00c9ducation Nationale EOLE.\r\nD\u00e9veloppeur principale du projet [Tiramisu](https://tiramisu.readthedocs.io/en/latest/) et des projets [Rougail](https://rougail.readthedocs.io/en/latest/).", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_eTWe7Gw.png"}], "title": "Vos variables de configurations, les ingr\u00e9dients du menu Rougail\u202f- Tiramisu", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Pour valider des variables et leurs coh\u00e9rences, le r\u00e9fl\u00e8xe aujourd'hui est l'approche \"_Parse, don't validate_\" (comme le fait tr\u00e8s bien _Pydantic_). Mais cette approche a des limites.\r\n\r\nIl y a plusieurs cas d'usage o\u00f9 il est n\u00e9cessaire de traiter les interactions entre les diff\u00e9rentes variables.\r\n\r\nPar exemple, c'est le cas de la gestion de configurations. Pourquoi demander le nom de domaine du serveur mandataire s'il est d\u00e9sactiv\u00e9 dans une pr\u00e9c\u00e9dente variable ? Comment proposer \u00e0 l'utilisateur l'adresse \"localhost\" lorsqu'on active localement un serveur PostgreSQL ? Comment valider des noms DNS suivant l'environnement choisi (PROD, DEV, ...) ?\r\n\r\nLa biblioth\u00e8que libre python Rougail g\u00e8re nativement les interactions entre les variables. Elle propose de charger des variables \u00e0 partir de fichiers de description, en YAML, faciles \u00e0 \u00e9crire et \u00e0 maintenir. \r\nPour les cas plus complexe il est possible d'\u00e9crire du templating Jinja ou directement du code Python.\r\n\r\nEnsuite, Rougail produit des objets m\u00e9tiers Tiramisu. Tiramisu ayant la charge de la validation des variables, la coh\u00e9rence globale et la conformit\u00e9 des donn\u00e9es.\r\n\r\nDans cette pr\u00e9sentation, je vous pr\u00e9senterai :\r\n\r\n- le r\u00f4le et l'historique des diff\u00e9rents projets\r\n- une pr\u00e9sentation d'un exemple d'utilisation du projet pour fiabiliser un inventaire Ansible\r\n- comment int\u00e9grer ces biblioth\u00e8ques dans du code Python\r\n- d\u00e9crire en Rougail la fen\u00eatre de configuration du proxy de Firefox\r\n\r\nLiens version des projets :\r\n\r\n- https://tiramisu.readthedocs.io/en/latest/\r\n- https://rougail.readthedocs.io/en/latest/", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T14:30:00+01:00", "end": "2024-11-03T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 192, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "QXTYXN", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T14:17:34.971347+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "NBEPAG", "speakers": [{"code": "BXWZLZ", "name": "Anis Smail", "biography": "D\u00e9veloppeur depuis 8 ans, j'ai d'abord commenc\u00e9 en startup puis je suis all\u00e9 en ESN o\u00f9 j'ai travaill\u00e9 pour des grand comptes, je consacre une journ\u00e9e par mois \u00e0 former et coacher d'autres d\u00e9veloppeurs.", "avatar": "https://cfp.pycon.fr/media/avatars/debc9e048bdd1bb4340f91e7884c33a3_WBYaYiG.jpg"}], "title": "Une stack ML compl\u00e8te avec Kedro et MLflow", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Les data scientists savent comment entra\u00eener des mod\u00e8les, mais qu'est-ce qui se passe avant et apr\u00e8s ?\r\n\r\nKedro, un framework open-source de gestion de pipelines de donn\u00e9es, ce qu'il fournit r\u00e9ellement c'est de la structure. Quelq'un qui ne connait pas les best practices peut vite arriver \u00e0 un code difficile \u00e0 maintenir et \u00e0 d\u00e9ployer en prod. Kedro impose une structure d\u00e8s le d\u00e9but du d\u00e9veloppement pour faciliter le passage en prod plus tard. \r\n\r\nMLflow, une plateforme open-source d\u00e9di\u00e9e \u00e0 la gestion du cycle de vie des mod\u00e8les machine learning. Les d\u00e9veloppeurs savent comment g\u00e9rer le versioning du code, mais \u00e9videmment on ne peut mettre des mod\u00e8les dans git. Les outils de ci/cd ne sont pas adapt\u00e9s pour du machine learning, pourtant certaines probl\u00e9matiques sont similaire\r\n Pour le versioning, l'int\u00e9gration et le d\u00e9ploiement de mod\u00e8les MLFlow est un outil adapt\u00e9.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T14:30:00+01:00", "end": "2024-11-03T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 177, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "NBEPAG", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-20T23:39:14.994683+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "XHYNYC", "speakers": [{"code": "W7FPVS", "name": "Neeraj Pandey", "biography": "Neeraj is a polyglot. Over the years, he has worked on a variety of full-stack software and data-science applications, as well as computational arts and Quantitative finance projects, and likes the challenge of creating new tools and applications.", "avatar": "https://cfp.pycon.fr/media/avatars/Screenshot_2024-07-21_at_15.09.05_sYY3r7m.png"}], "title": "Visual Data Storytelling with Blender and Python", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "You might have encountered beautiful animations and data storytelling through many educators and experimentalists online and wondered if it\u2019s only done in javascript or could also be done by Python. In this talk, the attendees will learn how to blend the 3D animation power of Blender with the 2D plotting capabilities from Python libraries like matplotlib. On top it, attendees learn how to leverage the latex and Manim library to create beautiful mathematical animations. \r\n\r\nWe will demonstrate some practical techniques to create immersive 3D models with Blender and enhance them with detailed 2D plots, providing a comprehensive narrative for data interpretation. By integrating these data-viz tools, devs and data enthusiasts will discover new & impactful ways to leverage Python to present and communicate their data insights from educational and work projects.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T14:30:00+01:00", "end": "2024-11-03T14:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 184, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "XHYNYC", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T11:39:42.639020+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "900": {"4": {"code": "WALGJY", "speakers": [{"code": "HCDPLP", "name": "Claude Simon", "biography": "Ing\u00e9nieur logiciel", "avatar": "https://cfp.pycon.fr/media/avatars/22625704_nOxgjG7.jpeg"}], "title": "Python et \u00e9ducation\u202f: bien, mais peut mieux faire\u2026", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Quand il s'agit d'initiation \u00e0 la programmation ou de son apprentissage, *Python* occupe une place de choix. Ainsi, c'est le langage retenu par l'\u00c9ducation nationale pour les sp\u00e9cialit\u00e9s \u00ab\u00a0sciences num\u00e9riques et technologie\u00a0\u00bb (*SNT*, classe de 2<sup>de</sup>, obligatoire) ainsi que \u00ab\u00a0num\u00e9rique et sciences informatiques\u00a0\u00bb (*NSI*, classes de 1<sup>re</sup> et terminale, optionnelle).\r\n\r\nCependant, force est de constater que, bien qu'en l\u00e9g\u00e8re hausse, moins de 10% des \u00e9l\u00e8ves choisissent *NSI* en 1<sup>re</sup> (dont seulement 18% de filles), contre 25% en moyenne pour l'ensemble des sp\u00e9cialit\u00e9s. En outre, plus de la moiti\u00e9 d\u00e9laisse cette sp\u00e9cialit\u00e9 lors du passage en terminale (plus de 2 sur 3 pour les filles).\r\n\r\nDevant l'omnipr\u00e9sence des smartphones chez les adolescentes et adolescents (plus de 92% d'entre eux en poss\u00e8dent un), ce d\u00e9sint\u00e9r\u00eat pour les sciences du num\u00e9rique n'est-il pas d\u00fb \u00e0 aux diff\u00e9rences entre l'informatique telle que pratiqu\u00e9e dans ces sp\u00e9cialit\u00e9s et celle telle que v\u00e9cue au quotidien avec son smartphone\u00a0?\r\n\r\nAinsi, les programmes soumis aux d\u00e9butants \u00e0 titre d'exercice ont g\u00e9n\u00e9ralement une interface texte, dont l'aust\u00e9rit\u00e9 tranche par rapport aux interfaces graphiques auxquelles les jeunes sont habitu\u00e9s avec leur smartphone, sans compter l'ergonomie comparativement moindre inh\u00e9rente aux interfaces texte.\r\n\r\nPar ailleurs, ces programmes sont peu ou pas adapt\u00e9s aux smartphones. Quand bien m\u00eame ils s\u2019appuieraient sur une interface graphique utilisable avec un smartphone, les proc\u00e9dures pour les rendre accessibles depuis un smartphone sont d'une complexit\u00e9 ou n\u00e9cessite des comp\u00e9tences hors de port\u00e9e de d\u00e9butants.\r\n\r\nAu cours de cette conf\u00e9rence, vous verrez concr\u00e8tement et pourrez exp\u00e9rimenter comment, au travers de technologies comme *Brython* ou *PyScript* ou de paquets comme *term2web*, *EduTK* ou *tortoise*, *Python* peut contribuer (encore plus) \u00e0 rendre la programmation en particulier et l'informatique en g\u00e9n\u00e9ral plus attrayante pour nos jeunes, filles comme gar\u00e7ons.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-03T15:00:00+01:00", "end": "2024-11-03T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 205, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "WALGJY", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T22:15:50.071313+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "CH8RW3", "speakers": [{"code": "DR3RTG", "name": "Denis Vivi\u00e8s", "biography": "", "avatar": null}], "title": "Qu'est-ce qu'il y a dans un virtualenv?", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "L'utilisation d'environnements virtuels (virtualenvs) est la solution recommand\u00e9e pour s\u00e9parer ses d\u00e9pendances en Python. Mais vous-\u00eates vous d\u00e9j\u00e0 demand\u00e9 comment ils fonctionnaient? \u00c0 quoi sert ce `source venv/bin/activate`? Apr\u00e8s un rappel de comment se servir des virtualenvs, nous verrons leur architecture et comment ils s\u00e9parent nos d\u00e9pendances avant de voir d'autres solutions (Anaconda, pex, ...)", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T15:00:00+01:00", "end": "2024-11-03T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 113, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "CH8RW3", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-12T15:25:52.466671+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "3": {"code": "SXBWEH", "speakers": [{"code": "XDAMDT", "name": "Thierry Chappuis", "biography": "Apr\u00e8s des \u00e9tudes d'ing\u00e9nieur et un doctorat \u00e0 l'Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne, je suis professeur de chimie industrielle et de mod\u00e9lisation au sein de l'institut ChemTech \u00e0 la Haute Ecole d'Ing\u00e9nierie et d'Architecture de Fribourg (Suisse), et formateur freelance avec PlacePython, . Dans le contexte de mes travaux de recherche et d'enseignement, j'utilise Python pour ses qualit\u00e9s en mati\u00e8re de programmation web et d'APIs (essentiellement avec Django et Django Rest Framework), d'analyse de donn\u00e9es et d'apprentissage statistique, notamment pour l'optimisation et le contr\u00f4le de proc\u00e9d\u00e9s chimiques industriels. \r\nA ma sortie du bureau, je m'int\u00e9resse aux diff\u00e9rentes innovations du langage et \u00e0 leur enseignement. Dans ce contexte, je forme en ligne des adultes en reconversion sur Python, Django et Wagtail depuis 2017. Utilisateur de Python depuis sa version 2.0, je scripte ma vie en .py au quotidien et j'essaie \u00e0 chaque occasion de transmettre cette passion. \r\nBref! Python est une composante essentielle de ma vie depuis plus de 20 ans et mon couteau suisse digital.", "avatar": "https://cfp.pycon.fr/media/avatars/Thierry_mv6A1az.png"}], "title": "Cr\u00e9ez une app mobile hybride \u00e0 partir de votre application Django ou Flask avec Turbo Native et Strada", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Vous avez d\u00e9velopp\u00e9 une application web avec Django ou Flask et vous souhaitez \u00e9tendre son utilisation aux plateformes mobiles sans repartir de z\u00e9ro ? Cette conf\u00e9rence vous montrera comment transformer rapidement et efficacement votre application web en une application mobile hybride en utilisant Turbo Native et Strada. Ces outils permettent de r\u00e9utiliser votre code existant, simplifiant ainsi le processus de d\u00e9veloppement et vous permettant de b\u00e9n\u00e9ficier des fonctionnalit\u00e9s natives des appareils mobiles.\r\n\r\nTurbo Native facilite la cr\u00e9ation d'applications mobiles en exploitant les technologies web que vous ma\u00eetrisez d\u00e9j\u00e0. En combinant les capacit\u00e9s de Turbo avec Django ou Flask, vous pouvez d\u00e9velopper des interfaces r\u00e9actives et interactives sans sacrifier les performances. Strada, quant \u00e0 lui, ajoute une couche de gestion des interactions sp\u00e9cifiques aux applications mobiles, vous permettant de tirer parti des fonctionnalit\u00e9s natives telles que les notifications push, l'acc\u00e8s aux capteurs et bien plus encore. Vous d\u00e9couvrirez comment ces outils peuvent s'int\u00e9grer harmonieusement \u00e0 votre pile technologique existante pour cr\u00e9er une exp\u00e9rience utilisateur fluide et coh\u00e9rente.\r\n\r\nAu cours de cette session de 25 minutes, nous aborderons les concepts cl\u00e9s et les meilleures pratiques pour d\u00e9marrer avec Turbo Native et Strada, illustr\u00e9s par des exemples concrets. Vous verrez comment configurer votre projet, adapter votre code pour l'environnement mobile et d\u00e9ployer votre application hybride. Que vous soyez d\u00e9veloppeur web cherchant \u00e0 \u00e9largir vos comp\u00e9tences ou simplement curieux de conna\u00eetre les possibilit\u00e9s offertes par ces technologies, cette conf\u00e9rence vous fournira les connaissances n\u00e9cessaires pour transformer votre application web en une app mobile hybride performante.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T15:00:00+01:00", "end": "2024-11-03T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 159, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "SXBWEH", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-20T15:18:18.961570+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "SMBF7J", "speakers": [{"code": "UGZV8V", "name": "Maxim Danilov", "biography": "Python/Django Senior Engineer, Solution Architect, DevRel and Tech Speaker. \r\n\r\nI start my career as a programmer specializing in embedded solutions in 1997, and grow to the CTO in 2023. Through many successful projects, I gained a robust understanding of various software development paradigms. In last 10 years as a code mentor, I 've got three times the Award 'Super Mentor in Engineering'", "avatar": "https://cfp.pycon.fr/media/avatars/04_2024_lx0x7Pm.jpg"}], "title": "Django FTL: Resolving Bottlenecks on the Path to High Performance", "submission_type": {"en": "Long talk", "fr": "Conf\u00e9rence longue"}, "submission_type_id": 2, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Raw Django doesn't take the first places when comparing the performance of Python web frameworks. However, it can be pretty fast if we identify the bottlenecks and find ways to avoid them. Comparing performance and implementation complexity before and after gives us an understanding of which features should be implemented and what can be skipped.\r\n______________________________________________________________________________________\r\n\r\nThe Django framework offers a beautiful collection of diverse tools that are easy to understand, set up, and start working with. However, after some time, appearing disadvantages of the framework's features may increase the complexity of the development process and fatally reduce project performance. While the new version of Django successfully improves the developers effictivity, the task to improving performance requires a good understanding of how Django works.\r\n\r\nIn this talk, I will review the most significant performance-reducing factors in Django and provide examples of how to avoid them.\r\n\r\nOverview of the talk from a 10,000-feet view:\r\n\r\n1. Django vs. other faster frameworks: reviewing architectural differences.\r\n2. Request-Response Flow: Identifying elements that can be easily omitted.\r\n3. Forms and Data validation: Balancing flexibility and performance.\r\n4. The quickest methods for data serialization.\r\n5. Debunking myths about async-await productivity.\r\n6. Fire and Forget: FTL Client-Server Communication.\r\n7. Improving Time to First Byte (TTFB). Less known Responce classes.\r\n8. Reviewing other utilities to expedite our project.\r\n9. Q&A.\r\n\r\nBy comparing performance before and after, every developer attending this talk can decide which advice to implement in their own projects.", "duration": 55, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T15:00:00+01:00", "end": "2024-11-03T15:55:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 12, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "SMBF7J", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-05-16T15:24:38.243066+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "930": {}, "960": {"3": {"code": "SAFFBQ", "speakers": [{"code": "CCUP7G", "name": "Christophe Benz", "biography": "Apr\u00e8s 8 ans pass\u00e9s \u00e0 Easter-eggs, l'une des plus anciennes soci\u00e9t\u00e9s de services sp\u00e9cialis\u00e9e dans le logiciel libre, j'ai travaill\u00e9\u00a0\u00e0 Etalab sur le moteur de simulation socio-fiscal OpenFisca, logiciel libre d\u00e9velopp\u00e9 en Python. Aujourd'hui je suis responsable technique de la plateforme DBnomics qui vise \u00e0 faciliter l'acc\u00e8s aux donn\u00e9es \u00e9conomiques.", "avatar": "https://cfp.pycon.fr/media/avatars/970d2e3e768d795b4014fde0aaf9f153_jwByKMs.jpg"}], "title": "DBnomics\u202f: un agr\u00e9gateur de donn\u00e9es \u00e9conomiques en Python", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "D\u00e9couvrez le projet DBnomics, un agr\u00e9gateur de donn\u00e9es \u00e9conomiques publiques provenant d\u2019une centaine de fournisseurs dans le monde (INSEE, Banque Mondiale, FMI, etc.) d\u00e9velopp\u00e9 enti\u00e8rement en Python et sous licence libre (AGPLv3+).\r\n\r\nDBnomics permet aux \u00e9conomistes, \u00e9tudiants, chercheurs, data-journalistes, etc. d\u2019acc\u00e9der \u00e0 des donn\u00e9es publiques tr\u00e8s facilement, sans avoir \u00e0 g\u00e9rer les formats propres au diff\u00e9rents fournisseurs. En effet, les donn\u00e9es arrivent directement sous forme de DataFrame Pandas gr\u00e2ce au client Python.\r\n\r\nPour cela DBnomics dispose d\u2019un syst\u00e8me de data fetchers, des programmes Python correspondant chacun \u00e0 un fournisseur de donn\u00e9es, et d\u2019un syst\u00e8me de pipelines pour les faire tourner quotidiennement.\r\n\r\nDBnomics distribue ses donn\u00e9es via son API publique, utilis\u00e9e par les modules clients disponibles entre-autres en Python et R, et permet de sous-tendre le d\u00e9veloppement d\u2019applications utilisant des donn\u00e9es macro\u00e9conomiques (e.g. dashboards).\r\n\r\nCette conf\u00e9rence pr\u00e9sente le projet DBnomics, plonge au c\u0153ur de son architecture technique, et montre comment r\u00e9aliser un dashboard en utilisant le client DBnomics en Python avec Streamlit.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-11-03T16:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 87, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "SAFFBQ", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-02T15:07:01.196200+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "83DU9W", "speakers": [{"code": "LCMBXK", "name": "Julie Rymer", "biography": "Ayant commenc\u00e9 \u00e0 travailler en 2016 dans le d\u00e9veloppement informatique, j\u2019ai rapidement eu la charge de la direction technique des diff\u00e9rents projets qui m\u2019ont \u00e9t\u00e9 confi\u00e9s au fil de ma carri\u00e8re, dont 2.5 ans en tant que CTO.\r\n\r\nLass\u00e9e des politiques de management et de gestion subis jusqu'alors en entreprise, j'ai d\u00e9cid\u00e9 de cr\u00e9er ma propre structure en 2024 sous la forme d'une coop\u00e9rative (SCOP) o\u00f9 tous ont le m\u00eame pouvoir d\u00e9cisionnaire et chacun re\u00e7oit une part \u00e9quitable des b\u00e9n\u00e9fices, avec un grande priorit\u00e9 donn\u00e9e \u00e0 l'humain et la transparence.\r\n\r\nNous sommes tr\u00e8s engag\u00e9s dans l'opensource dont nous tirons tous collectivement les b\u00e9n\u00e9fices et sommes devenus les nouveaux mainteneurs de la refonte de la solution de gestion de projets Taiga, en cours de r\u00e9\u00e9criture.", "avatar": "https://cfp.pycon.fr/media/avatars/picture_julie_square_WqBP5a1.png"}], "title": "Django-Oscar, un retour d'exp\u00e9rience sur la cr\u00e9ation d'un site marchand en Python", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "PHP domine le monde du e-commerce, pourtant de plus en plus d'entreprises font le choix du Python pour constituer leurs \u00e9quipes internes de d\u00e9veloppement. Quand vient le besoin d'un site marchand, la question de l'externalisation se pose alors.\r\nCette pr\u00e9sentation a pour but de faire un retour d'exp\u00e9rience sur la r\u00e9alisation en interne du d\u00e9veloppement d'une place de march\u00e9, en utilisant le framework opensource Django-oscar. Pourquoi, comment et les difficult\u00e9s rencontr\u00e9es.\r\nCette pr\u00e9sentation ne fera pas de comparaison entre Python et PHP au del\u00e0 de leur \u00e9cosyst\u00e8me respectif pour le e-commerce.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-11-03T16:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 191, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "83DU9W", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-21T14:12:34.697086+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "1": {"code": "VJ8VCU", "speakers": [{"code": "7MTSUN", "name": "Guillaume Fassot", "biography": "Je suis Guillaume Fassot, d\u00e9veloppeur et data scientist passionn\u00e9 avec 5 ans d'experience, sp\u00e9cialis\u00e9 en Python, JavaScript et Rust. J'utilise principalement les frameworks NextJS, NodeJS et FastAPI pour mes projets.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_eVIoWik.png"}], "title": "Python WebServer\u202f: du WSGI \u00e0 ASGI", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Dans cette conf\u00e9rence, nous explorerons en profondeur les deux interfaces de serveur web les plus courantes en Python : WSGI (Web Server Gateway Interface) et ASGI (Asynchronous Server Gateway Interface). Nous aborderons leur fonctionnement, leurs avantages et leurs limitations respectives. Vous d\u00e9couvrirez pourquoi et comment ASGI est devenu un standard pour les applications web modernes n\u00e9cessitant des capacit\u00e9s asynchrones et des WebSockets.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T16:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 167, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "VJ8VCU", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-20T19:50:07.851449+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "2": {"code": "ULMYYW", "speakers": [{"code": "8JBXQD", "name": "Yuichiro Tachibana", "biography": "Yuichiro works as a professional software developer and also loves contributing to OSS projects. As a Pythonista, he has participated in various projects including web development, multimedia streaming, data management, computer vision, and machine learning.", "avatar": "https://cfp.pycon.fr/media/avatars/pk2649_trimmed1_800_m7alpvx.jpg"}], "title": "What Streamlit Can and Can't (or Shouldn't) Do", "submission_type": {"en": "Short talk", "fr": "Conf\u00e9rence courte"}, "submission_type_id": 1, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Streamlit is a popular Python framework that allows you to build interactive web apps by writing only Python code.\r\nIt greatly simplifies handling interactivity, UI design, and some other difficulties in web development, for example by introducing a unique execution model and limiting the design/layout flexibility.\r\nSo sometimes we should be aware of its such characteristics and limitations in order to use it effectively.\r\nIn this talk, I will review Streamlit's features, discuss its pros and cons compared to other pure-Python web UI frameworks based on concrete examples, and suggest alternatives for some use cases where Streamlit is not the best fit.", "duration": 25, "slot_count": 1, "is_featured": false, "content_locale": "en", "slot": {"room_id": 2, "room": {"en": "PAM", "fr": "PAM"}, "start": "2024-11-03T16:00:00+01:00", "end": "2024-11-03T16:25:00+01:00"}, "image": null, "resources": [{"resource": "https://slides.com/whitphx/what-streamlit-can-and-cant-do", "description": "Slide deck"}], "answers": [{"id": 180, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "All audiences", "answer_file": null, "submission": "ULMYYW", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T08:12:53.562845+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "990": {"1": {"code": "AQ99ZP", "speakers": [{"code": "MNMGGN", "name": "Lucie Anglade", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_IVxfMJT.jpg"}], "title": "Cl\u00f4ture / Closing", "submission_type": {"en": "Short plenary", "fr": "Pl\u00e9niaire courte"}, "submission_type_id": 8, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Session de cl\u00f4ture de la PyConFR 2024.\r\n\r\nClosing talk of PyConFR 2024.", "duration": 30, "slot_count": 1, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 1, "room": {"en": "GAM", "fr": "GAM"}, "start": "2024-11-03T16:30:00+01:00", "end": "2024-11-03T17:00:00+01:00"}, "image": null, "resources": [], "answers": [], "created": "2024-08-07T10:53:18.787656+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "1020": {}, "1050": {}}}, "sprints": {"2024-10-31": {"510": {}, "540": {}, "570": {}, "600": {"3": {"code": "ACEENH", "speakers": [{"code": "WKLY8D", "name": "Antoine Nguyen", "biography": "D\u00e9veloppeur Python et Javascript freeelance. \r\nCr\u00e9ateur du projet Modoboa", "avatar": "https://cfp.pycon.fr/media/avatars/photo_cv_dutHwBx.png"}, {"code": "RKALXM", "name": "Adrien Precigout", "biography": null, "avatar": null}], "title": "Modoboa end-user tools v2", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Now that all admin related features are available in the new interface of Modoboa, it's time to say goodbye to the old one and to start the end-user part: webmail, calendars and contacts.", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "en", "slot": {"room_id": 3, "room": {"en": "C02", "fr": "C02"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 72, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "ACEENH", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-06-18T11:16:18.742328+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "8": {"code": "C3LPDA", "speakers": [{"code": "M37Z9Y", "name": "Adrien Montagu", "biography": "Adrien Montagu est le CTO de DressKare et poss\u00e8de une vaste exp\u00e9rience en tant qu'architecte logiciel. Passionn\u00e9 par les d\u00e9fis techniques de haut niveau, il excelle dans la gestion de la complexit\u00e9 du code et de la maintenance \u00e0 long terme.\r\n\r\nConsid\u00e9rant le code comme une forme d'artisanat, Adrien s'efforce de mettre en \u0153uvre ses comp\u00e9tences pour cr\u00e9er des solutions logicielles \u00e9l\u00e9gantes et efficaces. Sa vision est de concevoir des logiciels comme on cr\u00e9e des \u0153uvres d'art, avec un souci constant de la qualit\u00e9 et de la perfection.\r\n\r\nSorry j'ai utilis\u00e9 chatgpt ;)", "avatar": "https://cfp.pycon.fr/media/avatars/Adrien-1_qlgcDY8.jpg"}], "title": "Faire un benchmark de performance DRF/DSG/FastAPI/Flask", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "L'objectif est de coder et d\u00e9ployer une application dans votre framework pr\u00e9f\u00e9r\u00e9 avec des uses cases simple et d\u00e9finit \u00e0 l'avance (beaucoup de requetes, gros volume de donn\u00e9es, stream) afin de comparer diff\u00e9rentes solutions du march\u00e9s.\r\n\r\nLes framework propos\u00e9 ne sont qu'une liste non exhausitve. Venez compar\u00e9 votre framework pr\u00e9f\u00e9r\u00e9 avec les autres et essayer de l'optimiser avec des pairs.", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 8, "room": {"en": "C06", "fr": "C06"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 91, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "C3LPDA", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-05T10:26:07.011239+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "5": {"code": "KZXWXZ", "speakers": [{"code": "USNRVQ", "name": "Julien", "biography": "Mes projets :\r\n\r\n- Je travaille sur un site d\u2019apprentissage de la programmation interactif : hackinscience.org.\r\n- J'aide \u00e0 la traduction de la documentation de Python en Fran\u00e7ais (pour participer c'est ici).\r\n- Mes autres projets sont sur la forge de l'AFPy et sur mon github.", "avatar": "https://cfp.pycon.fr/media/avatars/julien_M2jVWO8.jpg"}], "title": "Atelier trad' de la doc de Python", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Contribuer \u00e0 https://docs.python.org/fr/, comme tous les ans :)", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 5, "room": {"en": "C01", "fr": "C01"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 135, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "KZXWXZ", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-16T21:44:51.149610+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "9": {"code": "8TX3WD", "speakers": [{"code": "PXTG9M", "name": "Arthur Vuillard", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/arthur_portrait_f1NhX7m.jpg"}], "title": "LeBureau.coop", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Nous allons travailler sur l'am\u00e9lioration du code, de l'infrastructure, de la communication et de l'organisation de LeBureau.coop\r\n\r\nLeBureau.coop est une coop\u00e9rative d'int\u00e9r\u00eat collectif proposant d'accompagner ses clients dans la gestions des noms de domaine. C'est un bureau d'enregistrement et h\u00e9bergeur DNS", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 9, "room": {"en": "C07", "fr": "C07"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 154, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "8TX3WD", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-19T20:50:40.837766+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "4": {"code": "T8GSNN", "speakers": [{"code": "VKBT9L", "name": "Romain Dorgueil", "biography": "Artisan logiciel, entrepreneur, musicien et joueur de go.", "avatar": "https://cfp.pycon.fr/media/avatars/5addf5cf7036bb857a464ee5f7775ed4_6QgfUvT.jpg"}, {"code": "8FY9BR", "name": "Arthur Degonde", "biography": null, "avatar": null}], "title": "Hack-a-thon HARP Proxy, un mandataire de transfert d'APIs", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Le but du sprint est de faire avancer le d\u00e9veloppement et la documentation de HARP Proxy : https://harp-proxy.net/ (documentation : https://docs.harp-proxy.net/).\r\n\r\nToutes les bonnes volont\u00e9s sont les bienvenues : du n\u00e9ophyte au pythonista confirm\u00e9 en passant par les amoureux de rust, les artistes peintres du pixel et les alchimistes du frontend, nous ferons de notre mieux pour que tout le monde trouve chaussure \u00e0 son pied.", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 4, "room": {"en": "C03", "fr": "C03"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 199, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "T8GSNN", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T17:48:42.093178+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "6": {"code": "Y78H8X", "speakers": [{"code": "HCDPLP", "name": "Claude Simon", "biography": "Ing\u00e9nieur logiciel", "avatar": "https://cfp.pycon.fr/media/avatars/22625704_nOxgjG7.jpeg"}], "title": "D\u00e9couvrez comment, en quelques minutes, ajouter une interface graphique \u00e0 vos programmes et les mettre en ligne", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Le *toolkit* *Atlas* est destin\u00e9 \u00e0 ceux qui voudraient d\u00e9velopper une application pour un usage personnel ou professionnel, mais sans \u00eatre des professionnels du d\u00e9veloppement. D'une part, il est tr\u00e8s l\u00e9ger (sans doute le plus l\u00e9ger de son genre) et sans d\u00e9pendance, ce qui facilite son installation. D'autre part, l'interface graphique s\u2019appuie sur les technologies web et sa manipulation ainsi que le traitement des actions associ\u00e9es s'effectuent au sein d'un seul et unique programme d\u00e9velopp\u00e9 dans le langage de son choix, dont *Python* (et sans *JavaScript*\u00a0!). Et le *toolkit* *Atlas* vous r\u00e9serve bien d'autres surprises\u00a0!\r\n\r\nQue vous soyez simplement curieux ou que vous projetiez de d\u00e9velopper une application, n'h\u00e9sitez pas \u00e0 participer \u00e0 ce *sprint*.\r\n\r\nD\u00e9butants *Python*, votre avis sera pr\u00e9cieux pour rendre le *toolkit* *Atlas* encore plus accessible aux nouveaux-venus.\r\n\r\nD\u00e9veloppeurs chevronn\u00e9s, votre expertise sera plus que bienvenue pour am\u00e9liorer et enrichir le *toolkit* *Atlas*.\r\n\r\nSi vous avez d\u00e9velopp\u00e9 une application avec une interface texte, profitez de ce sprint pour la doter rapidement et facilement d'une interface graphique gr\u00e2ce au *toolkit* *Atlas*. \r\n\r\nSi vous enseignez la programmation, d\u00e9couvrez comment rendre vos cours encore plus captivant gr\u00e2ce des exercices que votre auditoire pourra tester avec leur smartphone.\r\n\r\nEnfin, si vous avez un microcontr\u00f4leur avec MicroPython et *Wi-Fi* (*Raspberry Pi Pico W/WH*, *ESP32*\u2026), n'h\u00e9sitez pas \u00e0 le ramener et d\u00e9couvrir comment le piloter \u00e0 distance en Python gr\u00e2ce au *toolkit* *Atlas* (premi\u00e8re mondiale).\r\n\r\nMat\u00e9riel requis\u00a0: un ordinateur portable connect\u00e9 \u00e9quip\u00e9 d'un environnement de d\u00e9veloppement *Python*, mais un smartphone ou une tablette suffisent pour exp\u00e9rimenter avec le *toolkit* *Atlas*.", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 6, "room": {"en": "C04", "fr": "C04"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 206, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Junior", "answer_file": null, "submission": "Y78H8X", "review": null, "person": null, "options": [{"id": 2, "answer": {"en": "Junior", "fr": "Junior"}}]}], "created": "2024-07-21T22:20:41.763183+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "10": {"code": "SWDEWG", "speakers": [{"code": "ZZKWMM", "name": "Soufiane Khoudmi", "biography": "Anciennement Data Science Manager, je suis passionn\u00e9 par les approches data et analytiques qui commencent par le business, finissent par le business, avec de la tech au milieu.\r\n\r\nJ'ai d\u00e9cid\u00e9 de cr\u00e9er Make Open Data car j'ai toujours \u00e9t\u00e9 frustr\u00e9 de voir que les m\u00eames op\u00e9rations sur les m\u00eames donn\u00e9es publiques sont r\u00e9alis\u00e9es par des \u00e9quipes diff\u00e9rentes dans leurs coins.", "avatar": "https://cfp.pycon.fr/media/avatars/resized_6jlxmjQ.jpeg"}], "title": "Make Open Data : Modern Data Stack Open Source pour donn\u00e9es publiques", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Utilisateurs potentiels par commune, Transactions immobili\u00e8res par d\u00e9partement, Nombre de logements vacants, etc\r\n\r\nEn voila des donn\u00e9es \u00e0 saupoudrer dans de la BI, des analyses ou des mod\u00e8les de machine learning pour donner plus de go\u00fbt aux produits et aux d\u00e9cisions.\r\n\r\nEt pourtant... Combien de tickets d'analyse ou d'exploration impliquant ces donn\u00e9es ont fini dans le cimeti\u00e8re du Backlog en raison de leur difficile exploitation ?\r\n\r\nMake Open Data a pour ambition de rendre les donn\u00e9es publiques comestibles en centralisant la logique d'ingestion, stockage, transformation, documentation, tests, etc.\r\n\r\nL'objectif de ce sprint est de contribuer l'ingestion, c'est \u00e0 dire \u00e0 la partie Extract (de la donn\u00e9es source au syst\u00e8me) et Load (du syst\u00e8me \u00e0 l'entrep\u00f4t de donn\u00e9es). Comme par exemple : \r\n\r\n- Impl\u00e9mentation d'outils : Make Open Data utilise des approches Vanille pour l'Extract (curl) et Load (postgres copy). Certains outils Open Sources (dlt, airbyte, etc) peuvent \u00eatre utilis\u00e9es \u00e0 ces fins, au prix d'abstractions \u00e0 \u00e9valuer. \r\n \r\n- R\u00e9usinage : Actuellement l'ingestion s'execute sur toutes les donn\u00e9es, m\u00eame si elles sont toutes en base. L'objectif est de donner la possibilit\u00e9 \u00e0 l'utilisateur d'ing\u00e9rer certaines donn\u00e9es (en fonction de la finalit\u00e9) et/ou la possibilit\u00e9 de ne pas les rafraichir.\r\n\r\n- Tests : mettre en place les bonnes pratiques de tests unitaires, d'int\u00e9gration, de gestion d'erreurs et d'automatisation pour rendre l'ingestion plus robuste.\r\n\r\n- Nouvelle donn\u00e9es : si vous avez un besoin particulier, nous serons ravis de l'examiner ensemble.\r\n\r\nOptionnel : vous pouvez vous familiariser avec le repo en le d\u00e9ployant en local ou dans le Cloud. \r\n\r\nM\u00eame si Make Open Data peut \u00eatre deploy\u00e9 sur une instance Postgre en local, une instance Postgres, avec des donn\u00e9es ing\u00e9r\u00e9s, dans le cloud peut-\u00eatre fournie pour faciliter les d\u00e9veloppements.\r\n\r\nQue vous soyez un pro de data ou pas, il s'agit d'une bonne opportunit\u00e9 de se faire la main avec des donn\u00e9es en production, volumineuses et ambigues.\r\n\r\nResources\r\n\r\n- https://make-open-data.fr/\r\n- https://github.com/make-open-data/make-open-data\r\n- https://docs.getdbt.com/faqs/Project/example-projects\r\n- https://www.data.gouv.fr/fr/organizations/make-open-data/#/datasets", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 10, "room": {"en": "C08", "fr": "C08"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 193, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Interm\u00e9diaire", "answer_file": null, "submission": "SWDEWG", "review": null, "person": null, "options": [{"id": 3, "answer": {"en": "Intermediate", "fr": "Interm\u00e9diaire"}}]}], "created": "2024-07-21T15:14:44.590139+02:00", "pending_state": null, "tags": [], "tag_ids": []}, "7": {"code": "NLZ8FJ", "speakers": [{"code": "LGWYG9", "name": "Michael Scherer", "biography": "", "avatar": null}, {"code": "DQQXUY", "name": "Pilou", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/logo_grand_gitea_7TtXmxm.png"}], "title": "D\u00e9veloppements de correctifs et tests des modules Ansible", "submission_type": {"en": "Sprint", "fr": "Sprint"}, "submission_type_id": 4, "track": null, "track_id": null, "state": "confirmed", "abstract": null, "description": "Ansible est un outil libre de configuration et d'orchestration \u00e9crit en Python.\r\n\r\nAu cours de cet atelier de codage participatif, nous - (@pilou-) et (@mscherer) - vous proposons de contribuer \u00e0 Ansible et plus particuli\u00e8rement aux modules Ansible existants:\r\n\r\n* corrections de bug existants\r\n* reviews de pull-requests existantes\r\n* nettoyage de code, par exemple:\r\n* suppression des exceptions list\u00e9es dans 'ansible/test/sanity/*/ignore.txt'\r\n* v\u00e9rifications module par module que la documentation et le module sont coh\u00e9rents\r\n* correction des tests instables\r\n* ajout de tests unitaires (tox/mock) et d'int\u00e9gration (docker/lxc)\r\n* am\u00e9lioration de la documentation\r\n\r\nCe sprint sera l'occasion pour vous:\r\n\r\n* d'\u00e9changer \u00e0 propos du fonctionnement d'Ansible\r\n* de corriger des bugs \u00e9ventuellement rencontr\u00e9s\r\n* de contribuer \u00e0 un logiciel libre utilisant Git et GitHub\r\n\r\nPr\u00e9requis et configuration n\u00e9cessaire\r\n\r\nLes personnes d\u00e9butant avec Python et Ansible sont les bienvenues.\r\n\r\nPour participer, sont requis:\r\n\r\n* un compte GitHub\r\n* un ordinateur portable supportant l'environnement de d\u00e9veloppement suivant et permettant de lancer Ansible:\r\n** Python (3.8+)\r\n** une installation Git fonctionnelle\r\n** un syst\u00e8me d'exploitation Linux, *BSD ou Mac. Le n\u0153ud de contr\u00f4le Ansible ne peut pas \u00eatre sous Windows, mais une version r\u00e9cente de WSL fonctionne, ainsi qu'une machine virtuelle Linux.\r\n\r\nNous vous accompagnerons si n\u00e9cessaire dans la mise en place de cet environnement de d\u00e9veloppement (si votre syst\u00e8me d'exploitation n'est pas Windows).\r\n\r\nIl est recommand\u00e9:\r\n\r\n* d'avoir fork\u00e9 le projet GitHub Ansible (ou la collection requise)\r\n* d'avoir parcouru le guide utilisateur (https://docs.ansible.com/ansible/devel/user_guide/index.html), plus particuli\u00e8rement les sections \"Ansible Quickstart Guide\", \"Getting Started\", \"Introduction To Ad-Hoc Commands\", \"Working with Inventory\" et \"Working With Playbooks\".\r\n* d'avoir parcouru le guide du d\u00e9veloppeur (http://docs.ansible.com/ansible/devel/dev_guide ), notamment les sections \"Debugging modules\", \"Conventions, tips, and pitfalls\" et \"Module format and documentation\".\r\n\r\nLa documentation est en anglais, si n\u00e9cessaire, nous accompagnerons les participants pour qui cela est un probl\u00e8me.", "duration": 420, "slot_count": 2, "is_featured": false, "content_locale": "fr", "slot": {"room_id": 7, "room": {"en": "C05", "fr": "C05"}, "start": "2024-10-31T10:00:00+01:00", "end": "2024-10-31T17:00:00+01:00"}, "image": null, "resources": [], "answers": [{"id": 209, "question": {"id": 1, "question": {"en": "Intended audience", "fr": "Public vis\u00e9"}}, "answer": "Tout public", "answer_file": null, "submission": "NLZ8FJ", "review": null, "person": null, "options": [{"id": 1, "answer": {"en": "All audiences", "fr": "Tout public"}}]}], "created": "2024-07-21T22:54:01.089760+02:00", "pending_state": null, "tags": [], "tag_ids": []}}, "630": {}, "660": {}, "690": {}, "720": {}, "750": {}, "780": {}, "810": {}, "840": {}, "870": {}, "900": {}, "930": {}, "960": {}, "990": {}, "1020": {}, "1050": {}}, "2024-11-01": {"510": {}, "540": {}, "570": {}, "600": {}, "630": {}, "660": {}, "690": {}, "720": {}, "750": {}, "780": {}, "810": {}, "840": {}, "870": {}, "900": {}, "930": {}, "960": {}, "990": {}, "1020": {}, "1050": {}}}, "rooms": [{"id": 1, "guid": "27f0b4e1-11fd-52da-9d36-313ce937fbc4", "name": {"en": "GAM", "fr": "GAM"}, "description": {}, "capacity": 300, "position": 0, "url": "/orga/event/pyconfr-2024/schedule/rooms/1/", "speaker_info": {}, "availabilities": [{"id": 262, "start": "2024-11-02T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true}, {"id": 2, "guid": "5efe663d-8888-5fd2-918e-1b495a98f71b", "name": {"en": "PAM", "fr": "PAM"}, "description": {}, "capacity": 246, "position": 1, "url": "/orga/event/pyconfr-2024/schedule/rooms/2/", "speaker_info": {}, "availabilities": [{"id": 263, "start": "2024-11-02T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true}, {"id": 4, "guid": "b8d3de14-fe44-5285-8c32-15eb0bb77552", "name": {"en": "C03", "fr": "C03"}, "description": {}, "capacity": 90, "position": 2, "url": "/orga/event/pyconfr-2024/schedule/rooms/4/", "speaker_info": {}, "availabilities": [{"id": 273, "start": "2024-10-31T14:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true, "in_sprints": true}, {"id": 3, "guid": "b44be087-e7b1-59e7-a984-0c80027bbe28", "name": {"en": "C02", "fr": "C02"}, "description": {}, "capacity": 56, "position": 3, "url": "/orga/event/pyconfr-2024/schedule/rooms/3/", "speaker_info": {}, "availabilities": [{"id": 264, "start": "2024-10-31T14:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true, "in_sprints": true}, {"id": 5, "guid": "0044dfec-6b4d-5c09-b72c-de3266851285", "name": {"en": "C01", "fr": "C01"}, "description": {}, "capacity": null, "position": 4, "url": "/orga/event/pyconfr-2024/schedule/rooms/5/", "speaker_info": {}, "availabilities": [{"id": 266, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true, "in_sprints": true}, {"id": 6, "guid": "33fbdfbe-78c7-5160-9c45-ec721bd9e0cb", "name": {"en": "C04", "fr": "C04"}, "description": {}, "capacity": null, "position": 5, "url": "/orga/event/pyconfr-2024/schedule/rooms/6/", "speaker_info": {}, "availabilities": [{"id": 267, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true, "in_sprints": true}, {"id": 7, "guid": "117997f4-60b4-520c-878f-a8b4db2b37db", "name": {"en": "C05", "fr": "C05"}, "description": {}, "capacity": null, "position": 6, "url": "/orga/event/pyconfr-2024/schedule/rooms/7/", "speaker_info": {}, "availabilities": [{"id": 268, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_conferences": true, "in_sprints": true}, {"id": 8, "guid": "eaa4eeaa-afd8-595d-88ce-583d7448de49", "name": {"en": "C06", "fr": "C06"}, "description": {}, "capacity": null, "position": 7, "url": "/orga/event/pyconfr-2024/schedule/rooms/8/", "speaker_info": {}, "availabilities": [{"id": 269, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_sprints": true, "in_conferences": true}, {"id": 9, "guid": "a33cfcfd-7901-5492-83b7-ea5c6094f0d0", "name": {"en": "C07", "fr": "C07"}, "description": {}, "capacity": null, "position": 8, "url": "/orga/event/pyconfr-2024/schedule/rooms/9/", "speaker_info": {}, "availabilities": [{"id": 270, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_sprints": true}, {"id": 10, "guid": "0658929b-0ca1-56fe-beba-cb94b1ad49f0", "name": {"en": "C08", "fr": "C08"}, "description": {}, "capacity": null, "position": 9, "url": "/orga/event/pyconfr-2024/schedule/rooms/10/", "speaker_info": {}, "availabilities": [{"id": 271, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}], "in_sprints": true}, {"id": 11, "guid": "12420dea-3b68-5cf1-916a-ecac5f22fb03", "name": {"en": "C09", "fr": "C09"}, "description": {}, "capacity": null, "position": 10, "url": "/orga/event/pyconfr-2024/schedule/rooms/11/", "speaker_info": {}, "availabilities": [{"id": 272, "start": "2024-10-31T00:00:00+01:00", "end": "2024-11-04T00:00:00+01:00", "allDay": false}]}], "extra": {"2024-11-02": {"510": {"id": "saturday-breakfast", "title": {"en": "Breakfast", "fr": "Petit-d\u00e9jeuner"}}, "750": {"id": "saturday-lunch", "title": {"en": "Lunch", "fr": "D\u00e9jeuner"}}, "960": {"id": "saturday-snack", "title": {"en": "Snack Time", "fr": "Go\u00fbter"}}}, "2024-11-03": {"510": {"id": "sunday-breakfast", "title": {"en": "Breakfast", "fr": "Petit-d\u00e9jeuner"}}, "750": {"id": "sunday-lunch", "title": {"en": "Lunch", "fr": "D\u00e9jeuner"}}}}, "speakers": {"MNMGGN": {"code": "MNMGGN", "name": "Lucie Anglade", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_IVxfMJT.jpg"}, "9HXPDQ": {"code": "9HXPDQ", "name": "Houleymatou Bald\u00e9", "biography": "Venue d\u2019ailleurs, fille d\u2019analphab\u00e8te, surmontant des obstacles : pr\u00e9jug\u00e9s, patriarcat, in\u00e9galit\u00e9s sociales, racisme, sexisme \u2026 \r\n\r\nDe orpheline \u00e0 l\u2019\u00e9coli\u00e8re, du th\u00e9\u00e2tre au chronique radio, de l\u2019engagement \u00e0 l\u2019action, de la s\u00e9rie de mon enfance (24h chrono) au double dipl\u00f4me d\u2019ing\u00e9nieur Tech (DEV & DATA), j\u2019ai toujours su bien m\u2019entourer, entreprendre et aller de l\u2019avant. \r\n\r\nJe suis Houleymatou Bald\u00e9, fondatrice de Yeeso.fr & du r\u00e9seau IT Woman, \r\nIng\u00e9nieure Solution Tech chez Novodev (un \u00e9diteur logiciel), \r\nConf\u00e9renci\u00e8re Professionnelle (Tech, Inclusion, Leadership F\u00e9minin, TEDx & Keynote).", "avatar": "https://cfp.pycon.fr/media/avatars/Photo_Profil_Houleymatou_QxvXlBj.png"}, "SMBJJ9": {"code": "SMBJJ9", "name": "Stefanie Molin", "biography": "[Stefanie Molin](https://stefaniemolin.com/) is a software engineer at Bloomberg in New York City, where she tackles tough problems in information security, particularly those revolving around data wrangling/visualization, building tools for gathering data, and knowledge sharing. She is also a core developer of [numpydoc](https://github.com/numpy/numpydoc) and the author of \u201c[Hands-On Data Analysis with Pandas: A Python data science handbook for data collection, wrangling, analysis, and visualization](https://www.amazon.com/Hands-Data-Analysis-Pandas-visualization/dp/1800563450),\u201d which is currently in its second edition and has been translated into Korean and Chinese. She holds a bachelor\u2019s of science degree in operations research from Columbia University's Fu Foundation School of Engineering and Applied Science, as well as a master\u2019s degree in computer science, with a specialization in machine learning, from Georgia Tech. In her free time, she enjoys traveling the world, inventing new recipes, and learning new languages spoken among both people and computers.", "avatar": "https://cfp.pycon.fr/media/avatars/portrait_MJgUyD6.jpeg"}, "M37Z9Y": {"code": "M37Z9Y", "name": "Adrien Montagu", "biography": "Adrien Montagu est le CTO de DressKare et poss\u00e8de une vaste exp\u00e9rience en tant qu'architecte logiciel. Passionn\u00e9 par les d\u00e9fis techniques de haut niveau, il excelle dans la gestion de la complexit\u00e9 du code et de la maintenance \u00e0 long terme.\r\n\r\nConsid\u00e9rant le code comme une forme d'artisanat, Adrien s'efforce de mettre en \u0153uvre ses comp\u00e9tences pour cr\u00e9er des solutions logicielles \u00e9l\u00e9gantes et efficaces. Sa vision est de concevoir des logiciels comme on cr\u00e9e des \u0153uvres d'art, avec un souci constant de la qualit\u00e9 et de la perfection.\r\n\r\nSorry j'ai utilis\u00e9 chatgpt ;)", "avatar": "https://cfp.pycon.fr/media/avatars/Adrien-1_qlgcDY8.jpg"}, "DCWZNW": {"code": "DCWZNW", "name": "Victor Stinner", "biography": "Contributeurs c\u0153ur au projet Python depuis 2010, je maintiens Python pour Red Hat upstream (python.org) et downstream (Fedora et RHEL).", "avatar": "https://cfp.pycon.fr/media/avatars/2022_profile_c65IbD0.jpg"}, "K8NGW8": {"code": "K8NGW8", "name": "Mykalin Jones", "biography": "Mykalin Jones is a Particle Physicist-turned-Data Analyst with over a decade of teaching experience. She has written curricula for various topics including Python for Children, The Basics of Python, Intermediate Python, and Data Science for Beginners. She provides individual and group classes on all of these topics as well as maths, science, and standardized test prep. She is based in France and especially enjoy traveling as much as possible and discovering different cultures and languages.", "avatar": "https://cfp.pycon.fr/media/avatars/mj_photo_iOx2pes.jpg"}, "FD7UPW": {"code": "FD7UPW", "name": "Dorian Turba", "biography": "", "avatar": null}, "CS7XHU": {"code": "CS7XHU", "name": "Karine Bauch", "biography": null, "avatar": null}, "CPUYPE": {"code": "CPUYPE", "name": "Pierre-Loic Bayart", "biography": "Ing\u00e9nieur en g\u00e9nie \u00e9nerg\u00e9tique et nucl\u00e9aire de formation, j'ai d\u00e9couvert le langage Python en 2012 gr\u00e2ce au Raspberry Pi. Compar\u00e9 au C, que j'ai \u00e9tudi\u00e9 durant mes \u00e9tudes et au VBA que j'utilisais dans mes postes d'ing\u00e9nieur, Python m'a imm\u00e9diatement s\u00e9duit par sa diversit\u00e9 d'applications et sa facilit\u00e9 d'utilisation. Apr\u00e8s sept ann\u00e9es pass\u00e9es dans l'ing\u00e9nierie nucl\u00e9aire, fascin\u00e9 par l'essor de l'\u00e9cosyst\u00e8me de la data science en Python, j'ai d\u00e9cid\u00e9 de changer de carri\u00e8re en 2016 pour devenir formateur ind\u00e9pendant en donn\u00e9es et intelligence artificielle.\r\n\r\nDepuis septembre 2023, je suis ing\u00e9nieur de recherche p\u00e9dagogique en intelligence artificielle \u00e0 l'Institut interdisciplinaire d'intelligence artificielle de Grenoble (MIAI), travaillant sur le projet de l'\u00c9cole fran\u00e7aise de l'intelligence artificielle (EFELIA). Je co-anime \u00e9galement le Meetup Python de Grenoble et je suis b\u00e9n\u00e9vole dans deux associations, Data for Good et Latitudes, qui \u0153uvrent pour un d\u00e9veloppement num\u00e9rique raisonn\u00e9.", "avatar": null}, "EEJCZU": {"code": "EEJCZU", "name": "Thevenel Joazard", "biography": "", "avatar": null}, "ZLAD93": {"code": "ZLAD93", "name": "Philippe Gregoire", "biography": "I am an old-timer passionate software developer (if you still code at this age, it means you're really hooked).\r\nI had been working for IBM in various technical roles since graduating in 1989, and switched about 3 years ago to work as a SW development consultant for Meritis PACA, a regional ESN based in Sophia Antipolis, France.\r\nAfter enjoying SW trends over the year, from C, C++, Java, I came to Python working on integrating the Pepper robot with then-emerging Cloud-based IA and IoT.\r\nThis naturally led me to get involved in python-based Data Science and ML.\r\nWorking as a consultant for my customer in the travel industry, I came to apply python development to production-grade level in Cloud-based environments, with a strong focus on software quality and continuous operability.", "avatar": "https://cfp.pycon.fr/media/avatars/378b5b78abe38333015dd43699cab2ff_bYq73mA.jpg"}, "GGLDAR": {"code": "GGLDAR", "name": "Samuel de Framond", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/16279fecd2640d2fbad3bd93b5d0ff1f_YDeE8FJ.jpg"}, "J3F7KS": {"code": "J3F7KS", "name": "Reynald Riviere", "biography": "", "avatar": null}, "XLUTSY": {"code": "XLUTSY", "name": "Hasco\u00ebt Camille", "biography": "Je suis un passionn\u00e9 d'intelligence artificielle, avec une exp\u00e9rience enrichissante dans la recherche pour une IA plus \u00e9cologique, acquise lors de mon stage de fin d'\u00e9tudes. J'ai eu l'opportunit\u00e9 de combiner ces deux domaines fascinants et de partager mes connaissances \u00e0 plusieurs reprises lors de talks et m\u00eame d'ateliers/formations.", "avatar": "https://cfp.pycon.fr/media/avatars/linkedin_AiGS2ly.jpeg"}, "SZ3H8V": {"code": "SZ3H8V", "name": "Carmen Alvarez", "biography": "Backend developer at Genymobile, working on the Genymotion Cloud SaaS application.", "avatar": "https://cfp.pycon.fr/media/avatars/1704218900512_0YJUGG0.jpeg"}, "WBWCRW": {"code": "WBWCRW", "name": "Julien Lenormand", "biography": "Ing\u00e9nieur DevOps et Responsable Software \u00e0 Kaizen Solutions\r\n\r\nD\u00e9veloppeur Python convaincu par l'Agile, le Craft, Accelerate et la philosophie grecque antique.\r\nConsultant dans de grands groupes industriels (SNCF, EDF, Thales, Schneider).\r\nMeetupeur grenoblois investi : Human Talks, Python, Craft et Web.\r\nOrganisateur d'\u00e9v\u00e8nements, speaker et accompagnant technique \u00e0 Kaizen Solutions.", "avatar": "https://cfp.pycon.fr/media/avatars/bcca0b5a3f34e5dabbf75c5197e35999_2yP9rhZ.jpg"}, "RFSKWG": {"code": "RFSKWG", "name": "Michal Korbela", "biography": "Michal is a Staff Backend Developer at Kiwi.com, where he works extensively with Python and Go languages to build large-scale systems processing billions of travel itineraries daily. \r\nHe is passionate about improving the developer experience and creating exciting open-source tooling like the Flask-Ninja package. \r\nMichal is always enthusiastic about discussing new features, industry developments, and the latest advancements in technology.", "avatar": "https://cfp.pycon.fr/media/avatars/Sn%C3%ADmka_obrazovky_zo_d%C5%88a_2024-07-21_23-07-29_32fh3qq.png"}, "YBWBW8": {"code": "YBWBW8", "name": "Sarah Abderemane", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/7684d945a38d1c60e64cae48dc0b7b29_maEI1Pp.jpg"}, "V9ANYB": {"code": "V9ANYB", "name": "Mojdeh Rastgoo", "biography": null, "avatar": null}, "ZGGVHD": {"code": "ZGGVHD", "name": "Riccardo Magliocchetti", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/61ba6f6b1fb82707b9344259f74a81b3_MjsKE1N.jpg"}, "NCL3FZ": {"code": "NCL3FZ", "name": "L\u00e9o Ecrepont", "biography": "Je suis dipl\u00f4m\u00e9 en G\u00e9nie \u00c9lectrique de l'INSA de Strasbourg. Passionn\u00e9 par les technologies, j'ai d'abord explor\u00e9 l'\u00e9lectronique avant de me lancer dans le d\u00e9veloppement informatique appliqu\u00e9 \u00e0 l'industrie.\r\n\r\nFort de 8 ann\u00e9es d'exp\u00e9rience en tant que d\u00e9veloppeur Python, j'ai eu l'opportunit\u00e9 de participer \u00e0 divers projets qui m'ont permis de consolider mes comp\u00e9tences, que je perfectionne chaque jour. J'ai notamment travaill\u00e9 dans le secteur automobile en Allemagne, puis \u00e0 la direction du mat\u00e9riel de la SNCF sur un projet de datascience visant \u00e0 instaurer la maintenance pr\u00e9dictive des \u00e9quipements.\r\n\r\nDepuis mi-2023, je fais partie de l'\u00e9quipe de Mergify, compos\u00e9e d'experts en CI/CD. Notre mission est d'am\u00e9liorer la qualit\u00e9 et la rapidit\u00e9 du d\u00e9veloppement informatique chez nos clients gr\u00e2ce \u00e0 des outils de pointe.", "avatar": "https://cfp.pycon.fr/media/avatars/1571999945224_mpMNhcz.jpg"}, "DDMNFT": {"code": "DDMNFT", "name": "Melcore", "biography": "Stand-upper en devenir, humoriste d'internet, et vice pr\u00e9sident de l'AFPy.", "avatar": null}, "BDKLGC": {"code": "BDKLGC", "name": "Johannes Bechberger", "biography": "Johannes Bechberger is a JVM developer working on profilers and their underlying technology in the SapMachine team at SAP. He started at SAP in 2022 after two years of research studies at the KIT in Java security analyses. His work today comprises many open-source contributions and his blog, where he writes regularly on in-depth profiling and debugging topics and works on his JEP Candidate 435 to add a new profiling API to the OpenJDK. He has been an avid Python user for almost 10 years, with a special interest in type systems and debuggers.\r\nSince 2023 he's touring through the meet-ups and conferences of Europe, like JavaZone and Devoxx Belgium to speak on various topics.", "avatar": "https://cfp.pycon.fr/media/avatars/1D4_0564_memostlynerdless.de_smallest_GrpdTcf.jpg"}, "CYANQX": {"code": "CYANQX", "name": "Anne Francia", "biography": "\u00c9tudiante en Master CAWEB, j'aspire \u00e0 devenir d\u00e9veloppeuse web full stack. Je me lance donc pleinement dans le monde informatique en participant \u00e0 Pycon 2024, notamment en me portant volontaire en tant qu'assistante de conf\u00e9rence. (Merci \u00e0 Mykalin Jones)", "avatar": "https://cfp.pycon.fr/media/avatars/li-profile-photo-400-x-400-img_2023-07-01-19-39-01-577-jpg_custom_resized_nHRaH99.jpg"}, "PXTG9M": {"code": "PXTG9M", "name": "Arthur Vuillard", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/arthur_portrait_f1NhX7m.jpg"}, "MHGEXV": {"code": "MHGEXV", "name": "Virginie Dewulf", "biography": "Virginie est la directrice ex\u00e9cutive de l'OCA, Odoo Community Association depuis cette ann\u00e9e. En 2018 et 2022, elle a co-fond\u00e9 deux coop\u00e9ratives \u00e0 Bruxelles, l'une dans les services autour du logiciel de gestion Odoo (Coop IT Easy) qui propose des solutions de gestion libres au secteur de l'\u00e9conomie sociale et solidaire, l'autre dans le secteur de la comptabilit\u00e9, toujours autour d'outils de gestion libres.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_pic_virginie_dewulf_O4zXect.png"}, "UGZPGE": {"code": "UGZPGE", "name": "Pierre Verkest", "biography": "Auto-entrepreneur, j'accompagne les entreprises sur l'ensemble du cycle de vie de leurs applications m\u00e9tiers, int\u00e9gr\u00e9es dans leur \u00e9cosyst\u00e8me opensource.\r\n\r\nDe formation g\u00e9om\u00e8tre topographe, je suis tr\u00e8s vite attir\u00e9 par le d\u00e9veloppement d'outil pour me simplifier les t\u00e2ches. J\u2019approfondis ma soif d'apprendre avec une licence dans les Syst\u00e8me d'Information G\u00e9orgraphique (SIG), je tests et d\u00e9couvres plusieurs langages de programmations et technologies.\r\n\r\nAu fils de mes exp\u00e9riences, depuis 2012, j'arrive au d\u00e9veloppement et l'int\u00e9gration d'outils de gestion pour les entreprises d\u00e9velopp\u00e9 en python - ce langage ne me quitte plus depuis !\r\n\r\nAujourd'hui encore, passionn\u00e9 par les m\u00e9tiers de l'informatique, j'explore l'univers num\u00e9rique et ses \u00e9co-syst\u00e8mes de leurs utilisations aux m\u00e9thodes de gestion de projet en passant par le cycle de d\u00e9veloppement des projets.", "avatar": "https://cfp.pycon.fr/media/avatars/1fa58452b26390ffc82dc22c149d8bea_Lg87UMW.jpg"}, "7LRXXV": {"code": "7LRXXV", "name": "Agn\u00e8s Haasser", "biography": null, "avatar": null}, "XDAMDT": {"code": "XDAMDT", "name": "Thierry Chappuis", "biography": "Apr\u00e8s des \u00e9tudes d'ing\u00e9nieur et un doctorat \u00e0 l'Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne, je suis professeur de chimie industrielle et de mod\u00e9lisation au sein de l'institut ChemTech \u00e0 la Haute Ecole d'Ing\u00e9nierie et d'Architecture de Fribourg (Suisse), et formateur freelance avec PlacePython, . Dans le contexte de mes travaux de recherche et d'enseignement, j'utilise Python pour ses qualit\u00e9s en mati\u00e8re de programmation web et d'APIs (essentiellement avec Django et Django Rest Framework), d'analyse de donn\u00e9es et d'apprentissage statistique, notamment pour l'optimisation et le contr\u00f4le de proc\u00e9d\u00e9s chimiques industriels. \r\nA ma sortie du bureau, je m'int\u00e9resse aux diff\u00e9rentes innovations du langage et \u00e0 leur enseignement. Dans ce contexte, je forme en ligne des adultes en reconversion sur Python, Django et Wagtail depuis 2017. Utilisateur de Python depuis sa version 2.0, je scripte ma vie en .py au quotidien et j'essaie \u00e0 chaque occasion de transmettre cette passion. \r\nBref! Python est une composante essentielle de ma vie depuis plus de 20 ans et mon couteau suisse digital.", "avatar": "https://cfp.pycon.fr/media/avatars/Thierry_mv6A1az.png"}, "F8FZBM": {"code": "F8FZBM", "name": "Gabriel Trouv\u00e9", "biography": null, "avatar": null}, "ZZKWMM": {"code": "ZZKWMM", "name": "Soufiane Khoudmi", "biography": "Anciennement Data Science Manager, je suis passionn\u00e9 par les approches data et analytiques qui commencent par le business, finissent par le business, avec de la tech au milieu.\r\n\r\nJ'ai d\u00e9cid\u00e9 de cr\u00e9er Make Open Data car j'ai toujours \u00e9t\u00e9 frustr\u00e9 de voir que les m\u00eames op\u00e9rations sur les m\u00eames donn\u00e9es publiques sont r\u00e9alis\u00e9es par des \u00e9quipes diff\u00e9rentes dans leurs coins.", "avatar": "https://cfp.pycon.fr/media/avatars/resized_6jlxmjQ.jpeg"}, "SQBMFV": {"code": "SQBMFV", "name": "Christophe Papazian", "biography": "After a lifetime working in computer science at university, I'm now a software engineer at Datadog since 2022.", "avatar": null}, "87HGZ8": {"code": "87HGZ8", "name": "Lorenzo Mele", "biography": "With over 20 years of experience in the IT sector and more than a decade dedicated to Python programming, I currently serve as the Python Tech Lead at Kraken Tech.\r\nBeyond technology, I am passionate about 'unrelated things' (philosophy, psychology, debate, ...) which I believe enrich my professional approach.\r\nI am also among the organizers of PyMI, the Python community in Milan.", "avatar": "https://cfp.pycon.fr/media/avatars/squared-me_05C7r09.jpeg"}, "9ECLEP": {"code": "9ECLEP", "name": "HS-157", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/typhlo_ZFlC9Xc.png"}, "7MTSUN": {"code": "7MTSUN", "name": "Guillaume Fassot", "biography": "Je suis Guillaume Fassot, d\u00e9veloppeur et data scientist passionn\u00e9 avec 5 ans d'experience, sp\u00e9cialis\u00e9 en Python, JavaScript et Rust. J'utilise principalement les frameworks NextJS, NodeJS et FastAPI pour mes projets.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_eVIoWik.png"}, "HKJWKJ": {"code": "HKJWKJ", "name": "Corentin Normant", "biography": "", "avatar": "https://cfp.pycon.fr/media/avatars/me_3dNmHcI.png"}, "JGHJ7S": {"code": "JGHJ7S", "name": "Damien Ramelet", "biography": "Former forensic scientist, i am a self-taught Python and back-end developer for 4\u00a0years. After working for a FinTech company, i joined pass Culture in mid-2023, where we deal with millions of users every day.\r\nAt that scale, every line of code has to be carefully thought out. It\u2019s a challenging environment where i learn every day.\r\nDuring my spare time, i am a CTF\u00a0player (cybersecurity competitions). This allows me to go deep into a wide range of subjects that i would never encounter otherwise.", "avatar": "https://cfp.pycon.fr/media/avatars/IMG-20230710-WA0027_uj5yvjX.jpg"}, "LG3VYQ": {"code": "LG3VYQ", "name": "Michel Kl\u00fcger", "biography": "As a Software Engineer, Michel engages in identifying, developing, and testing software solutions for IT-related work, in addition to supporting the data analysis team in creating internal programs and automating tasks that can help in executing the projects efficiently.\r\n\r\nMichel studied aerospace engineering at UFABC in Brazil, after which he worked in the technology sector as a software developer. His project experience includes supporting the Galileo global navigation satellite system (GNSS) constellation at the German Aerospace Center (DLR) and serving as a field engineer at Halley Research Station in Antarctica.", "avatar": "https://cfp.pycon.fr/media/avatars/bd5d2462b6efc4ba663ec226142585e1_TWN6V25.jpg"}, "BJ7BC8": {"code": "BJ7BC8", "name": "P\u00e9n\u00e9lope Gittos", "biography": "Titulaire d'un Bac +5 en gestion et commerce international de Sorbonne Universit\u00e9, j'ai d\u00e9cid\u00e9 de me sp\u00e9cialiser dans la data en 2023 avec Le Wagon, avant de rejoindre Probabl en tant que Business Developer. Aujourd'hui je contribue au d\u00e9veloppement de cette start-up fran\u00e7aise en promouvant scikit-learn \u00e0 travers la construction du service de Formation et Certification.", "avatar": "https://cfp.pycon.fr/media/avatars/1701860254551_j468iVl.jpeg"}, "T3T8VS": {"code": "T3T8VS", "name": "Yann Bouvet", "biography": "D\u00e9veloppeur Fullstack Senior chez [Shodo Lyon](https://shodo.io/), je suis tomb\u00e9 dans le software craft r\u00e9cemment.\r\nSes pratiques et m\u00e9thodes m'\u00e9merveillent et facilite mon travail, c'est pour \u00e7a que j'aime en parler.", "avatar": "https://cfp.pycon.fr/media/avatars/snowcamp20241_9tSk3sD.jpg"}, "XDTLAR": {"code": "XDTLAR", "name": "Antoine Rozo", "biography": "D\u00e9veloppeur Python chez Alma.\r\n\r\n<https://entwanne.github.io>", "avatar": "https://cfp.pycon.fr/media/avatars/schtroumpf_flat_rounded_big_md8PJUj.png"}, "XBHTKR": {"code": "XBHTKR", "name": "Sara Iris Garcia", "biography": "Sara is a seasoned software developer and a data science enthusiast. She is particularly interested the application of artificial intelligence in health care and all things Python. When she is not analyzing data, she spends her free time learning how to grow vegetables and becoming self sustainable.", "avatar": "https://cfp.pycon.fr/media/avatars/20220922_141623_5DgwsxI.jpg"}, "VKUPLZ": {"code": "VKUPLZ", "name": "Flavien Lambert", "biography": "Flavien Lambert est physicien de formation. Apr\u00e8s cinq ann\u00e9es de recherche au Commissariat\r\n\u00e0 l\u2019\u00c9nergie Atomique, travaillant sur la conception d\u2019exp\u00e9riences sur le LASER M\u00e9gaJoule, il\r\nrejoint en 2014 un laboratoire du MIT \u00e0 l\u2019universit\u00e9 de Singapour pour explorer des m\u00e9thodes\r\nd\u2019analyse statistique sur des sujets d\u2019urbanisme et de mobilit\u00e9. Tent\u00e9 par le milieu des startups,\r\nil prend la t\u00eate mi-2015 d\u2019une petite \u00e9quipe d\u2019analyse de donn\u00e9es chez Piktochart, une startup\r\nmalaisienne qui offre un outil de design en ligne. En 2020, de retour en France, il met ses\r\ncomp\u00e9tences \u00e0 disposition de Fieldbox, une startup bordelaise proposant des solutions\r\nd\u2019intelligence artificielle pour l\u2019industrie, en tant que Lead Data Scientist \u00e0 la t\u00eate d\u2019une \u00e9quipe\r\nd\u2019une dizaine de personnes en charge du d\u00e9veloppement de logiciels de maintenance\r\npr\u00e9dictive. Flavien est, depuis mi-2022, manager et tech lead chez Sencrop, o\u00f9 son \u00e9quipe g\u00e8re\r\nles donn\u00e9es m\u00e9t\u00e9orologiques de 35000 stations connect\u00e9es.", "avatar": null}, "LK8CHX": {"code": "LK8CHX", "name": "Paul Arnaud", "biography": "Ing\u00e9nieur sp\u00e9cialis\u00e9 en informatique, je suis depuis quatre ans Data Engineer chez Sencrop, une startup de l'Agtech situ\u00e9e \u00e0 Lille qui aide les agriculteurs\u00b7ices \u00e0 g\u00e9rer leur exploitation. Python est mon outil quotidien pour concevoir et maintenir nos API internes (FastAPI) et nos pipelines ETL (Airflow, kedro).", "avatar": null}, "WLFZBG": {"code": "WLFZBG", "name": "Fran\u00e7oise Conil", "biography": "Je suis d\u00e9veloppeuse logiciel depuis 1990, d'abord dans les t\u00e9l\u00e9communications\r\npendant une dizaine d'ann\u00e9es puis dans un laboratoire de recherche en\r\ninformatique, le LIRIS \u00e0 Lyon, en tant que personnel CNRS d'appui \u00e0 la recherche.\r\n\r\nJe d\u00e9veloppe en Python depuis plus de quinze ans, que ce soit pour du d\u00e9veloppement web ou de la manipulation de donn\u00e9es.\r\n\r\nJe suis membre du CA de l'APRIL depuis le d\u00e9but de cette ann\u00e9e.", "avatar": "https://cfp.pycon.fr/media/avatars/portrait-2023_j1R8X4T.jpg"}, "98TUDC": {"code": "98TUDC", "name": "Ines Montani", "biography": "Ines Montani is a developer specializing in tools for AI and NLP technology. She\u2019s the co-founder and CEO of Explosion and a core developer of spaCy, a popular open-source library for Natural Language Processing in Python, and Prodigy, a modern annotation tool for creating training data for machine learning models.", "avatar": "https://cfp.pycon.fr/media/avatars/profile_ines_CwI4Z0j.jpg"}, "YPFTWA": {"code": "YPFTWA", "name": "David Rigaudie", "biography": "Passionn\u00e9 par le d\u00e9veloppement depuis de nombreuses ann\u00e9es j'aime d\u00e9couvrir de nouveau concept pour acqu\u00e9rir de nouvelle comp\u00e9tence", "avatar": "https://cfp.pycon.fr/media/avatars/profil_rond_blanc_smaller_0VAGmCN.png"}, "HMC8KE": {"code": "HMC8KE", "name": "Vous / You", "biography": "", "avatar": null}, "R9BUF8": {"code": "R9BUF8", "name": "Antoine Rigoureau", "biography": "D\u00e9veloppeur backend chez XMCO", "avatar": null}, "JFQBHZ": {"code": "JFQBHZ", "name": "Darko Stankovski", "biography": "Consultant ind\u00e9pendant, Python est mon langage de pr\u00e9dilection depuis plus de 10 ans. J'anime \u00e9galement des formations et communique sur l'importance de l'apprentissage de la programmation.", "avatar": "https://cfp.pycon.fr/media/avatars/darko-stankovski_rbtDb0l.jpeg"}, "HEAGCX": {"code": "HEAGCX", "name": "L\u00e9a", "biography": "Ing\u00e9nieure, vendeuse de popcorn, prof de maths puis d\u00e9veloppeuse, je suis arriv\u00e9e dans \u201cla tech\u201d en 2020 par une formation de reconversion courte. Apr\u00e8s de nombreuses p\u00e9rip\u00e9ties, ce virage professionnel est aujourd\u2019hui une r\u00e9ussite.\r\nJe vous partage avec beaucoup de plaisir (et une goutte de vitriol) mon point de vue, mes \u00e9tonnements et stup\u00e9factions concernant cet univers passionnant ainsi que sur celles et ceux qui y travaillent.", "avatar": "https://cfp.pycon.fr/media/avatars/4558c7cae0fae300acac8fbde230bdf5_PjwVbFZ.jpg"}, "9BDHY7": {"code": "9BDHY7", "name": "L\u00e9ni Gauffier", "biography": null, "avatar": null}, "3TW3UK": {"code": "3TW3UK", "name": "Roxane Bellot", "biography": "", "avatar": null}, "7VWQCE": {"code": "7VWQCE", "name": "Pawe\u0142 Zaj\u0105czkowski", "biography": "Pawe\u0142 has been working in Wroc\u0142aw IT since 2009. He was digging through the code in a Finnish telecom, German logistics, a Swiss bank, a car factory, a travel startup, British compliance, and villa rental. Currently, he has gone to the dark side and takes care of a flock of programmers and team leaders, a mentoring program, a guild and is sticking his nose wherever else he can. \r\nPersonally, he likes to read, play board games, analog and computer RPGs. He practices powerlifting and collects vintage Lego Technic. Writes about software, peopleware and dragons on HowToTrainYourJava.com.", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_4_WsiSLqn.png"}, "MFWSKF": {"code": "MFWSKF", "name": "Nandana Sreeraj", "biography": "Nandana is a data scientist at Censius AI and an incoming MSc student at X-HEC Paris, specializing in Data Science for Business. She holds a bachelor's degree from the College of Engineering, Trivandrum. Nandana has published a research paper in the healthcare domain in an international journal. She has extensive experience working in the commerce and SaaS industries and has been actively involved in projects leveraging Generative AI. Nandana has extensive experience with Python, having used it for six years.", "avatar": "https://cfp.pycon.fr/media/avatars/86199-2_LkzPolO.jpg"}, "CZEFBN": {"code": "CZEFBN", "name": "Cl\u00e9ment Benoist", "biography": "Cl\u00e9ment Benoist, statisticien au CHU de Limoges, travaille sur l'utilisation du deep learning et des statistiques pour la greffe r\u00e9nale et la pharmacologie (pharmacie) associ\u00e9e ; dans ce travail, l'utilisation de python est quotidienne. Il a obtenu un doctorat en machine learning appliqu\u00e9 aux sciences de la Terre, en python notamment. Les connaissances avanc\u00e9es en statistique, machine learning et deep learning ont \u00e9t\u00e9 acquis \u00e0 l\u2019\u00c9cole Normale Sup\u00e9rieure de Cachan et \u00e0 l'universit\u00e9 d'Orsay.", "avatar": null}, "8VULFN": {"code": "8VULFN", "name": "Thomas Eder", "biography": "Docteur en Informatique, ex enseignant-chercheur pass\u00e9 par trois laboratoires fran\u00e7ais dont l'ICube, Thomas est aujourd'hui entrepreneur et dirige Kata.Games\u00a0; une Start-up qui pr\u00e9pare la commercialisation d'une plateforme Gaming nouvelle g\u00e9n\u00e9ration avec entr\u00e9e en activit\u00e9 pr\u00e9vue pour fin 2024.\r\n\r\n_Passionn\u00e9 de jeux vid\u00e9o et d'innovations_, Thomas s'est engag\u00e9 dans la cr\u00e9ation de jeux vid\u00e9o ind\u00e9pendants et de logiciels exp\u00e9rimentaux pour rendre le Web plus ludique. Il est \u00e9galement b\u00e9n\u00e9vole et actuel Pr\u00e9sident au sein de l'association 'Strasbourg Games Community' qui rassemble passionn\u00e9s et professionnels du Jeu Vid\u00e9o.", "avatar": "https://cfp.pycon.fr/media/avatars/profile-pic3_DLnEGHW.jpg"}, "VKBT9L": {"code": "VKBT9L", "name": "Romain Dorgueil", "biography": "Artisan logiciel, entrepreneur, musicien et joueur de go.", "avatar": "https://cfp.pycon.fr/media/avatars/5addf5cf7036bb857a464ee5f7775ed4_6QgfUvT.jpg"}, "8FY9BR": {"code": "8FY9BR", "name": "Arthur Degonde", "biography": null, "avatar": null}, "HP9RV3": {"code": "HP9RV3", "name": "Isra Chahrazed Goumiri", "biography": "Hello everyone, I'm Isra Chahrazed, a passionate software engineer with a love for making complex technology accessible and engaging for all. My journey in technology began with earning both Engineering and Master's degrees in Computer Science from the Higher School of Computer Science in 2019. During my time there, I co-founded \"Rubixode,\" a student-led initiative focused on teaching computer science fundamentals through the Rubik's cube.\r\n\r\nBeyond my technical work, I am deeply committed to STEM education. I've had the privilege of mentoring young learners through various virtual and in-person programs, including creating tech courses and overseeing teams of mentors. To further support educators, I established the Young Teachers Community to foster empowerment and collaboration.\r\n\r\nMy advocacy for accessible learning technologies has led me to speak at platforms like TED Talks and at Women Techmakers events, where I share insights into the tech industry and inspire others to pursue careers in STEM. I truly believe in the transformative power of education and love helping young learners discover their passions.", "avatar": "https://cfp.pycon.fr/media/avatars/unnamed_1_MBCGTSD.jpg"}, "EECQMZ": {"code": "EECQMZ", "name": "SebCorbin", "biography": null, "avatar": null}, "UBSLAJ": {"code": "UBSLAJ", "name": "Tristan Benier", "biography": "", "avatar": null}, "T9XWU3": {"code": "T9XWU3", "name": "Khaznadar Georges", "biography": "Professeur \u00e9m\u00e9rite de sciences physiques, informatique au lyc\u00e9e Jean Bart de Dunkerque", "avatar": "https://cfp.pycon.fr/media/avatars/georgesk1_gaKzZjc.png"}, "CVA3T8": {"code": "CVA3T8", "name": "Emmanuel Garette", "biography": "Libriste depuis plus de 25 ans. [Freelance](https://www.silique.fr/) depuis 2 ans.\r\nUtilise Python depuis plus de 16 ans dans le cadre du projet de l'\u00c9ducation Nationale EOLE.\r\nD\u00e9veloppeur principale du projet [Tiramisu](https://tiramisu.readthedocs.io/en/latest/) et des projets [Rougail](https://rougail.readthedocs.io/en/latest/).", "avatar": "https://cfp.pycon.fr/media/avatars/avatar_eTWe7Gw.png"}, "BXWZLZ": {"code": "BXWZLZ", "name": "Anis Smail", "biography": "D\u00e9veloppeur depuis 8 ans, j'ai d'abord commenc\u00e9 en startup puis je suis all\u00e9 en ESN o\u00f9 j'ai travaill\u00e9 pour des grand comptes, je consacre une journ\u00e9e par mois \u00e0 former et coacher d'autres d\u00e9veloppeurs.", "avatar": "https://cfp.pycon.fr/media/avatars/debc9e048bdd1bb4340f91e7884c33a3_WBYaYiG.jpg"}, "W7FPVS": {"code": "W7FPVS", "name": "Neeraj Pandey", "biography": "Neeraj is a polyglot. Over the years, he has worked on a variety of full-stack software and data-science applications, as well as computational arts and Quantitative finance projects, and likes the challenge of creating new tools and applications.", "avatar": "https://cfp.pycon.fr/media/avatars/Screenshot_2024-07-21_at_15.09.05_sYY3r7m.png"}, "HCDPLP": {"code": "HCDPLP", "name": "Claude Simon", "biography": "Ing\u00e9nieur logiciel", "avatar": "https://cfp.pycon.fr/media/avatars/22625704_nOxgjG7.jpeg"}, "DR3RTG": {"code": "DR3RTG", "name": "Denis Vivi\u00e8s", "biography": "", "avatar": null}, "UGZV8V": {"code": "UGZV8V", "name": "Maxim Danilov", "biography": "Python/Django Senior Engineer, Solution Architect, DevRel and Tech Speaker. \r\n\r\nI start my career as a programmer specializing in embedded solutions in 1997, and grow to the CTO in 2023. Through many successful projects, I gained a robust understanding of various software development paradigms. In last 10 years as a code mentor, I 've got three times the Award 'Super Mentor in Engineering'", "avatar": "https://cfp.pycon.fr/media/avatars/04_2024_lx0x7Pm.jpg"}, "CCUP7G": {"code": "CCUP7G", "name": "Christophe Benz", "biography": "Apr\u00e8s 8 ans pass\u00e9s \u00e0 Easter-eggs, l'une des plus anciennes soci\u00e9t\u00e9s de services sp\u00e9cialis\u00e9e dans le logiciel libre, j'ai travaill\u00e9\u00a0\u00e0 Etalab sur le moteur de simulation socio-fiscal OpenFisca, logiciel libre d\u00e9velopp\u00e9 en Python. Aujourd'hui je suis responsable technique de la plateforme DBnomics qui vise \u00e0 faciliter l'acc\u00e8s aux donn\u00e9es \u00e9conomiques.", "avatar": "https://cfp.pycon.fr/media/avatars/970d2e3e768d795b4014fde0aaf9f153_jwByKMs.jpg"}, "LCMBXK": {"code": "LCMBXK", "name": "Julie Rymer", "biography": "Ayant commenc\u00e9 \u00e0 travailler en 2016 dans le d\u00e9veloppement informatique, j\u2019ai rapidement eu la charge de la direction technique des diff\u00e9rents projets qui m\u2019ont \u00e9t\u00e9 confi\u00e9s au fil de ma carri\u00e8re, dont 2.5 ans en tant que CTO.\r\n\r\nLass\u00e9e des politiques de management et de gestion subis jusqu'alors en entreprise, j'ai d\u00e9cid\u00e9 de cr\u00e9er ma propre structure en 2024 sous la forme d'une coop\u00e9rative (SCOP) o\u00f9 tous ont le m\u00eame pouvoir d\u00e9cisionnaire et chacun re\u00e7oit une part \u00e9quitable des b\u00e9n\u00e9fices, avec un grande priorit\u00e9 donn\u00e9e \u00e0 l'humain et la transparence.\r\n\r\nNous sommes tr\u00e8s engag\u00e9s dans l'opensource dont nous tirons tous collectivement les b\u00e9n\u00e9fices et sommes devenus les nouveaux mainteneurs de la refonte de la solution de gestion de projets Taiga, en cours de r\u00e9\u00e9criture.", "avatar": "https://cfp.pycon.fr/media/avatars/picture_julie_square_WqBP5a1.png"}, "8JBXQD": {"code": "8JBXQD", "name": "Yuichiro Tachibana", "biography": "Yuichiro works as a professional software developer and also loves contributing to OSS projects. As a Pythonista, he has participated in various projects including web development, multimedia streaming, data management, computer vision, and machine learning.", "avatar": "https://cfp.pycon.fr/media/avatars/pk2649_trimmed1_800_m7alpvx.jpg"}}}