{"$schema": "https://c3voc.de/schedule/schema.json", "generator": {"name": "pretalx", "version": "2026.1.1"}, "schedule": {"url": "https://pretalx.com/pyconapac2023/schedule/", "version": "0.1.9", "base_url": "https://pretalx.com", "conference": {"acronym": "pyconapac2023", "title": "PyCon APAC 2023", "start": "2023-10-26", "end": "2023-10-29", "daysCount": 4, "timeslot_duration": "00:05", "time_zone_name": "Asia/Tokyo", "colors": {"primary": "#3aa57c"}, "rooms": [{"name": "track 1", "slug": "2322-track-1", "guid": "6d962187-73b1-5d46-b18a-f78595e39738", "description": null, "capacity": null}, {"name": "track 2", "slug": "2323-track-2", "guid": "7d81eb14-ed4d-5710-832d-b9a3447350fb", "description": null, "capacity": null}, {"name": "track 3", "slug": "2321-track-3", "guid": "04645ce6-c40f-522c-bc62-6755e3626954", "description": null, "capacity": null}, {"name": "track 4", "slug": "2320-track-4", "guid": "1e20d807-de53-524f-8eec-65d7127186e7", "description": null, "capacity": null}, {"name": "track 5", "slug": "2324-track-5", "guid": "4ee0da4e-8c5c-5b7e-8382-b0fce2a7a7e3", "description": null, "capacity": null}, {"name": "Tutorial 1", "slug": "2424-tutorial-1", "guid": "d8849500-2e82-5803-9c3b-bb56fcb34a52", "description": null, "capacity": null}, {"name": "Tutorial 2", "slug": "2425-tutorial-2", "guid": "01393881-9a12-5021-90e0-d7630496af23", "description": null, "capacity": null}], "tracks": [{"name": "Web programming", "slug": "3645-web-programming", "color": "#000000"}, {"name": "Visualization / Games / Music", "slug": "3654-visualization-games-music", "color": "#FC9700"}, {"name": "Related with another language", "slug": "3646-related-with-another-language", "color": "#4F00F7"}, {"name": "Tips of development with Python", "slug": "3644-tips-of-development-with-python", "color": "#F1163D"}, {"name": "Network programing", "slug": "3648-network-programing", "color": "#00138F"}, {"name": "Python in education", "slug": "3649-python-in-education", "color": "#00FFF0"}, {"name": "Others", "slug": "3650-others", "color": "#7D0101"}, {"name": "Hardware", "slug": "3651-hardware", "color": "#007801"}, {"name": "Test for development", "slug": "3652-test-for-development", "color": "#D919B4"}, {"name": "Machine learning", "slug": "3655-machine-learning", "color": "#05EC00"}, {"name": "Python core", "slug": "3653-python-core", "color": "#9600FF"}, {"name": "Niche technique", "slug": "3657-niche-technique", "color": "#5E9404"}, {"name": "Approaching to social problem", "slug": "3647-approaching-to-social-problem", "color": "#0D00FB"}], "days": [{"index": 1, "date": "2023-10-26", "day_start": "2023-10-26T04:00:00+09:00", "day_end": "2023-10-27T03:59:00+09:00", "rooms": {"Tutorial 1": [{"guid": "77039fe5-1b7a-52ca-bc02-23f77cef627a", "code": "QZPFCF", "id": 33208, "logo": null, "date": "2023-10-26T11:00:00+09:00", "start": "11:00", "duration": "03:00", "room": "Tutorial 1", "slug": "pyconapac2023-33208-three-musketeers-sherlock-holmes-mathematics-and-python", "url": "https://pretalx.com/pyconapac2023/talk/QZPFCF/", "title": "Three Musketeers: Sherlock Holmes, Mathematics and Python", "subtitle": "", "track": "Others", "type": "Tutorial Session", "language": "en", "abstract": "In our daily life, we use mathematics knowingly and unknowingly. Many of us are unaware that forensic experts use mathematics to solve crime mysteries. In this workshop, we will explore how Sherlock Holmes, the famous fictional detective character created by Sir Arthur Conan Doyle uses Mathematics and Python programming language to solve crime mysteries.", "description": "Mathematics is a science and one of the most important discoveries of the human race on earth. Math is everywhere and around us. It is in nature, music, sports, economics, engineering, and so on. In our daily life, we use mathematics knowingly and unknowingly. Many of us are unaware that forensic experts use mathematics to solve crime mysteries. In this workshop, we will explore how Sherlock Holmes, the famous fictional detective character created by Sir Arthur Conan Doyle uses Mathematics and Python programming language to solve crime mysteries. In short, the workshop begins with an introduction to forensic mathematics and covers basic principles thereby setting the stage. Then, we will solve simple crime puzzles using mathematics and simple python scripts. Finally, we will solve a few complex hypothetical crime mysteries using advanced python concepts. The participants will learn how to use the concepts of mathematics such as statistics, probability, trigonometry, and graph theory, and python and its packages such as SciPy, NumPy, and Matplotlib to solve the crime puzzles.\n\nOutline\n1. Introduction to Forensic Mathematics and overview of basic concepts (15 Minutes)\n- Numbers and their representation\n- Units of Measurements\n- Basic chemical calculations \n- Functions, Formulae and equations \n- Pythagoras Theorem \n- Trigonometric methods \n- Graphs \n- Statistics and probability\n\n2. Problems\n- Estimate the pressure of a shoe print on a soft ground (05 Minutes) \n- Calculate the uncertainty given the measurement of bullet diameter (05 Minutes) \n- Calculate the mean molar mass (10 Minutes)\n- Calculate the percentage of concentrations (10 Minutes)\n\n------BREAK -------- (05 Minutes)\n- Compute bloodstain thickness (05 Minutes)\n- Calculate terminal velocity for a fine blood droplet (05 Minutes)\n- Calculate the persistence of gunshot residue particles in air (05 Minutes)\n- Calculate the impact speed and estimate the drop height of blood droplet (05 Minutes)\n- Post-mortem body cooling (05 minutes)\n- Ricochet analysis and aspects of ballistics (10 Minutes)\n- Suicide, Accident or murder? (05 Minutes)\n- Blood stain pattern analysis (10 minutes)\n- Persistence of hair, fibres, and flints on clothing (05 minutes)\n----------BREAK----------- (05 Minutes)\n- Determine the time since death (05 Minutes)\n- Determine the age from bone or tooth material (05 Minutes)\n- Matching of hair evidence (05 Minutes)\n- Matching bite marks (05 Minutes)\n\n3. Digital Forensics with Python (30 minutes) \n\n4. Advanced Problems\n- Bicycle Problem (10 Minutes) \n- Detect the location of a serial killer (10 Minutes)", "recording_license": "", "do_not_record": false, "persons": [{"code": "CPJQQS", "name": "Gajendra Deshpande", "avatar": "https://pretalx.com/media/avatars/CPJQQS_Dy3rZGa.webp", "biography": "", "public_name": "Gajendra Deshpande", "guid": "c9d7383b-8dee-551a-af88-006a165ffe7d", "url": "https://pretalx.com/pyconapac2023/speaker/CPJQQS/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/QZPFCF/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/QZPFCF/", "attachments": []}, {"guid": "801922b8-0a66-5853-878e-75c6c75f76ff", "code": "YWEW9U", "id": 31646, "logo": null, "date": "2023-10-26T14:30:00+09:00", "start": "14:30", "duration": "03:00", "room": "Tutorial 1", "slug": "pyconapac2023-31646-network-analysis-made-simple-and-fast", "url": "https://pretalx.com/pyconapac2023/talk/YWEW9U/", "title": "Network Analysis Made Simple (and fast!)", "subtitle": "", "track": "Machine learning", "type": "Tutorial Session", "language": "en", "abstract": "Through the use of NetworkX's API, tutorial participants will learn about the basics of graph theory and its use in applied network science. Starting with a computationally-oriented definition of a graph and its associated methods, we will build out into progressively more advanced concepts (path and structure finding). We will also discuss new advances to speed up NetworkX Code with dispatching.", "description": "Have you ever wondered about how those data scientists at Facebook and LinkedIn make friend recommendations? Or how epidemiologists track down patient zero in an outbreak? If so, then this tutorial is for you. In this tutorial will cover the basic of network analysis, we will use a variety of datasets to help you understand the fundamentals of network thinking, with a particular focus on constructing, summarizing, and visualizing complex networks. We will also cover recent changes in NetworkX which enables users to dispatch their code to more efficient backends like GraphBLAS to speed up their code.\n\nBy the end of the tutorial, participants will have learned how to use network thinking to better understand relationship problems while analyzing data. They will also be comfortable using the NetworkX API to model their data.\n\nPart 1: Introduction\n\n- Networks of all kinds: biological, transportation, web.\n- Representation of networks, NetworkX data structures\n- Introduction to NetworkX API for modelling and graph operations.\n\nPart 2: Hubs and Paths\n\n- Finding important nodes; applications\n- Pathfinding algorithms and their applications\n- Hands-on: implementing path-finding algorithms\n- Visualize degree and betweenness centrality distributions.\n\nPart 3: Cliques, Triangles & Structures\n\n- Definition of cliques\n- Triangles as the simplest complex clique, applications\n- Using path-finding algorithms to find structures in a graph.\n- Open triangles as recommender systems.\n\nPart 4: Speed up your code with NetworkX dispatching\n\n- Quick introduction to GraphBLAS\n- Moving between GraphBLAS and NetworkX.\n- Speed up your NetworkX code by changing one line of code!", "recording_license": "", "do_not_record": false, "persons": [{"code": "UAM73R", "name": "Mridul Seth", "avatar": "https://pretalx.com/media/avatars/UAM73R_UyFsIYx.webp", "biography": "I am currently working on the NetworkX open source project (work funded through a grant from Chan Zuckerberg Initiative!). Also collaborating with folks from the Scientific Python project (Berkeley Institute of Data Science), Anaconda Inc. Before this I used to work on the GESIS notebooks and gesis.mybinder.org.\nI am also interested in the development and maintenance of the open source data & science software ecosystem. I try to help around with the Scientific Open Source ecosystem wherever possible. To share my love of Python and Network Science, I have presented workshops at multiple conferences like PyCon, (Euro)SciPy, PyData London and many more!", "public_name": "Mridul Seth", "guid": "f6239738-0277-5030-9243-0c8324c28ce8", "url": "https://pretalx.com/pyconapac2023/speaker/UAM73R/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/YWEW9U/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/YWEW9U/", "attachments": []}], "Tutorial 2": [{"guid": "b8b9f08e-2c1f-507d-9010-92e6a2586a37", "code": "9RN8HD", "id": 33020, "logo": null, "date": "2023-10-26T11:00:00+09:00", "start": "11:00", "duration": "03:00", "room": "Tutorial 2", "slug": "pyconapac2023-33020-pyvista3d", "url": "https://pretalx.com/pyconapac2023/talk/9RN8HD/", "title": "PyVista\u306b\u3088\u308b3D\u30d3\u30b8\u30e5\u30a2\u30e9\u30a4\u30bc\u30fc\u30b7\u30e7\u30f3", "subtitle": "", "track": "Visualization / Games / Music", "type": "Tutorial Session", "language": "en", "abstract": "[PyVista](https://github.com/pyvista/pyvista)\u306f\u30011400\u4ee5\u4e0a\u306e\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u4f7f\u7528\u3055\u308c\u3066\u3044\u308b\u6c4e\u75283D\u53ef\u8996\u5316\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3001[\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u652f\u63f4\u30a8\u30f3\u30b8\u30cb\u30a2\u30ea\u30f3\u30b0\u3084\u5730\u7403\u7269\u7406\u5b66\u304b\u3089\u706b\u5c71\u3084\u30c7\u30b8\u30bf\u30eb\u30a2\u30fc\u30c8\u30ef\u30fc\u30af\u307e\u3067](https://pyvista.github.io/pyvista-docs-dev-ja/getting-started/external_examples.html)\u306e\u3042\u3089\u3086\u308b\u3082\u306e\u3092\u53ef\u8996\u5316\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\n\nPyVista\u306f\u3001[Visualization Toolkit (VTK)](http://www.vtk.org) \u306ePythonic API\u3092\u516c\u958b\u3057\u3001VTK\u306e\u4e88\u5099\u77e5\u8b58\u304c\u306a\u304f\u3066\u3082\u3059\u3050\u306b\u4f7f\u3048\u308b\u30c4\u30fc\u30eb\u3092\u63d0\u4f9b\u3057\u3066\u3044\u307e\u3059\u3002", "description": "\u3053\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u306f\u3001PyVista\u306e\u6700\u65b0\u6a5f\u80fd\u3092\u7d39\u4ecb\u3057\u3001\u5e45\u5e83\u3044\u30e6\u30fc\u30b6\u30fc\u306bPython\u306b\u3088\u308b3D\u30d3\u30b8\u30e5\u30a2\u30e9\u30a4\u30bc\u30fc\u30b7\u30e7\u30f3\u306e\u6700\u524d\u7dda\u3092\u304a\u5c4a\u3051\u3057\u307e\u3059\u3002\n\n- PyVista\u3092\u4f7f\u3063\u3066\u3001\u4e00\u822c\u7684\u306a\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306e\u69d8\u3005\u306a\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u304b\u30893D\u30d3\u30b8\u30e5\u30a2\u30e9\u30a4\u30bc\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3059\u308b\u3002\n- PyVista\u306e\u30af\u30e9\u30b9\u3068\u30c7\u30fc\u30bf\u69cb\u9020\u3092\u5b9f\u4f8b\u3092\u4ea4\u3048\u3066\u6982\u8aac\u3057\u307e\u3059\u3002\n- PyVista\u306e\u3055\u307e\u3056\u307e\u306a\u30d5\u30a3\u30eb\u30bf\u3068\u6a5f\u80fd\u3092\u7406\u89e3\u3059\u308b\u3002\n- PyVista\u3067\u4f7f\u7528\u3055\u308c\u3001\u4f7f\u7528\u3067\u304d\u308bPython\u30e9\u30a4\u30d6\u30e9\u30ea\uff08meshio\u3001trimesh\u306a\u3069\uff09\u3092\u77e5\u3063\u3066\u304a\u304f\u3002\n\n\u3053\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306f\u3001Python\u306e\u57fa\u672c\u7684\u306a\u30e6\u30fc\u30b6\u30fc\u304b\u3089\u4e0a\u7d1a\u306e\u30d1\u30ef\u30fc\u30e6\u30fc\u30b6\u30fc\u307e\u3067\u3001\u3042\u3089\u3086\u308b\u5206\u91ce\u306e\u30c7\u30fc\u30bf\u3092\u53ef\u8996\u5316\u3057\u305f\u3044\u3068\u8003\u3048\u308b\u3059\u3079\u3066\u306e\u4eba\u3092\u5bfe\u8c61\u306b\u3057\u3066\u3044\u307e\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "MDAB3V", "name": "Tetsuo Koyama", "avatar": "https://pretalx.com/media/avatars/MDAB3V_pTYB4D7.webp", "biography": "@tkoyam010\u3068\u3044\u3046\u30cf\u30f3\u30c9\u30eb\u540d\u3067\u6d3b\u52d5\u3002 \u90fd\u5185\u306eIT\u4f01\u696d\u3067\u6570\u5024\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u30bd\u30d5\u30c8\u306e\u958b\u767a\u3068\u53d7\u8a17\u89e3\u6790\u3092\u884c\u3046\u30b7\u30b9\u30c6\u30e0\u30a8\u30f3\u30b8\u30cb\u30a2\u3068\u3057\u3066\u50cd\u304f\u3002\n\n\u53ef\u8996\u5316\u30e9\u30a4\u30d6\u30e9\u30eaPyVista\u306e\u30e1\u30f3\u30c6\u30ca\u517c\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u7ffb\u8a33\u8005\u3002 SciPy Japan 2020\u5ea7\u9577\u3002\n\n\u8457\u66f8\u306b\u300ePython\u306b\u3088\u308b\u6709\u9650\u8981\u7d20\u6cd5 \u5b9f\u88c5\u30ce\u30fc\u30c8\u300f\u304c\u3042\u308b\u3002\n\nFacebook\uff1atetsuo.koyama.94\n\nTwitter\uff1a@tkoyama010\n\nGitHub\uff1atkoyama010", "public_name": "Tetsuo Koyama", "guid": "8e26ac4d-74fd-5824-a1fa-3e23cebbecb5", "url": "https://pretalx.com/pyconapac2023/speaker/MDAB3V/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/9RN8HD/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/9RN8HD/", "attachments": []}]}}, {"index": 2, "date": "2023-10-27", "day_start": "2023-10-27T04:00:00+09:00", "day_end": "2023-10-28T03:59:00+09:00", "rooms": {"track 1": [{"guid": "09ceabb6-2a46-50c4-ae1e-cb0036d1de57", "code": "BUQRTT", "id": 37757, "logo": null, "date": "2023-10-27T10:30:00+09:00", "start": "10:30", "duration": "01:00", "room": "track 1", "slug": "pyconapac2023-37757-keynote-why-university-teachers-wrote-a-python-textbook", "url": "https://pretalx.com/pyconapac2023/talk/BUQRTT/", "title": "Keynote - Why University Teachers Wrote a Python Textbook?", "subtitle": "", "track": null, "type": "Regular Talk", "language": "en", "abstract": "As an elective course in the liberal arts and sciences program,\nKyoto University has held a Python programming course since 2018.", "description": "As an elective course in the liberal arts and sciences program,\nKyoto University has held a Python programming course since 2018.\nFor this course, we developed a textbook in 2019, and continuously revised\nit. We also made the 2019 and the 2021 editions open to the public\nwith the Creative Commons license CC-BY-NC-ND. We obtained various opinions\nthat they are good learning material, and\nup to September 2023, we observed more than 1 million downloads.\nIn this talk, the speaker explains why we developed a textbook by\nourselves instead of using already published ones,\nand points in the design of it considering self-learning by university\nstudents\nas a novice in programming, and to meet a course goal that the learner\ncan design, code, and test small Python programs by themselves.", "recording_license": "", "do_not_record": false, "persons": [{"code": "L7GCAM", "name": "Hajime Kita", "avatar": null, "biography": null, "public_name": "Hajime Kita", "guid": "e6553e13-359b-5776-a295-9a6d9fdc87f3", "url": "https://pretalx.com/pyconapac2023/speaker/L7GCAM/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/BUQRTT/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/BUQRTT/", "attachments": []}, {"guid": "c6f78f65-87f3-5f9d-b373-1983bb380095", "code": "YAW3KH", "id": 32858, "logo": null, "date": "2023-10-27T11:40:00+09:00", "start": "11:40", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-32858-reproduce-evangelion-timer-on-browsers-using-pyscript", "url": "https://pretalx.com/pyconapac2023/talk/YAW3KH/", "title": "Reproduce Evangelion Timer on browsers using PyScript", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "In this talk, we will talk about how to reproduce the Evangelion countdown timer (\u6d3b\u52d5\u9650\u754c\u307e\u3067\u3042\u3068) on Web Browsers  using PyScript , Pyodide, SVG and CSS. Although countdown timer is trivial to implement on browsers, it can be challenging if the graphic design has to be the same as the one in Evangelion. And to make it more fun, we are going to implement this using PyScript!", "description": "We will cover:\n- the appreciation of the Evangelion countdown timer design (the fonts, the colours and the design has changed over the course of time)\n- how to reproduce the graphical elements using SVG \n- how to use PyScript to interact with DOM and SVG\n- how to use CSS to format and animate the GUI components\n- lessons learnt related to PyScript\n- to good and the bad in using PyScript as oppose to Javascript\n- You can(not) do this in Python!", "recording_license": "", "do_not_record": false, "persons": [{"code": "UZNN3F", "name": "Scotty Kwok", "avatar": "https://pretalx.com/media/avatars/UZNN3F_7kjlL0I.webp", "biography": "Scotty Kwok is a software developer and startup founder. He enjoys writing software and building hardware to solve problem in his job and leisure time. He is currently working in Sebit Company Limited (www.sebit.world) as the CTO and founder, specialised in Al/computer vision. Scotty is a frequent speaker in PyCons (PyCon Hong Kong 2018 & 2021 and PyCon APAC 2021) and also program committee in PyCon Hong Kong 2020,2022,2023.", "public_name": "Scotty Kwok", "guid": "1c8530b9-e696-54e3-9386-74fa246e223e", "url": "https://pretalx.com/pyconapac2023/speaker/UZNN3F/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/YAW3KH/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/YAW3KH/", "attachments": []}, {"guid": "7c263fbf-97a9-5a9d-9c61-19906ac093aa", "code": "YTGKPT", "id": 31314, "logo": null, "date": "2023-10-27T13:40:00+09:00", "start": "13:40", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-31314-streamlit-meets-webassembly-stlite", "url": "https://pretalx.com/pyconapac2023/talk/YTGKPT/", "title": "Streamlit meets WebAssembly - stlite", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "Streamlit, a web-based pure-Python data app framework, has been ported to WebAssembly as \"stlite\".\nSee its power and convenience with many live examples and explore its internals from technical perspective.\nYou will learn how to quickly build interactive in-browser apps that work offline, maintain data privacy, and can even be packaged as desktop executables using only Python.", "description": "[Streamlit](https://streamlit.io/) is a popular framework for interactive web-based data apps in Python. However, there are some cases where users want to run their apps offline or without sending sensitive data to remote servers. To address these concerns, we introduce '[stlite](https://github.com/whitphx/stlite)': a WebAssembly port of Streamlit. It provides offline capability, data privacy, scalability, and multi-platform portability including desktop app packaging, while preserving Streamlit's original features, such as Python productivity and its rich ecosystem.\n\nIn this talk, we will discuss the benefits of stlite and demonstrate how to build and deploy stlite applications in a variety of ways, using ML/CV examples.\nWe will also look at its internals from a technical point of view, which may inspire you with ideas on how to make use of Pyodide and how to transform Python frameworks for the Pyodide/Wasm runtime.\n\nYou can try out stlite online: https://edit.share.stlite.net/", "recording_license": "", "do_not_record": false, "persons": [{"code": "FLSGCD", "name": "Yuichiro Tachibana", "avatar": "https://pretalx.com/media/avatars/FLSGCD_G5WL1J9.webp", "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.", "public_name": "Yuichiro Tachibana", "guid": "d2e5ae11-d0ff-5a48-8bcb-68fd9765f259", "url": "https://pretalx.com/pyconapac2023/speaker/FLSGCD/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/YTGKPT/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/YTGKPT/", "attachments": []}, {"guid": "f58218e3-e675-5646-808d-9e0b5c93281a", "code": "TKRGTP", "id": 33188, "logo": null, "date": "2023-10-27T14:20:00+09:00", "start": "14:20", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-33188-ai-for-efficient-routing-of-customer-inquiries-at-mercari", "url": "https://pretalx.com/pyconapac2023/talk/TKRGTP/", "title": "AI for Efficient Routing of Customer Inquiries at Mercari", "subtitle": "", "track": "Machine learning", "type": "Regular Talk", "language": "en", "abstract": "One of the most significant challenges in efficiently handling customer inquiries is routing inquiries to the appropriate customer support agent with the right skills and knowledge to provide prompt and accurate responses.\n\nThis talk will explore how we use AI for skill-based routing of customer inquiries at Mercari and its business impact.", "description": "### Description:\n\nCustomer support operations can be a significant cost center for businesses. The volume of customer inquiries also grows as a business grows, but the customer support team can't scale linearly with the business. Efficient and effective handling of customer inquiries is the key to keeping the customer support operation costs in check without compromising customer satisfaction. One of the most significant challenges in efficiently handling customer inquiries is routing inquiries to the appropriate customer support agent with the right skills and knowledge to provide prompt and accurate responses. If we fail to route the inquiries to suitable agents, it can lead to long wait times and unsatisfactory resolutions for customers.\n\nIn this tech talk, we will explore how AI can be used to predict the skill required to handle customer inquiries. We will discuss the challenges involved in developing an AI-based routing system, including data collection, model training, and deployment. We will also examine the benefits of AI-based routing, such as a lesser number of transfers, a reduction in customer support operation costs, and a reduced workload for support agents.\n\n### Outline:\n\n1. Intro (5 min)\n    1. Who am I? (1 min)\n    2. Why do we need a routing algorithm for customer inquiries? (1 min)\n    3. Why do we need a better algorithm than random allocation? (3 min)\n2. Designing a simple skill-based routing algorithm (5 min)\n    1. Assigning skills based on the inquiry category selected by the customer (2 min)\n    2. Assigning skills using a keyword-matching algorithm (3 min)\n3. Using AI for skill-based routing (15 min)\n    1. Why do we need AI for assigning skills to inquiries (2 min)\n    2. How to get labeled data for training an ML model (1 min)\n    3. Fine-tuning a pre-trained transformer (4 min)\n    4. Adapting trained model for production use (4 min)\n    5. Business impact of AI-based routing (1 min)\n    6. Challenges in using AI with customer inquiries (3 min)\n4. Conclusion (2 min)\n5. Q&A (3 min)\n\n### Audience:\n\nDevelopers, data scientists, ML engineers, and business leaders interested in using AI to enhance customer support operations.\n\n### Outcome:\n\nAttendees will gain a deep understanding of skill-based routing works. They'll learn how AI can be used to predict the skill required for customer inquiries and the business impact of implementing such a system. They will also gain insight into the technical aspects of developing and deploying an AI-based routing system.", "recording_license": "", "do_not_record": false, "persons": [{"code": "PHJAUM", "name": "Prashant Anand", "avatar": "https://pretalx.com/media/avatars/PHJAUM_LSeJLtb.webp", "biography": "Prashant is a Senior ML Engineer at Mercari, primarily working on making customer support operations efficient in a data-driven way. He has led the development of several AI-powered features that have improved the average handling time and transfer rate of the customer support operations at Mercari. Although he is good at working with production ML systems, allegedly, some say he is way better at making pour-over coffee.", "public_name": "Prashant Anand", "guid": "d1b2f2ff-804d-5203-b0be-35633d721503", "url": "https://pretalx.com/pyconapac2023/speaker/PHJAUM/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/TKRGTP/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/TKRGTP/", "attachments": []}, {"guid": "b1c2ab82-de47-5d06-9a2b-ed512276f623", "code": "JDUYHM", "id": 32480, "logo": null, "date": "2023-10-27T15:30:00+09:00", "start": "15:30", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-32480-using-python-for-disease-variant-analysis", "url": "https://pretalx.com/pyconapac2023/talk/JDUYHM/", "title": "Using Python for\u00a0Disease\u00a0Variant Analysis", "subtitle": "", "track": "Others", "type": "Regular Talk", "language": "en", "abstract": "Variant,\u00a0a term\u00a0once only known to the researchers of biological\u00a0sciences,\u00a0is now\u00a0familiar to the\u00a0general\u00a0people.\u00a0Rising of the new variants\u00a0of SARS-Cov2 virus\u00a0with new mutations has become a concern\u00a0during this COVID-19 pandemic.\u00a0How do the researchers\u00a0identify\u00a0these variants from the analysis of genomics data? How could Python be used in this analysis?\u00a0This talk\u00a0will\u00a0address\u00a0these questions.", "description": "Variant,\u00a0a term\u00a0once only known to the researchers of biological\u00a0sciences,\u00a0is now\u00a0quite\u00a0familiar to the\u00a0general\u00a0people.\u00a0Rising of the new variants\u00a0of SARS-Cov2 virus\u00a0with novel mutations have become a topic of concern\u00a0during this COVID-19 pandemic.\u00a0How do the researchers\u00a0identify\u00a0these variants from the analysis of genomics data? How could Python be used in this analysis?\u00a0This talk\u00a0will\u00a0address\u00a0these questions.\u00a0\n\nMutations\u00a0in any organism\u00a0are usually\u00a0identified\u00a0after\u00a0performing a Next Generation Sequence analysis\u00a0experiment\u00a0named variant calling. Variant calling generates the output in a specialized file format called\u00a0Variant Call Format\u00a0(VCF)\u00a0file.\u00a0VCF file carries\u00a0the meta data and\u00a0the\u00a0information of thousands of\u00a0mutations\u00a0and\u00a0is\u00a0generally\u00a0large in size.\u00a0Thus, it is challenging to extract information and\u00a0identify\u00a0mutations\u00a0from this file, especially when there are hundreds of samples.\u00a0The\u00a0Python\u00a0package scikit-allel\u00a0provides\u00a0utilities for exploring\u00a0this\u00a0large-scale\u00a0genetic variation data in VCF file\u00a0and\u00a0helps\u00a0to\u00a0identify\u00a0important mutations from the downstream analysis. This package depends on\u00a0scipy,\u00a0matplotlib,\u00a0seaborn,\u00a0pandas,\u00a0scikit-learn,\u00a0h5py\u00a0and\u00a0zarr.\u00a0After\u00a0identifying\u00a0the mutations, the next step is the visualization of\u00a0the mutations in a meaningful way. This task\u00a0might be simpler for a small size virus like SARS-Cov2, but complicated for eukaryotic organisms with multiple chromosomes like\u00a0mouse or human. Another python package\u00a0QMplot\u00a0is handy and useful for the visualization of thousands of mutations\u00a0in\u00a0each\u00a0chromosome,\u00a0making the interpretation of the extracted mutations easier for the biologists. This package uses\u00a0numpy,\u00a0scipy,\u00a0pandas\u00a0and\u00a0matplotlib.\u00a0\n\nDuring\u00a0this talk I will show the usability of these Python packages for analyzing high throughput genetic variation data\u00a0and discuss the avenues of the development of new Python packages to make this analysis more efficient. Besides informing the Python community about the\u00a0application\u00a0of Python in genomics research, this talk will be informative\u00a0to the developers who want to work\u00a0in\u00a0the intersection of\u00a0computer science and genomics.\u00a0\n\u00a0\nOutline\u00a0\u2028Intro (5 min)\u00a0\u2028\nWho are we?\u00a0\u2028\nIntroducing the concept of mutation and variants\u00a0\u2028\nExplaining\u00a0the genetic variation data\u00a0(VCF file)\u00a0\u2028\nWhy Python\u00a0for Variant analysis? (10 min)\u00a0\u2028\nHigh dimensional data\u00a0\u2028\nIntroducing scikit-allel\u00a0\u2028\nFiltering and identification of Mutation using scikit-allel\u00a0\u2028\nVisualization of mutations\u00a0(10 min)\u00a0\u2028\nExplaining the importance of visualization of mutation\u00a0to get meaningful insight\u00a0\u2028\nIntroducing\u00a0QMplot\u00a0for mutation visualization\u00a0\u2028\nExplaining example plots created on publicly available data\u00a0\u2028\nQ&A (5 mins)", "recording_license": "", "do_not_record": false, "persons": [{"code": "CQXWJB", "name": "Haque Ishfaq", "avatar": "https://pretalx.com/media/avatars/CQXWJB_q6vqFLV.webp", "biography": "Haque Ishfaq is a PhD student at McGill University and Mila - Quebec AI Institute. His research interests span machine learning, statistical learning theory, reinforcement learning and bandits. Before moving to Montreal, he enjoyed several years of sunny weather at Stanford University where he completed his bachelors degree in mathematical and computational science as a McCaw Scholar and masters degree in statistics.", "public_name": "Haque Ishfaq", "guid": "34f37e3a-d636-5b0e-9787-815f08b4e676", "url": "https://pretalx.com/pyconapac2023/speaker/CQXWJB/"}, {"code": "7NSJC8", "name": "Atia Binte Amin", "avatar": "https://pretalx.com/media/avatars/7NSJC8_Elu3qiK.webp", "biography": "Atia Amin is a PhD student at McGill University in the department of Human Genetics where she is working on bioinformatics. She finished her masters program at the University of South Dakota where she performed research on engineering abiotic stress resistant crop plants. Having born and brought up in Bangladesh, Atia is also passionate about popularizing STEM among girls in Bangladesh and other developing countries.", "public_name": "Atia Binte Amin", "guid": "9a861acd-fcdc-5116-aa75-86965da711bf", "url": "https://pretalx.com/pyconapac2023/speaker/7NSJC8/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/JDUYHM/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/JDUYHM/", "attachments": []}, {"guid": "aaebe68d-3410-56cf-9548-53c80a60fac2", "code": "ZYJNLN", "id": 33167, "logo": null, "date": "2023-10-27T16:10:00+09:00", "start": "16:10", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-33167-enhancing-observability-in-fastapi-or-python-application-with-opentelemetry", "url": "https://pretalx.com/pyconapac2023/talk/ZYJNLN/", "title": "Enhancing  Observability in FastAPI or Python Application with OpenTelemetry", "subtitle": "", "track": "Niche technique", "type": "Regular Talk", "language": "en", "abstract": "FastAPI is quickly becoming a popular choice for creating backend applications in the Python community. However, communicating with different services in these applications can pose a challenge, especially when it comes to debugging and analyzing log and metric data across various systems.\n\nFortunately, by leveraging the Python SDK of OpenTelemetry and existing opensource packages, we can easily", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "V8FZQV", "name": "YU MING HSU", "avatar": "https://pretalx.com/media/avatars/V8FZQV_eNfhcmc.webp", "biography": "I'm a Cloud Application Engineer. I love to travel\u3001snowboarding and explore new thing.\nI love Japan!! I have been to Japan more than 10 times!", "public_name": "YU MING HSU", "guid": "3b8db2a9-05f2-5f0e-bc6f-621569e9d11b", "url": "https://pretalx.com/pyconapac2023/speaker/V8FZQV/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/ZYJNLN/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/ZYJNLN/", "attachments": []}, {"guid": "9f6d0298-a79c-5d05-bc06-1285d9b4e18a", "code": "VLH3UF", "id": 37660, "logo": null, "date": "2023-10-27T16:50:00+09:00", "start": "16:50", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-37660-sponsor-lt-google-cloud-japan-make-your-own-coding-companion-with-codey", "url": "https://pretalx.com/pyconapac2023/talk/VLH3UF/", "title": "Sponsor LT (Google Cloud Japan) Make your own coding companion with Codey", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "Speaker: Thu Ya Kyaw", "description": "", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VLH3UF/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VLH3UF/", "attachments": []}, {"guid": "3d1dd3ec-830b-568d-9b7f-15b1c4f45483", "code": "KLDH3D", "id": 32354, "logo": null, "date": "2023-10-27T16:55:00+09:00", "start": "16:55", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-32354-test-with-confidence-a-deep-dive-into-eliminating-flaky-tests-in-python", "url": "https://pretalx.com/pyconapac2023/talk/KLDH3D/", "title": "Test with Confidence: A Deep Dive into Eliminating Flaky Tests in Python", "subtitle": "", "track": "Test for development", "type": "Lightning Talk", "language": "en", "abstract": "Flaky tests are a common problem in software development that can cause frustration, delays, and even damage to a codebase. These tests may pass or fail inconsistently, making it difficult to trust the results and slowing down development workflows. In this talk, we'll explore the root causes of flaky tests in Python applications and provide practical strategies for finding, resolving, and prevent", "description": "### Overview  \n- What is a flaky test? Learn how the following can cause flaky tests:\n    - Asynchronous code,\n    - Race conditions, and\n    - Environmental factors\n- Are deterministic tests worth investing time into?\n\n### Identifying Flaky Tests  \n- The ideal goal is to be able to identify flaky tests using an automated solution. \n- If you have a test suite with some flaky tests that randomly fail, you will likely try to develop a solution that automatically retries the tests that fail. In our solution, we wanted to also track the failures that were likely flaky tests and not identifying actual errors.\n- While flaky tests don\u2019t identify an actual \u201cerror\u201d in the code, they are an error themselves to the codebase. Without reliable tests, we cannot confidently continue to grow. Sentry is  a good choice for keeping tabs on all kinds of errors, so we can store these flaky test \"errors\" here.\n- Now every test failure that is \u201cfixed\u201d by retrying the test is reported to Sentry as a flaky test \u201cerror\u201d, but still does not break CI since it isn\u2019t an error in the actual application. Tests that consistently fail will not be reported to Sentry as a flaky test \u201cerror\u201d, but instead will actually break CI because there is an actual error in the application.\n- With the right tests being tracked in Sentry as flaky test \u201cerrors\u201d, we can query in Sentry and easily identify all of the flaky tests.\n- I will show an example of how to do this with Pytest  \n\n### Best Practices\nThrough doing this while building Sentry, we have identified three best practices to eliminate flaky tests:\n- If the flaky test is a low-value test, consider skipping or deleting the test. \n- It is best to keep tests isolated. You can do this by using the `beforeEach` lifecycle hook to reset and prevent side effects.\n    - use the `beforeEach` lifecycle hook to reset and prevent side effects\n- Keep tests small. Larger tests are more likely to be flaky due to their increased complexity and coverage area. Consider increasing the number of test while reducing the coverage size of each test. \n\n### How can you be sure flaky tests are gone?\nThe other benefit to using Sentry to monitor flaky tests in addition to your errors and performance issues is that your Sentry dashboard will continue to monitor any tests that remain or become flaky. As you implement improvements to your tests, you will be notified via Sentry if any flaky tests remain after each deployment. \n\nBy keeping all codebase monitoring, including tests, to one application, you can reduce the amount of developer time wasted tracking down various ways to improve the health of your applications. But an alternative to this could be write your own pytest plugin that uploads the testrun information to an internal service that can store and query the data. \n\nBut this is not recommended when you can just use existing software off the shelf to solve your problems. Especially when Sentry is free and easy to self-host.", "recording_license": "", "do_not_record": false, "persons": [{"code": "3TBWLZ", "name": "Nisanthan Nanthakumar", "avatar": "https://pretalx.com/media/avatars/3TBWLZ_oLtDlhZ.webp", "biography": "I like to write code and travel. Ask me about the time I caught piranhas in the Amazon jungle.", "public_name": "Nisanthan Nanthakumar", "guid": "8d39e31a-fb4b-5eed-b039-81d266b54da1", "url": "https://pretalx.com/pyconapac2023/speaker/3TBWLZ/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/KLDH3D/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/KLDH3D/", "attachments": []}, {"guid": "fa78fe45-c3a5-5cbf-9a97-0496e90b7f6f", "code": "7A87WA", "id": 33139, "logo": null, "date": "2023-10-27T17:00:00+09:00", "start": "17:00", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-33139-agrobot-python-based-detection-device-for-agriculture", "url": "https://pretalx.com/pyconapac2023/talk/7A87WA/", "title": "Agrobot - Python based detection device for Agriculture", "subtitle": "", "track": "Approaching to social problem", "type": "Lightning Talk", "language": "en", "abstract": "We all Asian come from countries where farming is the major source of living for most of the population. We have seen farmers toil endlessly under the hot sun to support their family. So, making their life easier was the main motivation behind this idea. It makes the farming process more efficient, smart and automated. Agrobot is a small bot that can navigate through the field and fetch data like", "description": "What is it\n\nAgrobot is a small bot that can navigate through the field and fetch data like soil structure, atmospheric conditions and crop data which are important parameters in estimating the health and life of the crop. This data is analyzed intelligent decisions are made to increase the productiveness of farming. It has a software-hardware interface which allows continuous modifications and upgrades in strategies. It collects data from APIs to get weather forecasts and physical parameters like rainfall, humidity, etc. This combined with a model that identifies the most suitable crops to grow based on the conditions. It makes the farming process more efficient, smart and automated.\n\nHow Its Built\n\nWe use simple hardware like Raspberry Pi and Arduinos along with sensors and a Pi Camera. We fetch data from Here API to forecast the weather and make decisions. Computer Vision is used to analyse the soil structure and texture which allows us to decide the best crop for the field. The bot is remotely operated using ROS with an easy to use interface. In addition to this, Clarifiai was also used to train a custom model that can identify the crops in the field and get the requirements for the proper growth of the crop.", "recording_license": "", "do_not_record": false, "persons": [{"code": "ACWNWL", "name": "Niharika Vadluri", "avatar": "https://pretalx.com/media/avatars/ACWNWL_FnWzN1g.webp", "biography": "Niharika Vadluri is working as a Packed Application Developer Analyst at Accenture India. She is an active open source contributor since 2018. She graduated in 2021 with majors in Electrical and Electronics. She has been an active member and contributor in PSF, Hackster.io, Linux and Fossasia Open source Organization. She has given talks and Volunteered at Fossasia Summit 2019, Pycon APAC Thailand 2021, Pycon Australia 2021 and Poster Presentation at Pycon USA 2022, Speaker at Pycon Philippines 2023, PyCascades North America 2023 and Speaker at Open Source Firmware Conference 2022 Sweden.", "public_name": "Niharika Vadluri", "guid": "91aede1b-a6de-54a0-ae04-f8315589498e", "url": "https://pretalx.com/pyconapac2023/speaker/ACWNWL/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/7A87WA/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/7A87WA/", "attachments": []}, {"guid": "1442e955-d3c6-5992-9459-35c17de0e6e6", "code": "B3FHCU", "id": 32821, "logo": null, "date": "2023-10-27T17:05:00+09:00", "start": "17:05", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-32821-with-python", "url": "https://pretalx.com/pyconapac2023/talk/B3FHCU/", "title": "\u5f69\u8272\u3092\u30ea\u30fc\u30c9\u3059\u308b\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u5b9f\u8df5\u30d5\u30ed\u30fc with Python", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "\u300c\u7d75\u5e2b\u306f\u3001\"\u982d\u306b\u63cf\u3044\u305f\u30a4\u30e1\u30fc\u30b8\"\u3092\u305d\u306e\u307e\u307e\"\u7d75\"\u306b\u3057\u3066\u3044\u308b\u300d\u3068\u8aa4\u89e3\u3057\u3066\u3044\u308b\u4eba\u306f\u610f\u5916\u3068\u591a\u3044\u3067\u3059\u3002\n\u3057\u304b\u3057\u5b9f\u969b\u306e\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u306f\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3068\u540c\u69d8\u306b\u3001\u6700\u7d42\u7684\u306a\u6210\u679c\u7269\u304c\u3069\u3046\u306a\u308b\u304b\u3001\u5b8c\u6210\u3059\u308b\u307e\u3067\u4f5c\u8005\u672c\u4eba\u306b\u3082\u308f\u304b\u308a\u307e\u305b\u3093\u3002\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3001\u305d\u3093\u306a\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u30d5\u30ed\u30fc\u306e\u4e00\u4f8b\u3092\u5f15\u304d\u5408\u3044\u306b\u3001\u7d75\u5e2b\u304c\u3069\u306e\u3088\u3046\u306b\"\u982d\u306b\u63cf\u3044\u305f\u30a4\u30e1\u30fc\u30b8\"\u3092\u5177\u73fe\u5316\u3057\u3066\u3044\u304f\u304b\u3092Python\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u4ea4\u3048\u306a\u304c\u3089\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n\u6628\u5e74\u3068\u4e00\u6628\u5e74\u306ePyCon JP\u306e\u767a\u8868\u3067\u306f\u3001\u30a4\u30e9\u30b9\u30c8\u3092\u69cb\u6210\u8981\u7d20\u306b\u5206\u89e3\u3057\u3001\u305d\u308c\u3089\u306e\u5f79\u5272\u3092\u89e3\u8aac\u3057\u307e\u3057\u305f\u3002\n\u4eca\u56de\u306f\u305d\u306e\u9006\u3067\u3001\u69cb\u6210\u8981\u7d20\u3092\u3069\u306e\u3088\u3046\u306b\u7d44\u307f\u4e0a\u3052\u308b\u304b\u3068\u3044\u3046\u30a2\u30d7\u30ed\u30fc\u30c1\u306e\u767a\u8868\u3067\u3059\u3002\n\u7279\u306b\u300e\u8272\u300f\u306b\u7126\u70b9\u3092\u5f53\u3066\u3001Python\u3067\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u3092\u30a2\u30b7\u30b9\u30c8\u3059\u308b\u5b9f\u4f8b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002", "description": "\u7d75\u5e2b\u305f\u3061\u306e\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u30d5\u30ed\u30fc\u306f\u3001\u6982\u306d\u5171\u901a\u3057\u3066\u3044\u307e\u3059\u3002\n\u3057\u304b\u3057\u3001\u5236\u4f5c\u4e2d\u306b\u8003\u3048\u3066\u3044\u308b\u3053\u3068\u306f\u69d8\u3005\u3067\u3059\u3002\u305f\u3068\u3048\u540c\u3058\u7d75\u5e2b\u304c\u540c\u3058\u5236\u4f5c\u5de5\u7a0b\u306b\u3042\u3063\u3066\u3082\u3001\u5236\u4f5c\u3059\u308b\u30a4\u30e9\u30b9\u30c8\u304c\u9055\u3048\u3070\u8868\u73fe\u306b\u5fc5\u8981\u306a\u77e5\u8b58\u3082\u30a2\u30d7\u30ed\u30fc\u30c1\u3082\u5909\u308f\u308a\u307e\u3059\u3002\n\u7d50\u679c\u3068\u3057\u3066\u5236\u4f5c\u30d5\u30ed\u30fc\u306f\u30aa\u30fc\u30c0\u30fc\u30e1\u30a4\u30c9\u306b\u306a\u308b\u3053\u3068\u304c\u591a\u304f\u3001\u7279\u306b\u521d\u5fc3\u8005\u306f\u30a4\u30e9\u30b9\u30c8\u3092\u5b8c\u6210\u3055\u305b\u308b\u307e\u3067\u306b\u591a\u304f\u306e\u632b\u6298\u3092\u7d4c\u9a13\u3057\u307e\u3059\u3002\u30d7\u30ed\u3067\u3082\u65e5\u3005\u82e6\u60a9\u3057\u3066\u3044\u307e\u3059\u3002\n\u305d\u3093\u306a\u7d75\u5e2b\u5171\u901a\u306e\u82e6\u3057\u307f\u3092\u30b1\u30a2\u3059\u308b\u3053\u3068\u304c\u3001\u79c1\u304cPyCon\u3067\u30d7\u30ec\u30bc\u30f3\u3092\u3059\u308b\u6839\u6e90\u7684\u306a\u76ee\u7684\u3067\u3059\u3002\n\u4eca\u56de\u306e\u79c1\u306e\u767a\u8868\u3067\u306f\u3001\u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u306e\u5b9f\u4f8b\u306b\u89e6\u308c\u306a\u304c\u3089\u3001\u300e\u8272\u300f\u3092\u30c6\u30fc\u30de\u306b\u3057\u305fPython\u30b9\u30af\u30ea\u30d7\u30c8\u3067\u7d75\u5e2b\u3092\u30a2\u30b7\u30b9\u30c8\u3059\u308b\u4e8b\u4f8b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u3061\u3087\u3063\u3068\u3057\u305f\u77e5\u8b58\u3055\u3048\u3042\u308c\u3070\u3001Python\u3067\u7d75\u5e2b\u306e\u60a9\u307f\u3092\u89e3\u6d88\u3067\u304d\u308b\u3053\u3068\u3092\u5468\u77e5\u3067\u304d\u308c\u3070\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u3002\n\n\u30d7\u30ed\u30dd\u30fc\u30b6\u30eb\u6bb5\u968e\u3067\u60f3\u5b9a\u3057\u3066\u3044\u308b\u69cb\u6210\u3068\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u306f\u3001\u6b21\u306e\u901a\u308a\u3067\u3059\u3002\n\n- \u5c0e\u5165\uff081min\uff09\n\t- \u81ea\u5df1\u7d39\u4ecb\uff0830sec\uff09\n\t- \u30d7\u30ec\u30bc\u30f3\u306e\u76ee\u7684\uff0830sec\uff09\n- \u672c\u984c\uff1a\u5f69\u8272\u3092Python\u3067\u30a2\u30b7\u30b9\u30c8\u3059\u308b\u5b9f\u4f8b\uff084min\uff09\n\t- \u5b9f\u4f8b\u7d39\u4ecb\uff0830sec\uff09\n\t- \u30a4\u30e9\u30b9\u30c8\u5236\u4f5c\u30d5\u30ed\u30fc\u5168\u4f53\u50cf\uff0830sec\uff09\n\t- Python\u3067\u914d\u8272\u306e\u65b9\u91dd\u3092\u63a2\u308b\uff081min\uff09\n\t- Python\u3067\u57fa\u672c\u306e\u8272\u3092\u6c7a\u3081\u308b\uff081min\uff09\n\t- Python\u3067\u5857\u3063\u305f\u8272\u3092\u5206\u6790\u3059\u308b\uff081min\uff09\n\n\u5b9f\u4f8b\u3068\u3057\u3066\u6319\u3052\u308bPython\u30b9\u30af\u30ea\u30d7\u30c8\u306f\u300c\u30ad\u30e3\u30e9\u30c7\u30b6\u306b\u5408\u308f\u305b\u305f\u914d\u8272\u63a8\u85a6\u300d\u300c\u8272\u5f69\u8abf\u548c\u306b\u5247\u3063\u305f\u5f71\u3068\u5149\u306e\u5408\u6210\u300d\u300c\u8272\u6210\u5206\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u300d\u306e\uff13\u3064\u3092\u4e88\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\n\u30ab\u30f3\u30d5\u30a1\u30ec\u30f3\u30b9\u5f53\u65e5\u307e\u3067\u306b\u3088\u308a\u512a\u308c\u305f\u30b9\u30af\u30ea\u30d7\u30c8\u3068\u5b9f\u4f8b\u304c\u7528\u610f\u3067\u304d\u305f\u3089\u3001\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u8ffd\u52a0\u307e\u305f\u306f\u5dee\u3057\u66ff\u3048\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u3001\u3054\u627f\u77e5\u304a\u304d\u304f\u3060\u3055\u3044\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "QKCME9", "name": "\u3072\u308d\u3055\u3058 / Hirosaji", "avatar": "https://pretalx.com/media/avatars/QKCME9_x6mmyDr.webp", "biography": "Illustrator / Web Engineer", "public_name": "\u3072\u308d\u3055\u3058 / Hirosaji", "guid": "dd135bdc-a34a-50aa-98b1-8136ef251e35", "url": "https://pretalx.com/pyconapac2023/speaker/QKCME9/"}], "links": [{"title": "\u767a\u8868\u30b9\u30e9\u30a4\u30c9\u8cc7\u6599", "url": "https://speakerdeck.com/hirosaji/practical-production-flow-of-illustration-led-by-coloring-with-python", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/B3FHCU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/B3FHCU/", "attachments": []}, {"guid": "aa1232ca-3741-56a1-bbb4-38c291d94d1b", "code": "8KKDSN", "id": 32955, "logo": null, "date": "2023-10-27T17:10:00+09:00", "start": "17:10", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-32955-how-many-iphones-does-it-take-to-ship-a-new-python-version", "url": "https://pretalx.com/pyconapac2023/talk/8KKDSN/", "title": "How many iPhones does it take to ship a new Python version?", "subtitle": "", "track": "Python core", "type": "Lightning Talk", "language": "en", "abstract": "For people new to Python, it can be hard to grasp the difference between, say, Python 3.5 and Python 3.6. This lightning talk aims to conceptualise the effort it requires to ship a new Python version, by comparing that to the development of iPhone models.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "LJCYKL", "name": "Chan Sau Yee", "avatar": "https://pretalx.com/media/avatars/LJCYKL_3zd11kY.webp", "biography": "Sau Yee is a software engineer based in Tokyo, Japan. She has a passion for maps. She ran her first full marathon in Nov 2022, and plan to do it again in 2023. She is also intrigued by humans who do illogical things.", "public_name": "Chan Sau Yee", "guid": "ec0dd8c1-d1bf-5aa6-9911-77dab7c26547", "url": "https://pretalx.com/pyconapac2023/speaker/LJCYKL/"}], "links": [{"title": "Slides", "url": "https://speakerdeck.com/y26805/how-many-iphones-does-it-take-to-ship-a-new-python-version", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8KKDSN/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8KKDSN/", "attachments": []}, {"guid": "ccdbee16-164e-5191-9dc1-b9c794b5bcce", "code": "SPECBM", "id": 33062, "logo": null, "date": "2023-10-27T17:15:00+09:00", "start": "17:15", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-33062-how-to-study-by-making-flash-cards-with-python", "url": "https://pretalx.com/pyconapac2023/talk/SPECBM/", "title": "How to study by making flash cards with Python", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "Part of learning is to train your brain to recognize what you're studying. One of the ways to do this is to use flash cards. In this lightning talk, I will show how I use Python to make flash cards, as well as tips on how to study efficiently.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "FKMQYE", "name": "MrValdez", "avatar": "https://pretalx.com/media/avatars/FKMQYE_xu46GaV.webp", "biography": "", "public_name": "MrValdez", "guid": "87e30997-ee46-5acc-84d9-67bdca18f1c6", "url": "https://pretalx.com/pyconapac2023/speaker/FKMQYE/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/SPECBM/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/SPECBM/", "attachments": []}, {"guid": "ed3820db-f23c-5af7-a9c6-a1f28cc11473", "code": "QUNWWH", "id": 33185, "logo": null, "date": "2023-10-27T17:20:00+09:00", "start": "17:20", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-33185-london-to-tokyo-in-two-hours-a-visual-demonstration-of-how-python-helps-scientific-discovery-in-enabling-future-passenger-rockets", "url": "https://pretalx.com/pyconapac2023/talk/QUNWWH/", "title": "London to Tokyo in Two Hours: A Visual Demonstration of How Python Helps Scientific Discovery in Enabling Future Passenger Rockets", "subtitle": "", "track": "Visualization / Games / Music", "type": "Lightning Talk", "language": "en", "abstract": "In this lightning talk, I will show videos of analysed experimental data obtained in a wind tunnel at a flow speed of Mach 7, i.e. seven times the speed of sound, using Python. I will discuss how Python helps us discover the science behind creating reusable rockets that could one day allow us to fly from London to Tokyo in two hours.", "description": "Traditionally, large datasets from wind tunnel experiments have been processed and visualised using MATLAB. However, there is a need of an open-source alternative to make such tools accessible to a wider community, particularly to young scientists and engineers. In this lightning talk, large experimental datasets obtained in a wind tunnel at a flow speed of Mach 7, i.e. seven times the speed of sound, are analysed and visualised using Python. The central topic of this talk will be transpiration cooling \u2014 a method where the rocket \u2018sweats' an gas to keep itself cool. The steps of data processing, analysis, and visualisation are discussed. The wind tunnel experiments involve the use of Pressure-sensitive paint (PSP) in conjunction with a high-speed camera, a technique that allows for the determination of oxygen partial pressure on a surface in the flow. An area of interrogation of 140 mm x 37 mm is coated with PSP and tested with upstream injection of air, nitrogen, and helium. A relative concentration, ranging from 0% to 100%, is constructed in a pixel-by-pixel fashion from the high-speed videos. The video data are treated with a stabilisation algorithm to remove the jitter that stems from the tunnel\u2019s movement during the experiments. The data are then sent through several signal processing loops to reduce the noise. The frames are time-averaged over approximately 30 ms and the final quantity of relative concentration of the gas, e.g nitrogen or helium, is obtained and visualised in static plots and videos. The aim of this lightning talk is to demonstrate that Python and its libraries are capable of producing scientific quality visualisation of aerodynamics or wind tunnel data and persuade researchers, teachers, and students in this field to utilise this open-source resource. In 5 minutes, I will showcase how Python is being used to discover the science needed to build reusable rockets.", "recording_license": "", "do_not_record": false, "persons": [{"code": "D8BAHA", "name": "Hassan Saad Ifti", "avatar": "https://pretalx.com/media/avatars/D8BAHA_8UFOZdK.webp", "biography": "Dr Ifti joined the High-Speed Aerodynamics and Propulsion Lab at the University of Maryland, USA, in April 2022. Originally from Mymensingh, Bangladesh, he earned his DPhil in Engineering Science (Hypersonics) from the University of Oxford, United Kingdom. For the scientific contributions in his doctoral thesis entitle, \u201cTranspiration Cooling of a Hypersonic Vehicle,\u201d he won the 2022 UK Doctoral Researcher Award (2nd Prize, Engineering), in a UK-wide academic competition that is awarded annually to junior researchers with promise to be amongst the world class academics of the future. Dr Ifti holds bachelor\u2019s and master\u2019s degrees in Aerospace Engineering from the University of Stuttgart, Germany.", "public_name": "Hassan Saad Ifti", "guid": "94e4fddd-d44d-54b3-be40-68c4a8771376", "url": "https://pretalx.com/pyconapac2023/speaker/D8BAHA/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/QUNWWH/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/QUNWWH/", "attachments": []}, {"guid": "e170d5c5-bfc8-5f99-9f20-309b16279269", "code": "V9PHXN", "id": 33119, "logo": null, "date": "2023-10-27T17:25:00+09:00", "start": "17:25", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-33119-rye", "url": "https://pretalx.com/pyconapac2023/talk/V9PHXN/", "title": "\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30ebrye\u3078\u306e\u65c5\u8def", "subtitle": "", "track": "Web programming", "type": "Lightning Talk", "language": "en", "abstract": "\u307f\u306a\u3055\u3093Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30eb\u306b\u306f\u4f55\u3092\u4f7f\u3063\u3066\u3044\u307e\u3059\u304b\uff1f\npip?  pipenv? Poetry ? \n\u8272\u3005\u9078\u629e\u80a2\u304c\u53d6\u308c\u308b\u5206\u307e\u305a\u5c0e\u5165\u6642\u8ff7\u3063\u305f\u7d4c\u9a13\u306e\u65b9\u306f\u591a\u3044\u306e\u3067\u306f\u306a\u3044\u3067\u3057\u3087\u3046\u304b\uff1f\n\u305d\u3053\u3067\u3001\u4eca\u56de\u306f\u65b0\u3057\u304f\u767b\u5834\u3057\u305fRust\u88fd\u306e\u300c[rye](https://github.com/mitsuhiko/rye)\u300d\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u305d\u3053\u306b\u306fPython\u4f9d\u5b58\u304c\u306a\u3044\u306e\u3092\u59cb\u3081\u3001Rust\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306b\u30a4\u30f3\u30b9\u30d1\u30a4\u30a2\u3055\u308c\u305f\u69d8\u3005\u306a\u54f2\u5b66\u304c\u3042\u308a\u307e\u3059\u3002\n\u307e\u305f\u3001\u4ed6\u30d1\u30c3\u30b1\u30fc\u30b8\u30c4\u30fc\u30eb\u3067\u904b\u7528\u3057\u3066\u3044\u305f\u65e2\u5b58\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092rye\u306b\u79fb\u884c\u3057\u305f\u969b\u306e\u77e5\u898b\u3082\u3054\u7d39\u4ecb\u3057\u307e\u3059\u3002", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "XZNNDX", "name": "glassmonkey (Shunsuke Nagano)", "avatar": "https://pretalx.com/media/avatars/XZNNDX_spvfQew.webp", "biography": "BASE \u682a\u5f0f\u4f1a\u793e BASE BANK\u30c1\u30fc\u30e0\u3067Engineering Program Manager\u3068\u3044\u3046\u80a9\u66f8\u3067\u300cYELL BANK\u300d\u3068\u3044\u3046\u30d7\u30ed\u30c0\u30af\u30c8\u306e\u958b\u767a\u8cac\u4efb\u8005\u306e\u3088\u3046\u306a\u3053\u3068\u3092\u3057\u3066\u3044\u307e\u3059\u3002\u696d\u52d9\u3067\u306fPython\u304c\u591a\u3081\u3067\u3059\u304cGo, PHP, Vue\u306a\u3069\u3082\u89e6\u3063\u3066\u3044\u307e\u3059\u3002", "public_name": "glassmonkey (Shunsuke Nagano)", "guid": "d4a8900f-da0c-5642-8e9a-d71112f2fc0b", "url": "https://pretalx.com/pyconapac2023/speaker/XZNNDX/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/V9PHXN/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/V9PHXN/", "attachments": []}, {"guid": "ca0c8da3-fcbe-56c5-ad0e-bcbf91237686", "code": "MFJUGJ", "id": 32778, "logo": null, "date": "2023-10-27T17:30:00+09:00", "start": "17:30", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-32778-auto-evaluation-of-ranking-model-by-llm", "url": "https://pretalx.com/pyconapac2023/talk/MFJUGJ/", "title": "Auto-evaluation of ranking model by LLM", "subtitle": "", "track": "Machine learning", "type": "Lightning Talk", "language": "en", "abstract": "Discover an innovative Python framework for automating offline search engine ranking evaluation using LLM. By enabling search engineers and data scientists to perform offline evaluations rapidly, our method minimizes human bias, accelerates evaluation, and optimizes ranking algorithms swiftly, leading to improved search performance and more relevant user results.", "description": "Explore our groundbreaking framework that utilizes Large Language Models to automate the offline evaluation of search engine ranking results efficiently. By significantly reducing reliance on costly human labelers and minimizing the risk of human-induced bias, this technology allows search engineers and data scientists to swiftly conduct offline evaluations, resulting in a more seamless and efficient process. Our innovative solution empowers you to optimize search engine algorithms and deliver accurate, contextually relevant results to users, ultimately enhancing the overall search experience. Harness the power of large language models to transform your search engine\u2019s performance, streamline the evaluation process, and reshape the way users interact with search technology.", "recording_license": "", "do_not_record": false, "persons": [{"code": "B7NKV7", "name": "Petrie Wong", "avatar": "https://pretalx.com/media/avatars/B7NKV7_RJ1TP9F.webp", "biography": "Dr. Petrie Wong is a Staff Machine Learning Engineer at LegalOn Technologies, a leading LegalTech company specializing in contract management systems and AI-driven contract risk detection.", "public_name": "Petrie Wong", "guid": "8f9ce336-0d82-5270-bf83-565c18400ce2", "url": "https://pretalx.com/pyconapac2023/speaker/B7NKV7/"}], "links": [{"title": "slides", "url": "https://speakerdeck.com/legalontechnologies/a95bc0632affa5f81a2ac8bdde7aac32", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/MFJUGJ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/MFJUGJ/", "attachments": []}, {"guid": "d7e18cbf-a245-586d-896d-9f154edf2e1f", "code": "MM7MYE", "id": 33073, "logo": null, "date": "2023-10-27T17:35:00+09:00", "start": "17:35", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-33073-time-to-save-ci-time", "url": "https://pretalx.com/pyconapac2023/talk/MM7MYE/", "title": "time to save CI time", "subtitle": "", "track": "Test for development", "type": "Lightning Talk", "language": "en", "abstract": "Django CI Speed Boost: Achieving 90% Time Reduction. In this presentation, we will share tips for reducing test time in CI. Discover how to leverage test options and parallel containers to achieve significant time savings.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "7JGWQZ", "name": "Soojin", "avatar": "https://pretalx.com/media/avatars/7JGWQZ_1GKSWwP.webp", "biography": "", "public_name": "Soojin", "guid": "ab8f706a-155d-5232-92dc-08310239b5c0", "url": "https://pretalx.com/pyconapac2023/speaker/7JGWQZ/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/MM7MYE/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/MM7MYE/", "attachments": []}], "track 2": [{"guid": "2e7f3b9f-387f-5a7d-9212-09cedc427e3d", "code": "WNN9WG", "id": 32003, "logo": null, "date": "2023-10-27T11:40:00+09:00", "start": "11:40", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32003-write-python-for-speed", "url": "https://pretalx.com/pyconapac2023/talk/WNN9WG/", "title": "Write Python for Speed", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Being a slow interpreter, Python may drive a system to deliver utmost speed if some guidelines are followed. The key is to treat programming languages as syntactic sugar to the machine code. It expedites the workflow of timing, iterative design, automatic testing, optimization, and realize an HPC system balancing the time to market and quality of code. I will share how to make it happen.", "description": "Speed is the king. 10x productive developers change business. So does 10x faster code. Python is 100x slower than C++ but it only matters when you really use Python to implement number-crunching algorithms. We should not do that, and instead go directly with C++ for speed. It calls for strict disciplines of software engineering and code quality, but it should be noted that here the quality is defined by the runtime and the time to market.\n\nThe talk will focus on the Python side of the development workflow. It is made possible by confining C++ in architecture defined by the Python code, which realizes most of the software engineering. The room for writing fast C++ code is provided by pybind11 and careful design of typed data objects. The data objects hold memory buffers exposed to Python as numpy ndarrays for direct access for speed.\n\nIn a nutshell, the workflow is:\n\n1. Understand your problem.\n2. Prototype with quick and dirty Python code.\n3. Define data objects. The data objects will be the API between high-level Python and the low-level C++ implementation.\n4. Complete unit testing as much as possible.\n5. Design data structures. Reorganize or rewrite the Python code in C++.\n\nFor each new request the workflow repeats itself.\n\nIn addition to the workflow, the talk will also include the way to use pybind11 and ndarray interface. C++ will be mentioned but outside the scope of discussions.\n\nThe objective of the talk is to show how to get started with writing fast code in Python and keep improving it to become a product. Computational scientists and engineers are particularly suitable to the subject. The talk will clearly describe a course to develop the practical coding skills. The speaker has practiced the workflow for academic research, commercial software development, and graduate-level teaching and trained more than 100 students.", "recording_license": "", "do_not_record": false, "persons": [{"code": "WBVAPS", "name": "Yung-Yu Chen", "avatar": "https://pretalx.com/media/avatars/WBVAPS_Wb0EupS.webp", "biography": "Yung-Yu is a numerical analyst and HPC software architect. He has experience in different application domains, including computational fluid dynamics (CFD) and optical proximity correction (OPC). Yung-Yu is teaching software development for engineering at NYCU and an R&D engineer at Synopsys. He has contributed to the Python community for many years and is a PSF fellow.", "public_name": "Yung-Yu Chen", "guid": "9935666d-776b-5dea-baf9-028f571661a8", "url": "https://pretalx.com/pyconapac2023/speaker/WBVAPS/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/WNN9WG/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/WNN9WG/", "attachments": []}, {"guid": "a442ecd5-3d4f-5551-acb0-d6ef639c2c7b", "code": "ZAVEWE", "id": 32980, "logo": null, "date": "2023-10-27T13:40:00+09:00", "start": "13:40", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32980-breaking-down-barriers-a-unified-approach-to-web-development-with-django-htmx", "url": "https://pretalx.com/pyconapac2023/talk/ZAVEWE/", "title": "Breaking Down Barriers: A Unified Approach to Web Development with django-htmx", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "Modern web development often involves complex processes and context-switching, impacting efficiency. This talk proposes a solution: using Django-HTMX to unify front-end and back-end development into one context. This approach simplifies the build process and minimizes context-switching. With Django-HTMX for HTMX, TailwindCSS for CSS, and Alpine.js for JavaScript, we aim to simplify and streamline", "description": "Modern web development often necessitates complex processes and context-switching, placing undue burdens on developers and impeding efficiency. This presentation proposes a solution: unifying front-end and back-end development into a single context with Django-HTMX. This approach eliminates the need for separate build processes and mitigates the slowdown associated with context-switching between different development languages. In this streamlined workflow, HTMX is employed through Django-HTMX, CSS is handled with TailwindCSS, and JavaScript is managed with Alpine.js. By introducing this efficient and simplified method, we aim to revolutionize the way web development is approached, creating a more streamlined and efficient future for developers.", "recording_license": "", "do_not_record": false, "persons": [{"code": "KSER3X", "name": "Bae KwonHan", "avatar": "https://pretalx.com/media/avatars/KSER3X_hQb6Whi.webp", "biography": "- founder of PyCon Korea.\n- Organizing Python Community in Korea\n- 20+ Years of python experience in development\n- Sr DevOps/SRE Role on LINE", "public_name": "Bae KwonHan", "guid": "9a0c0548-518e-57cb-a723-e6d2b1a19ca8", "url": "https://pretalx.com/pyconapac2023/speaker/KSER3X/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/ZAVEWE/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/ZAVEWE/", "attachments": []}, {"guid": "9babbac6-2328-5aaa-9ede-3b8f7717d8f1", "code": "BLGBSE", "id": 33127, "logo": null, "date": "2023-10-27T14:20:00+09:00", "start": "14:20", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-33127-python", "url": "https://pretalx.com/pyconapac2023/talk/BLGBSE/", "title": "Python\u3067\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\uff1a\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u7406\u89e3\u3068\u73fe\u5834\u3067\u306e\u6d3b\u7528", "subtitle": "", "track": "Python core", "type": "Regular Talk", "language": "en", "abstract": "Python\u306f\u305d\u306e\u4f7f\u3044\u3084\u3059\u3055\u3068\u8c4a\u5bcc\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u3088\u308a\u3001\u30a6\u30a7\u30d6\u958b\u767a\u304b\u3089\u6a5f\u68b0\u5b66\u7fd2\u307e\u3067\u591a\u5c90\u306b\u308f\u305f\u308b\u5206\u91ce\u3067\u6d3b\u7528\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u3053\u308c\u3089\u3092\u53ef\u80fd\u306b\u3057\u3066\u3044\u308b\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u3067\u3059\u304c\u3001Python\u306e\u6b74\u53f2\u304c\u9577\u304f\u8907\u96d1\u306a\u305f\u3081\u3001\u521d\u5fc3\u8005\u306b\u53d6\u3063\u3066\u8e93\u304d\u3084\u3059\u3044\u3068\u611f\u3058\u307e\u3059\u3002\n\n\u672c\u767a\u8868\u3067\u306f\u3001Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u5168\u4f53\u50cf\u3092\u8aac\u660e\u3057\u3001\u305d\u306e\u80cc\u666f\u3092\u7406\u89e3\u3059\u308b\u3053\u3068\u3067\u3001\u65e5\u5e38\u306e\u958b\u767a\u3067\u906d\u9047\u3059\u308b\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u306e\u554f\u984c\u306b\u5bfe\u5fdc\u3059\u308b\u305f\u3081\u306e\u57fa\u672c\u7684\u306a\u77e5\u8b58\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\n\n\u307e\u305a\u3001Python\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u4f5c\u6210\u304b\u3089\u914d\u5e03\u3001\u4f9d\u5b58\u95a2\u4fc2\u7ba1\u7406\u3001\u30d3\u30eb\u30c9\u306a\u3069\u306e\u5404\u8981\u7d20\u306e\u5f79\u5272\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\u3055\u3089\u306b\u3001Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u7ba1\u7406\u306b\u304a\u3051\u308b\u96e3\u3057\u3044\u30dd\u30a4\u30f3\u30c8\u3001\u305d\u3057\u3066\u3001\u73fe\u5728\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u3092\u4e00\u4f8b\u3068\u3057\u3066\u6319\u3052\u3001\u5305\u62ec\u7684\u306a\u5168\u4f53\u50cf\u3068\u73fe\u5834\u3067\u306e\u5177\u4f53\u7684\u306a\u5fdc\u7528\u3092\u30ea\u30f3\u30af\u3055\u305b\u307e\u3059\u3002\u3053\u306e\u60c5\u5831\u3092\u8e0f\u307e\u3048\u3001\u76ee\u7684\u306b\u6cbf\u3063\u305f\u6700\u9069\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u3092\u884c\u3048\u308b\u77e5\u8b58\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002", "description": "## \u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\n\n1. \u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u57fa\u672c\u8981\u7d20\n    - \u6a19\u6e96\u3068\u898f\u683c\uff08PEP\u306a\u3069\uff09\n    - \u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u914d\u5e03\uff08PyPI\u306a\u3069\uff09\n    - \u30e9\u30f3\u30bf\u30a4\u30e0\u30d0\u30fc\u30b8\u30e7\u30f3\u7ba1\u7406\uff08pyenv\u306a\u3069\uff09\n    - \u30d1\u30c3\u30b1\u30fc\u30b8\u30d0\u30fc\u30b8\u30e7\u30f3\u3068\u4f9d\u5b58\u95a2\u4fc2\u306e\u7ba1\u7406\uff08pip, poetry\u306a\u3069\uff09\n    - \u30d3\u30eb\u30c9\u3068\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306e\u30d7\u30ed\u30bb\u30b9\uff08setuptools, wheel\u306a\u3069\uff09\n2. Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u3092\u8907\u96d1\u5316\u3059\u308b\u8981\u56e0\n    - PEP\u306e\u9069\u7528\u3068\u305d\u306e\u6642\u9593\u7684\u306a\u8ab2\u984c\n    - \u9ad8\u5ea6\u306a\u8981\u6c42\u3092\u6301\u3064\u30e9\u30a4\u30d6\u30e9\u30ea\uff08ML\u30e9\u30a4\u30d6\u30e9\u30ea\u306a\u3069\uff09\n    - \u591a\u69d8\u5316\u3059\u308b\u30c4\u30fc\u30eb\u7fa4\u3068\u305d\u306e\u5f8c\u65b9\u4e92\u63db\u6027\u306e\u554f\u984c\n3. Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u6b74\u53f2\u7684\u9032\u5316\n    - \u521d\u671f\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\n    - PyPI\u3068pip\u306e\u767a\u5c55\n    - wheel\u5f62\u5f0f\u306e\u5c0e\u5165\n    - \u4f9d\u5b58\u95a2\u4fc2\u306e\u89e3\u6c7a\u306e\u5f37\u5316\n    - \u521d\u671f\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\n    - Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u306e\u73fe\u72b6\u3068\u8ab2\u984c\n4. Python\u30d1\u30c3\u30b1\u30fc\u30b8\u30f3\u30b0\u306e\u30d9\u30b9\u30c8\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u3068\u30b1\u30fc\u30b9\u30b9\u30bf\u30c7\u30a3\n    - \u30b1\u30fc\u30b9\u30d0\u30a4\u30b1\u30fc\u30b9\u3067\u306e\u30c4\u30fc\u30eb\u9078\u629e\u306e\u4f8b\n    - pyenv, pip, conda, poetry\u306a\u3069\u306e\u5404\u30c4\u30fc\u30eb\u9069\u5207\u306a\u7d44\u307f\u5408\u308f\u305b\u65b9\n5. \u5b9f\u969b\u306e\u554f\u984c\u3068\u305d\u306e\u89e3\u6c7a\u7b56\n    - pip\u3068conda\u3092\u4e21\u65b9\u4f7f\u308f\u306a\u3044\u65b9\u304c\u826f\u3044\u3068\u8a00\u308f\u308c\u3066\u3044\u308b\u7406\u7531\n    - \u7279\u6b8a\u306a\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30d7\u30ed\u30bb\u30b9\u306e\u3042\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\uff08\u4f8b\uff1apytorch\uff09", "recording_license": "", "do_not_record": false, "persons": [{"code": "VJUKX7", "name": "Higuchi Kokoro", "avatar": "https://pretalx.com/media/avatars/VJUKX7_qT8ky0y.webp", "biography": "- \u6a0b\u53e3 \u5fc3\uff08Higuchi Kokoro\uff09\n- 1997\u5e7401\u670813\u65e5\u751f\u307e\u308c\n\n\u7b51\u6ce2\u5927\u5b66\u5927\u5b66\u9662\u3067\u533b\u7642\u753b\u50cf\u306e\u81ea\u52d5\u30bb\u30b0\u30e1\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u306e\u7814\u7a76\u306b\u5f93\u4e8b\u3057\u305f\u5f8c\u30012021\u5e744\u6708\u306bWantedly\u682a\u5f0f\u4f1a\u793e\u306b\u5165\u793e\u3002\u30c7\u30fc\u30bf\u30b5\u30a4\u30a8\u30f3\u30c6\u30a3\u30b9\u30c8\u3068\u3057\u3066\u63a8\u85a6\u30b7\u30b9\u30c6\u30e0\u306e\u8a2d\u8a08\u30fb\u958b\u767a\u30fb\u8a55\u4fa1\u3001\u30b0\u30ed\u30fc\u30b9\u65bd\u7b56\u306e\u5206\u6790\u696d\u52d9\u306a\u3069\u3092\u62c5\u5f53\u3057\u3066\u3044\u307e\u3059\u3002\n\nGitHub: https://github.com/zerebom\nTwitter: https://twitter.com/zerebom_3", "public_name": "Higuchi Kokoro", "guid": "c0f0cfaa-857d-5180-bd96-a72c516c2f76", "url": "https://pretalx.com/pyconapac2023/speaker/VJUKX7/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/BLGBSE/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/BLGBSE/", "attachments": []}, {"guid": "d234ff6c-1d58-5026-a247-2eba9ac847bc", "code": "BJTTQX", "id": 33084, "logo": null, "date": "2023-10-27T15:30:00+09:00", "start": "15:30", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-33084-improving-debuggability-of-complex-asyncio-applications", "url": "https://pretalx.com/pyconapac2023/talk/BJTTQX/", "title": "Improving debuggability of complex asyncio applications", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "The key of debugging is observability and reproducibility. It is still challenging to see what\u2019s happening in complex real-world asyncio applications. To tackle this problem, I wrote the new, improved version of aiomonitor based on my fork by collaboration with the aio-libs maintainers met in person in PyCon US 2023. This talk will present the challenges of asyncio debugging, how I improved the ex", "description": "When we compose multiple asyncio libraries and our own codes together, it is hard to track down silently swallowed cancellations and resource-hogging floods of tasks triggered by internals of 3rd-party callbacks. Moreoever, such misbehaviors are often observed only in production environments where the app faces the actual workloads and I/O patterns, making it even harder to reproduce.\n\nThe aio-libs/aiomonitor project provides a live access to a running asyncio process using a telnet-based REPL interafce to inspect the list of tasks and their current stacks. I have added more features to help tracking the above issues of asyncio apps running in production: task creation tracker and termination tracker. These trackers keeps the stack traces whenever a new task is created or terminated, and provides a holistic view of chained stack traces when the tasks are nested with arbitrary depths. aiomonitor also demonstrates a rich async TUI (terminal UI) based on prompt toolkit and Click, with auto-completion of commands and arguments, far enhancing the original version\u2019s simple REPL. With aiomonitor, I could successfully debug several production bugs. \n\nIn PyCon US 2023, I\u2019ve presented my fork, aiomonitor-ng, and collaborated with Sviatoslav Sydorenko (@webknjaz) to backport it to the original project while revamping the CI/CD pipelines. This talk will also cover the stories of the backporting process.\n\nI hope this talk would help our fellow asyncio developers to build more complex yet stable applications at scale.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RZYTWR", "name": "Joongi Kim", "avatar": "https://pretalx.com/media/avatars/RZYTWR_hmtdehc.webp", "biography": "Joongi is the creator of Backend.AI and the CTO of Lablup, where he oversees the development of MLOps pipelines and GPU-accelerated AI services. He earned his Ph.D. in Computer Science from KAIST by creating a GPU-accelerated packet processing framework with world-leading speed of 80 Gbps. His major areas of interest include scalable and automated backend systems, as well as their analysis and design. He's also a big fan of open source, having contributed to projects like Python, iPuTTY, Textcube, aiodocker, aiohttp, pyzmq, DPDK, and others.", "public_name": "Joongi Kim", "guid": "1609e21b-396f-5bdd-a33b-12437da1fa9f", "url": "https://pretalx.com/pyconapac2023/speaker/RZYTWR/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/BJTTQX/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/BJTTQX/", "attachments": []}, {"guid": "417320a3-d159-55aa-8c99-299509f3c9b3", "code": "8F7KBC", "id": 32547, "logo": null, "date": "2023-10-27T16:10:00+09:00", "start": "16:10", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32547-develop-your-python-cloud-serverless-apps-locally-with-localstack", "url": "https://pretalx.com/pyconapac2023/talk/8F7KBC/", "title": "Develop your Python cloud & serverless apps locally with LocalStack!", "subtitle": "", "track": "Niche technique", "type": "Regular Talk", "language": "en", "abstract": "In this session, we provide a hands-on introduction to LocalStack, a fully functional local AWS cloud stack. With LocalStack, Python-based cloud applications and infrastructure can be developed entirely on your local machine, reducing dev&test cycles from minutes to seconds.", "description": "DevOps teams across the globe are increasingly focusing time and energy on optimizing their cloud development and deployment flows. The traditional deploy-and-test cycles against public clouds can become slow and tedious, where developers are often facing several minutes of idle times between deployments that need to be frequently triggered during testing & debugging.\n\nAlso, with the increasing popularity of Infrastructure-as-Code tools like Terraform or Pulumi, efficient testing of automated infrastructure deployments becomes critical. Testing cycles for deployments of complex stacks with large-scale resources can easily take 15+ minutes or more in the real cloud.\n\nIn this talk, we will provide a detailed deep dive into LocalStack, an open-source cloud emulator that allows you to develop Python cloud & serverless applications entirely on your local machine without ever having to connect to the real cloud! LocalStack provides 70+ AWS services running in a Docker container completely on your local machine. We will develop AWS applications, but since LocalStack runs entirely on the local machine without talking to the real cloud, no cloud access credentials are required to follow the talk.\n\nThe talk is roughly structured as follows:\n\n- Intro to AWS cloud development with Python\n- Getting started with LocalStack\n- Developing Python serverless apps with LocalStack\n- Advanced integrations for Infrastructure-as-Code (Terraform, CDK) and CI/CD (Github Actions)\n- Python internals of LocalStack\n- Summary and Q&A\n\nThe session covers interactive live coding to showcase common scenarios and use cases, different settings for local debugging of Lambdas and containerized apps as well as some advanced new features that can radically improve productivity and team collaboration patterns.", "recording_license": "", "do_not_record": false, "persons": [{"code": "8WBYQ8", "name": "Harsh Bardhan Mishra", "avatar": "https://pretalx.com/media/avatars/8WBYQ8_et249mo.webp", "biography": "Harsh is an engineer at LocalStack working at improving the developer experience of engineers developing/testing cloud applications on AWS. He is also an AWS Community Builder in the Serverless category and has previously worked at Red Hat, HackerRank, and Quansight! He is deeply passionate about cloud & serverless development, including DevOps, practises, Web engineering, and using technology to mitigate climate change.", "public_name": "Harsh Bardhan Mishra", "guid": "8f202e81-3f4f-5ccc-b2d2-4f8a1ce94a1e", "url": "https://pretalx.com/pyconapac2023/speaker/8WBYQ8/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8F7KBC/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8F7KBC/", "attachments": []}], "track 3": [{"guid": "9e94f4b6-9163-5d38-b0b9-67ca9471fffc", "code": "ARHZFP", "id": 33198, "logo": null, "date": "2023-10-27T11:40:00+09:00", "start": "11:40", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-33198-fighting-money-laundering-with-python-and-open-source-software", "url": "https://pretalx.com/pyconapac2023/talk/ARHZFP/", "title": "Fighting Money Laundering with Python and Open Source Software", "subtitle": "", "track": "Approaching to social problem", "type": "Regular Talk", "language": "en", "abstract": "In this talk proposal, I will discuss how to detect the chain of fraudulent transactions and help the investigation agencies by providing useful insights to fight money laundering with the help of Python programming language and packages.", "description": "In this talk proposal, we will discuss the chain of fraudulent transactions and help the investigation agencies to fight money laundering with the help of Python programming language and packages.\nThe working of the proposed solution is described below\nStep 1: The investigation officer obtains data of suspicious accounts across banks.\nStep 2: Using Benford\u2019s Law the accounts data will be checked for possible fraud and marked for further analytics.\nStep 3: The account details will also be matched with Politically Exposed Persons(PEP), Relatives and Close Associates (RCA), and Sanctions Data. If a match is found then it increases the probability of possible money laundering. \nStep 4: Generate graphs showing the links between transactions of different bank accounts for step 2 and step 3.\nStep 5: Apply Graph Machine Learning techniques and graph algorithms to identify the fraudulent chains between depositor and receiver accounts. \nStep 6: Find a correlation between transactions and bank accounts to form a fraudulent chain.\nStep 7: Generate results in the form of reports and interactive visualizations\nStep 8: Verify the result for genuineness and false positive rate.\nStep 9: Keep track of all the activities and tasks executed from steps 2 through 8. \nStep 10: Generate a report for step 9 in a human-readable and understandable form.\n\nThe application has been developed using Scipy, numpy, pandas, matplotlib, NetworkX, Altair, scikit-learn, and Dash packages.\n\nThe participants will learn about a new use case of python in crime investigation.", "recording_license": "", "do_not_record": false, "persons": [{"code": "CPJQQS", "name": "Gajendra Deshpande", "avatar": "https://pretalx.com/media/avatars/CPJQQS_Dy3rZGa.webp", "biography": "", "public_name": "Gajendra Deshpande", "guid": "c9d7383b-8dee-551a-af88-006a165ffe7d", "url": "https://pretalx.com/pyconapac2023/speaker/CPJQQS/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/ARHZFP/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/ARHZFP/", "attachments": []}, {"guid": "bd0eb486-466a-5d3e-ad2f-45bac922162f", "code": "UPFZDC", "id": 33088, "logo": null, "date": "2023-10-27T13:40:00+09:00", "start": "13:40", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-33088-python-in-human-centered-ai-design-how-to-deal-with-60-million-patients-to-develop-ai-solutions-in-healthcare", "url": "https://pretalx.com/pyconapac2023/talk/UPFZDC/", "title": "Python in Human-Centered AI Design: How to deal with 60 Million patients to develop AI solutions in healthcare", "subtitle": "", "track": "Approaching to social problem", "type": "Regular Talk", "language": "en", "abstract": "We introduce a novel design approach to design, develop, deploy, and maintain AI/ML tools. This real-world research case study in the healthcare domain, to solve societal issues, can provide actionable methodology for any DevOps task using Python. The presented design methods demonstrate how Python is used in all stages of research with data collected from 60 million patients in United Kingdom.", "description": "In healthcare, the use of machine learning (ML) and artificial intelligence (AI) is becoming popular than ever, and Python is in the forefront when it comes to the programming language of choice.\n\nIn this talk, we outline the use of a design and implementation framework to aid developers to design _Human-Centered AI (HcAI)_ solutions in healthcare. We provide examples from our research to showcase challenges and best practices of using large healthcare datasets such as [CPRD](https://cprd.com) in the UK consisting of data collected from 60 million patients, where we analyse and develop AI/ML models using Python. This will allow the audience to get a good understanding of the challenges involved in solving technical and societal issues such as in healthcare. It will demonstrate as a case study of research in United Kingdom as to how widespread adoption of Python, combined with design innovation can lead to accountable, transparent, and safe use of AI/ML tools.\n\nParticipants of the talk will be able to appreciate how this approach can make their **design, development, deployment, and maintenance** well organized and sustainable. Beginners as well as advanced users are often not familiar with the real-world utility perspectives of AI/ML development, and this talk will provide the international community with actionable take-home ideas that they can use in their projects. It will demonstrate how using Python can make even such data-driven complicated tasks more manageable.\n\nThe talk will also be accompanied by a poster, which will provide the audience to interact with the speakers beyond the talk. Furthermore, we open up the Q&A session to include a collaborative platform at an international level for anyone from the audience who might be interested to engage in our research work, for future collaboration.\n\n### Talk outline and organization\n- Introduction to Human-Centered AI Design using Python ```(5 mins)```\n- Examples from the read-world research settings ```(2 mins)```\n- Challenges, best practices, and Python tools used to research on database with 60 million patients in United Kingdom ```(3 mins)```\n- How to use the Health AI Implementation Framework in research ```(5 mins)```\n- Interactive Demo: Examples from ongoing research work using Python ```(10 mins)```\n- Q&A from the audience ```(5 mins)```\n\n### Audience\nThis talk is aimed for Python **beginners** as it provides design and implementation guidance in AI/ML development, deployment, and maintenance. **Advanced users** will also benefit from this approach and be able to develop solutions using this implementation framework. The talk would also be suited for **policy makers** and **project + product management team members** so that they can use the approach in their companies. Researchers in this field can also take away actionable perspectives for research studies. Although the main example is in healthcare, the design principles described in the talk is applicable to any large scale AI/ML development.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RDBZYV", "name": "Hassan Sami Adnan", "avatar": "https://pretalx.com/media/avatars/RDBZYV_AqfEfKD.webp", "biography": "Sami is a healthcare professional and digital health designer currently reading for a doctoral degree, DPhil in Primary Health Care, at the University of Oxford. His research looks at the characteristics and mechanisms of using human centred AI design to address multiple long-term conditions (multimorbidities) at the intersection of the digital transformation in healthcare.\nPreviously, he worked as a Research Fellow at the Berlin Institute of Health at Charit\u00e9 University Hospital Berlin with the Core Interoperability Unit. Prior to that he worked as a Healthcare Researcher with the WHO and the Medical Faculty of Maastricht University, on a project related to SDG 3 \u2013 resulting in the WHO Community Engagement Health Promotion Guide.\nWith his background in healthcare and digital health, his areas of research interests are in medical AI Ethics, explainable AI, health design innovation, patient data privacy, digital health regulation, and the application of artificial intelligence in healthcare systems.\nSami has researched on 3D printing for personalised medicine and has recently developed the Healthcare Differential Privacy Framework to make privacy-preserving data sharing viable for medical research and machine learning. Sami has also worked at Apple Inc. for 8 years in different roles ranging from sales and product development to training new employees and designing company-internal solutions.", "public_name": "Hassan Sami Adnan", "guid": "adc33d28-bc7f-534d-9af0-eb2f1382e2af", "url": "https://pretalx.com/pyconapac2023/speaker/RDBZYV/"}, {"code": "M7MHN8", "name": "Samara Sharmeen", "avatar": "https://pretalx.com/media/avatars/M7MHN8_9XgBwhB.webp", "biography": "Samara Sharmeen is a resident neurosurgeon working in Berlin, and a PhD candidate at the RWTH Aachen University. Her current research is on prognostic clinical outcome and 3D-CT volumetric planning before conventional complex two-stage haepatectomy versus Associating Liver Partition and Portal vein Ligation for Staged haepatectomy \u2013 ALPPS. Samara is interested in use of emerging technologies to aid clinical decision making. She has been collaborating in digital health projects since 2019, attending PyCon and PyConJP, and continues to create awareness of Python to her clinical peers. Furthermore, Samara has worked at Apple Inc. for over 5 years as a Product Specialist.", "public_name": "Samara Sharmeen", "guid": "cf758466-d015-53aa-91b9-fe624eb9ac08", "url": "https://pretalx.com/pyconapac2023/speaker/M7MHN8/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/UPFZDC/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/UPFZDC/", "attachments": []}, {"guid": "91928f2d-98ea-5080-ba73-22e7ec8cb992", "code": "VYT7AY", "id": 33136, "logo": null, "date": "2023-10-27T14:20:00+09:00", "start": "14:20", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-33136-i-convinced-my-old-high-school-to-offer-a-python-programming-class-and-the-plan-to-convince-all-other-schools-in-our-city-to-follow", "url": "https://pretalx.com/pyconapac2023/talk/VYT7AY/", "title": "I convinced my old high school to offer a Python Programming class! [And  the plan to convince all other schools in our city to follow]", "subtitle": "", "track": "Python in education", "type": "Regular Talk", "language": "en", "abstract": "My old high school needs help with some research projects that involves coding. Instead of just helping, I convinced them to offer a python programming class instead! **This talk will discuss the journey on how this whole idea began and how it was executed. We will also discuss my grand plan of having every high school in our city to add a python programming class!**", "description": "In order to understand the core problem, I will first give a glimpse of the education system here in the Philippines. This is to cement the underlying need for implementing a programming class for high school students.\n\nThere are a lot of factors that we need to consider when we were planning this class. It might seem simple and straightforward but we had to adjust the coverage and scope of what we want to offer due to the needs of the students and the school. \n\nWe encountered a lot of problems including how to pick the correct teachers and how to teach the teachers themselves. As for the students, we want to make sure that they can use what they will learn in their research and projects. \n\nIt has been a couple of years since the school added programming classes and they were able to offer it to different grade level already. We have some insights on how it affected the students and how it made them more inclined towards STEM (science, technology, engineering, maths).\n\nMoving forward, my grand plan is to make all the schools in our city teach python and programming. I am in talk with the other schools and I want to make sure that they can implement a python programming class as well. I want to make this as an opportunity to show other schools and the local government how adding a python programming class can actually improve the quality of research output for students.\n\nThe talk will focus on the following main key points:\n\n- Education challenges in the Philippines in the context of tech and programming\n- How did we came up with the idea of adding python programming to the curriculum\n- How did we implement it?\n- What are the key takeaways and how do we plan to improve the python programming class\n- The grand plan of spreading this to all the schools in our city!", "recording_license": "", "do_not_record": false, "persons": [{"code": "WLRBE3", "name": "Ni\u00f1o R. Eclarin", "avatar": "https://pretalx.com/media/avatars/WLRBE3_N0LwSx9.webp", "biography": "Hi, I'm Ninz!\n\n**tldr;**\nSoftware Engineer to Machine Learning Engineer. Finished masters with research focus on agriculture and image processing. Very active in the community, helps local school with research and programming, and occasionally talks at events. Usually out in the trails or just casually looking up in the night sky.", "public_name": "Ni\u00f1o R. Eclarin", "guid": "ce8bf045-3281-5bc8-8462-e4619102ab9b", "url": "https://pretalx.com/pyconapac2023/speaker/WLRBE3/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VYT7AY/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VYT7AY/", "attachments": []}, {"guid": "494b2e9b-c0ac-5632-9126-44c74dd6d839", "code": "M8QP3X", "id": 31570, "logo": null, "date": "2023-10-27T15:30:00+09:00", "start": "15:30", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-31570-dev-containerspython", "url": "https://pretalx.com/pyconapac2023/talk/M8QP3X/", "title": "Dev Containers\u6642\u4ee3\u306ePython\u958b\u767a\u74b0\u5883\u306e\u3042\u308a\u65b9", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "\u74b0\u5883\u306e\u5206\u96e2\u3084\u3001\u74b0\u5883\u69cb\u7bc9\u306e\u81ea\u52d5\u5316\u306f\u3053\u3053\u6570\u5e74\u3067\u300c\u5f53\u305f\u308a\u524d\u300d\u3068\u3055\u308c\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3057\u305f\u3002pipenv\u3001poetry\u3001hatch\u306a\u3069\u3001\u3053\u308c\u307e\u3067Python\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30eb\u306f\u6a19\u6e96\u3067\u3042\u308bvenv\u3067\u306e\u4eee\u60f3\u5316\u3092\u30d9\u30fc\u30b9\u306b\u3057\u3066\u958b\u767a\u3055\u308c\u3066\u304d\u307e\u3057\u305f\u3002\u4e00\u65b9\u3067\u3001\u3044\u308d\u3044\u308d\u306a\u30c4\u30fc\u30eb\u304c\u767b\u5834\u3057\u3001\u6c42\u3081\u3089\u308c\u308b\u77e5\u8b58\u3082\u5897\u3048\u3066\u304d\u305f\u305f\u3081\u3001\u96e3\u6613\u5ea6\u304c\u9ad8\u304f\u306a\u3063\u3066\u304d\u3066\u3044\u308b\u6c17\u304c\u3057\u307e\u3059\u3002\n\nDev Containers\u306f1\u3064\u306e\u89e3\u3068\u306a\u308a\u3046\u308b\u3082\u306e\u3067\u3059\u304c\u3001\u3053\u306e\u4e2d\u3067\u65e2\u5b58\u306e\u30c4\u30fc\u30eb\u3092\u305d\u306e\u307e\u307e\u9069\u7528\u3059\u308b\u30682\u91cd\u306b\u4eee\u60f3\u5316\u3092\u91cd\u306d\u305f\u74b0\u5883\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u3001\u521d\u5fc3\u8005\u306b\u306f\u96e3\u3057\u3044\u74b0\u5883\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\u3002\u307e\u305f\u3001\u4e8b\u5b9f\u4e0a\u306eVSCode\u5c02\u7528\u3068\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3059\u3002\n\nPythonista\u306f\u53e4\u6765\u3088\u308a\u3082\u3001\u6a19\u6e96\u5316\u3068\u3001\u30b7\u30f3\u30d7\u30eb\u3001\u591a\u69d8\u306a\u74b0\u5883\u3067\u306e\u4e92\u63db\u6027\u3092\u91cd\u3093\u3058\u3066\u304d\u307e\u3057\u305f\u3002\u3053\u306e\u767a\u8868\u3067\u306f\u3001\u3055\u307e\u3056\u307e\u306a\u74b0\u5883\u3092\u8003\u616e\u3057\u305f\u6700\u5c0f\u9650\u306e\u30df\u30cb\u30de\u30eb\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u65b9\u6cd5\u306b\u3064\u3044\u3066\u691c\u8a0e\u3057\u3066\u3044\u304d\u307e\u3059\u3002", "description": "* Dev Containers\u306e\u4ed5\u7d44\u307f\n\n    \u307e\u305a\u306fDev Containers\u306e\u52d5\u304d\u3084\u4ed5\u7d44\u307f\u3092\u898b\u3066\u3044\u304d\u307e\u3059\u3002Dev Containers\u306f\u4eca\u307e\u3067Docker\u3084\u4eee\u60f3PC\u3067\u74b0\u5883\u3092\u4f5c\u308b\u6642\u306b\u5927\u5909\u3060\u3063\u305f\u3053\u3068\u3092\u3044\u308d\u3044\u308d\u81ea\u52d5\u5316\u3057\u3066\u304f\u308c\u307e\u3059\u3057\u3001\u74b0\u5883\u306e\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3082\u7c21\u5358\u3067\u3059\u3002\n\n    *  Dev Containers\u304c\u3084\u3063\u3066\u304f\u308c\u308b\u3053\u3068\u3001\u3084\u3063\u3066\u304f\u308c\u306a\u3044\u3053\u3068\n\n        \u30e6\u30fc\u30b6\u30fc\u3001\u6a29\u9650\u3001\u540c\u671f\u304c\u9045\u304f\u306a\u3089\u306a\u3044\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u306e\u69cb\u6210\u3001\u958b\u767a\u30b5\u30fc\u30d0\u30fc\u306e\u30dd\u30fc\u30c8\u89e3\u653e\u3001ssh/git\u306e\u30a2\u30af\u30bb\u30b9\u3001\u793e\u5185\u306e\u30d7\u30ed\u30ad\u30b7\u306e\u7a81\u7834\u65b9\u6cd5\u306a\u3069\u3092\u7d39\u4ecb\u3057\u3066\u3044\u304d\u307e\u3059\u3002\n\n    * Python\u7528\u306e\u30a4\u30e1\u30fc\u30b8\u4f5c\u6210\u65b9\u6cd5\n\n        \u3053\u3053\u3067\u306f\u3001Python\u56fa\u6709\u306e\u74b0\u5883\u3092\u30bc\u30ed\u304b\u3089\u4f5c\u308b\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u3066\u3044\u304d\u307e\u3059\u3002\u30bc\u30ed\u304b\u3089\u3068\u3044\u3063\u3066\u3082\u30e1\u30cb\u30e5\u30fc\u304b\u3089\u9078\u3076\u3060\u3051\u3067\u7c21\u5358\u3067\u3059\u3002\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u65b9\u6cd5\u306a\u3069\u3082\u7d39\u4ecb\u3057\u3066\u3044\u304d\u307e\u3059\u3002\n\n* \u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30c4\u30fc\u30eb\u306e\u52d5\u4f5c\n\n    \u30d9\u30fc\u30b9\u306eDev Containers\u304c\u3067\u304d\u3042\u304c\u3063\u305f\u3068\u3053\u308d\u3067\u3001\u3055\u307e\u3056\u307e\u306a\u30c4\u30fc\u30eb\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306e\u52d5\u4f5c\u306e\u6bd4\u8f03\u3092\u901a\u3058\u3066\u3001\u65e2\u5b58\u306e\u30c4\u30fc\u30eb\u304cDev Containers\u3068\u30b3\u30f3\u30d5\u30ea\u30af\u30c8\u3057\u304c\u3061\u306a\u30dd\u30a4\u30f3\u30c8\u3092\u307e\u3068\u3081\u307e\u3059\u3002\n\n* pyproject.toml\u3092\u66f8\u304f\n\n    pyproject.toml\u306fPoetry\u3067\u6709\u540d\u306b\u306a\u308a\u307e\u3057\u305f\u304c\u3001\u5b9f\u306fPEP\u3067\u30eb\u30fc\u30eb\u5316\u3055\u308c\u3066\u3044\u308b\u6a19\u6e96\u7684\u306a\u30c7\u30fc\u30bf\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u3067\u3059\u3002\u307e\u305f\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u4f7f\u3063\u305f\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306b\u306f\u5916\u90e8\u30c4\u30fc\u30eb\u306f\u4e0d\u8981\u3067\u3059\u3002pyproject.toml\u3092\u30c0\u30a4\u30ec\u30af\u30c8\u306b\u4f7f\u3063\u305f\u30df\u30cb\u30de\u30eb\u306a\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u306e\u624b\u6cd5\u3092\u63a2\u308a\u307e\u3059\u3002\n\n    \u74b0\u5883\u3092\u3046\u307e\u304f\u4f5c\u308b\u3053\u3068\u3067\u30b3\u30fc\u30c9\u4fdd\u7ba1\u3084\u30ea\u30a2\u30eb\u30bf\u30a4\u30e0\u306e\u30c1\u30a7\u30c3\u30af\u3092\u3057\u306a\u304c\u3089\u30d5\u30a1\u30a4\u30eb\u306e\u7de8\u96c6\u304c\u884c\u3048\u308b\u305f\u3081\u3001\u305d\u308c\u3092\u7d39\u4ecb\u3057\u3066\u3044\u304d\u307e\u3059\u3002\n\n  * \u3067\u304d\u3042\u304c\u3063\u305fPython\u958b\u767a\u74b0\u5883\u306e\u30ec\u30d3\u30e5\u30fc\n\n    Dev Containers\u3092\u4f7f\u3063\u305f\u5834\u5408\u3001\u4f7f\u308f\u306a\u304b\u3063\u305f\u5834\u5408\u306e\u305d\u308c\u305e\u308c\u3067\u3046\u307e\u304f\u3044\u304f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u3044\u304d\u307e\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "JTSHCS", "name": "Yoshiki Shibukawa", "avatar": "https://pretalx.com/media/avatars/JTSHCS_uiX3jak.webp", "biography": "\u30a8\u30ad\u30b9\u30d1\u30fc\u30c8Python\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u306e\u7ffb\u8a33\u8005\u306e1\u4eba\u3002Sphinx-Users.jp\u306e\u30d5\u30a1\u30a6\u30f3\u30c0\u30fc\u3002", "public_name": "Yoshiki Shibukawa", "guid": "a71e2ac9-1aff-5c43-bcfc-0c61b1df59fc", "url": "https://pretalx.com/pyconapac2023/speaker/JTSHCS/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/M8QP3X/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/M8QP3X/", "attachments": []}, {"guid": "979bd184-ba68-566d-accc-add1d63b8648", "code": "ZAQM3D", "id": 32545, "logo": null, "date": "2023-10-27T16:10:00+09:00", "start": "16:10", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-32545-pythonph-one-does-not-simply-create-a-lasting-tech-community-our-10-year-journey-through-the-joys-and-challenges-of-building-a-fulfilling-and-impactful-community", "url": "https://pretalx.com/pyconapac2023/talk/ZAQM3D/", "title": "(PythonPH) One Does Not Simply Create a Lasting Tech Community: Our 10-Year Journey Through the Joys and Challenges of Building a Fulfilling and Impactful Community", "subtitle": "", "track": "Approaching to social problem", "type": "Regular Talk", "language": "en", "abstract": "The Python community is amazing! They bring together people who share common altruistic goals, and the magic of collaboration and innovation flourishes. However, despite the abundance of positive outcomes, community stewards often face challenges such as burnout and succession planning. So the question remains: how do we make this good thing last?", "description": "As co-founders of Python Philippines (PythonPH), we've faced numerous challenges, including the departure of team members without a succession plan, having to take additional workloads, and experiencing burnout. In this talk, we'll share our personal journey and offer strategies that have helped us overcome these pain points.\n\nWe understand first-hand the uncertainty and pressure that come with the loss of co-founders and how it can impact the remaining team members. Drawing from our experience, we'll share the steps we took in creating a succession plan that will ensure continuity and minimize disruption.\n\nFurthermore, we'll discuss how we've dealt with burnout and share tips for maintaining a healthy work-life-community balance. As we've navigated these challenges, we've also faced feelings of being left behind from a shared mission. We'll offer insights on how we stay motivated and focused on achieving organizational goals, even when it feels like others have moved on.\n\nThis talk will provide attendees with a personal account of the challenges and rewards of managing a long-running organization:\n\n1. Succession planning is crucial for long-running organizations to ensure continuity and minimize disruption when leaders and team members depart.\n2. Burnout is a common challenge for long-running organizations and can have a negative impact on productivity and morale. Strategies for preventing burnout and maintaining a healthy work-life-community balance are key.\n3. Feelings of being left behind from a shared mission are normal but can be overcome by staying focused on the organization's mission.\n    \nManaging a long-running organization comes with unique challenges, but with the right strategies and mindset, it can be incredibly rewarding and fulfilling.", "recording_license": "", "do_not_record": false, "persons": [{"code": "3BBMKG", "name": "Matt Lebrun", "avatar": "https://pretalx.com/media/avatars/3BBMKG_tK8jj2g.webp", "biography": "Matt is a software engineer and the president of the Python Philippines community. He is also a Python Software Foundation Fellow.\n\nAs a community leader, he recognizes that burnout is a real and common problem among community members. He strives to create an environment where people can grow and develop themselves without experiencing burnout. He and the other leaders are working hard to achieve this goal, and things seem to be going well so far.\n\nMatt is also a coffee and peanut butter enthusiast.", "public_name": "Matt Lebrun", "guid": "08b7e331-b02e-5f72-9f87-ca0cd371f8d7", "url": "https://pretalx.com/pyconapac2023/speaker/3BBMKG/"}, {"code": "DTA88Q", "name": "Micaela Reyes", "avatar": "https://pretalx.com/media/avatars/DTA88Q_FRNpHoX.webp", "biography": "Micaela is an Entrepreneur, Software Engineer, and Tech Community Leader.\n\nCurrently, she runs CodeHappy, a grassroots Python training company in the Philippines, where she shares her passion for programming. Beyond her career and entrepreneurial endeavors, Micaela is deeply involved in the Python community. She serves as the Director of Operations for PythonPH and is a Python Software Foundation Fellow.\n\nOn a personal level, she loves coffee, good food, traveling and going on adventures. As an introvert, she values meaningful connections with friends. Meeting passionate individuals who inspire her and sharing knowledge with them is a source of great fulfillment.", "public_name": "Micaela Reyes", "guid": "ac97a833-628d-5479-a7a3-562402bcfec6", "url": "https://pretalx.com/pyconapac2023/speaker/DTA88Q/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/ZAQM3D/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/ZAQM3D/", "attachments": []}], "track 4": [{"guid": "357ccf84-acef-5c50-b810-f155929e1274", "code": "DXWXGJ", "id": 33205, "logo": null, "date": "2023-10-27T11:40:00+09:00", "start": "11:40", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33205-introduction-to-structural-pattern-matching", "url": "https://pretalx.com/pyconapac2023/talk/DXWXGJ/", "title": "Introduction to Structural Pattern Matching", "subtitle": "", "track": "Python core", "type": "Regular Talk", "language": "en", "abstract": "Python 3.10\u306bStructural Pattern Matching\u304c\u65b0\u6a5f\u80fd\u3068\u3057\u3066\u8ffd\u52a0\u3055\u308c\u307e\u3057\u305f\u3002\u4e45\u3057\u3076\u308a\u306ePython\u3078\u8ffd\u52a0\u3055\u308c\u305f\u5927\u304d\u306a\u6a5f\u80fd\u3060\u3068\u601d\u3044\u307e\u3059\u3002\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3053\u306e\u5f37\u529b\u306a\u65b0\u6a5f\u80fd\u306e\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\u3092\u3044\u304f\u3064\u304b\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092\u4ea4\u3048\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002\u30d1\u30bf\u30fc\u30f3\u30de\u30c3\u30c1\u306e\u4f7f\u3044\u65b9\u3092\u7406\u89e3\u3057\u3066\u3001\u3055\u3063\u305d\u304f\u660e\u65e5\u304b\u3089\u4f7f\u3063\u3066\u307f\u307e\u3057\u3087\u3046\u3002", "description": "\u3053\u306e\u30c8\u30fc\u30af\u3067\u306fStrucral Pattern Matching\u304c\u3069\u3046\u3044\u3046\u30e2\u30c1\u30d9\u30fc\u30b7\u30e7\u30f3\u3067\u63d0\u6848\u3055\u308c\u305f\u304b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u305d\u3057\u3066\u3001Strucral Pattern Matching\u306e\u69cb\u6587\u3068\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\u3092\u8aac\u660e\u3057\u307e\u3059\u3002\n\u30c8\u30fc\u30af\u306e\u5f8c\u534a\u3067\u306f\u3001\u3053\u306e\u6a5f\u80fd\u306b\u3042\u308b\u3055\u307e\u3056\u307e\u306a\u30d1\u30bf\u30fc\u30f3\u306b\u3064\u3044\u3066\u3001\u305d\u308c\u305e\u308c\u3069\u306e\u3088\u3046\u306b\u4f7f\u3046\u306e\u304b\u3092\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3068\u5408\u308f\u305b\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u7d39\u4ecb\u3059\u308b\u30d1\u30bf\u30fc\u30f3\u306fLiteral\u3001Capture\u3001Wildcard\u3001OR\u3001Value\u3001Group\u3001Class\u3001Sequence\u3001Mapping\u3001AS\u30d1\u30bf\u30fc\u30f3\u3067\u3059\u3002\u307e\u305fGuard\u306b\u3064\u3044\u3066\u3082\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n\u3053\u306e\u30c8\u30fc\u30af\u3092\u805e\u304f\u3053\u3068\u306b\u3088\u3063\u3066\u30d1\u30bf\u30fc\u30f3\u30de\u30c3\u30c1\u30f3\u30b0\u306e\u5168\u4f53\u50cf\u3092\u628a\u63e1\u3057\u3001\u4f7f\u3044\u3069\u3053\u308d\u3084\u5229\u70b9\u3092\u7406\u89e3\u3067\u304d\u307e\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "3TLEGG", "name": "Takanori Suzuki", "avatar": "https://pretalx.com/media/avatars/3TLEGG_QzdoPY2.webp", "biography": "\u4e00\u822c\u793e\u56e3\u6cd5\u4ebaPyCon JP Association\u4ee3\u8868\u7406\u4e8b\u3001\u682a\u5f0f\u4f1a\u793e\u30d3\u30fc\u30d7\u30e9\u30a6\u30c9 \u53d6\u7de0\u5f79 / Python Climber\n\n\u90e8\u5185\u306e\u30b5\u30a4\u30c8\u3092\u4f5c\u308b\u305f\u3081\u306bZope/Plone\u3068\u51fa\u4f1a\u3044\u3001\u305d\u306e\u5f8c\u5fc5\u8981\u306b\u304b\u3089\u308c\u3066Python\u3092\u4f7f\u3044\u59cb\u3081\u308b\u3002PyCon JP\u3067\u306f2011\u5e741\u6708\u306ePyCon mini JP\u304b\u3089\u30b9\u30bf\u30c3\u30d5\u3068\u3057\u3066\u6d3b\u52d5\u3057\u30012014\u5e74-2016\u5e74\u306ePyCon JP\u5ea7\u9577\u3002 \u4ed6\u306e\u4e3b\u306a\u6d3b\u52d5\u306f\u3001Python\u30dc\u30eb\u30c0\u30ea\u30f3\u30b0\u90e8(#kabepy) \u90e8\u9577\u3001Python mini Hack-a-thon(#pyhack) \u4e3b\u50ac\u306a\u3069\u3002\n\n\u5171\u8457\u66f8\uff0f\u8a33\u66f8\u306b\u300e\u3044\u3061\u3070\u3093\u3084\u3055\u3057\u3044Python\u6a5f\u68b0\u5b66\u7fd2\u306e\u6559\u672c \u7b2c2\u7248 \uff082023 \u30a4\u30f3\u30d7\u30ec\u30b9\u520a\uff09\u300f\u300ePython\u306b\u3088\u308b\u3042\u305f\u3089\u3057\u3044\u30c7\u30fc\u30bf\u5206\u6790\u306e\u6559\u79d1\u66f8 \u7b2c2\u7248 \uff082022 \u7fd4\u6cf3\u793e\u520a\uff09\u300f\u300ePython\u5b9f\u8df5\u30ec\u30b7\u30d4 \uff082022 \u6280\u8853\u8a55\u8ad6\u793e\u520a\uff09\u300f\u300e\u6700\u77ed\u8ddd\u96e2\u3067\u30bc\u30ed\u304b\u3089\u3057\u3063\u304b\u308a\u5b66\u3076Python\u5165\u9580(\u5fc5\u4fee\u7de8\u30fb\u5b9f\u8df5\u7de8) \uff082020 \u6280\u8853\u8a55\u8ad6\u793e\u520a\uff09\u300f\u300e\u3044\u3061\u3070\u3093\u3084\u3055\u3057\u3044Python\u306e\u6559\u672c \u7b2c2\u7248 \uff082020 \u30a4\u30f3\u30d7\u30ec\u30b9\u520a\uff09\u300f\u306a\u3069\u304c\u3042\u308b\u3002\n\n\u5404\u56fdPyCon\u3084Python Boot Camp\u3067\u8a2a\u308c\u305f\u571f\u5730\u3067\u3001\u73fe\u5730\u306e\u30af\u30e9\u30d5\u30c8\u30d3\u30fc\u30eb\u3092\u98f2\u3080\u3053\u3068\u304c\u697d\u3057\u307f\u30022019\u5e74\u306f\u4e16\u754c\u5404\u56fd\u306ePyCon\u3067\u306e\u767a\u8868\u306b\u6311\u6226\u3057\u3001\u65e5\u672c\u3092\u542b\u30809\u304b\u56fd\u3067\u767a\u8868\u3057\u305f\u3002 \u30d5\u30a7\u30ec\u30c3\u30c8\u3068\u30d3\u30fc\u30eb\u3068\u30ec\u30b4\u304c\u597d\u304d\u3002\u8da3\u5473\u306f\u5439\u594f\u697d(\u30c8\u30e9\u30f3\u30da\u30c3\u30c8)\u3068\u30dc\u30eb\u30c0\u30ea\u30f3\u30b0\u3002", "public_name": "Takanori Suzuki", "guid": "bcbab987-060d-5282-aaed-421b33206516", "url": "https://pretalx.com/pyconapac2023/speaker/3TLEGG/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/DXWXGJ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/DXWXGJ/", "attachments": []}, {"guid": "896aefa6-315a-546b-8dc4-f487058e7a78", "code": "KQQ3CU", "id": 33150, "logo": null, "date": "2023-10-27T13:40:00+09:00", "start": "13:40", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33150-pypi-2023", "url": "https://pretalx.com/pyconapac2023/talk/KQQ3CU/", "title": "PyPI\u30c7\u30d3\u30e5\u30fc 2023", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "\u305d\u3053\u306e\u3042\u306a\u305f\u3001PyPI\u30c7\u30d3\u30e5\u30fc\u3057\u307e\u305b\u3093\u304b\uff1f\n\n\u672c\u767a\u8868\u3067\u306f\u3001\u30a8\u30f3\u30b8\u30cb\u30a2\u6d3b\u52d5\u306e\u904e\u7a0b\u3067Python\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u516c\u958b\u3057\u305f\u304f\u306a\u3063\u305f\u6642\u306b\u3069\u306e\u3088\u3046\u306a\u3053\u3068\u3092\u3057\u3066\u3044\u3051\u3070\u3088\u3044\u304b\u306e\u5177\u4f53\u7684\u306a\u30a2\u30d7\u30ed\u30fc\u30c1\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u306a\u304a\u3001\u4eca\u56de\u306e\u767a\u8868\u3067\u306f\u73fe\u4ee3\u306e\u5de8\u4eba\u4ee3\u8868\u3068\u3057\u3066\u300cGitHub\u4e0a\u3067\u516c\u958b\u3055\u308c\u305f\u30ea\u30dd\u30b8\u30c8\u30ea\u3092PyPI\u306b\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\u307e\u3067\u300d\u3092\u30c6\u30fc\u30de\u3068\u3057\u307e\u3059\u3002", "description": "\u904e\u53bb\u306e\u767a\u8868\u3067\u4f55\u5ea6\u304b\u51fa\u3066\u3044\u308b\u300cPyPI\u30c7\u30d3\u30e5\u30fc\u300d\u7cfb\u306e\u767a\u8868\u30922023\u5e74\u524d\u5f8c\u3067\u306e\u72b6\u6cc1\u3092\u5143\u306b\u7d39\u4ecb\u3059\u308b\u3001\u300c\u307b\u307c\u6700\u65b0\u7248\u300d\u3068\u3057\u3066\u306ePython\u30e9\u30a4\u30d6\u30e9\u30ea\u306ePyPI\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u307e\u3067\u306e\u6b69\u304d\u65b9\u306e\u767a\u8868\u3067\u3059\u3002\n\n\u300c\u4e2d\u7d1a\u30ec\u30d9\u30eb\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u4f5c\u8005\u300d\u8996\u70b9\u3067\u3001\u3088\u308a\u30d7\u30e9\u30c3\u30c8\u30d5\u30a9\u30fc\u30e0\u306e\u80a9\u306b\u4e57\u3063\u305f\u30e9\u30a4\u30d6\u30e9\u30ea\u516c\u958b\u306e\u30a2\u30d7\u30ed\u30fc\u30c1\u3092\u4f1d\u3048\u308b\u306e\u304c\u76ee\u7684\u3067\u3059\u3002\n\n* Python\u306b\u304a\u3051\u308b\u30e2\u30b8\u30e5\u30fc\u30eb/\u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u3001PyPI\u306e\u7d39\u4ecb\n* \u516c\u958b\u3055\u308c\u305fPython\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u958b\u767a on GitHub\n  * Python\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f5c\u6210\u3059\u308b\n  * \u30c6\u30b9\u30c8\u3092\u66f8\u304f\n  * \u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3082\u66f8\u304f\n  * GitHub Actions\u3067GitHub Releases\u3078\u30e9\u30a4\u30d6\u30e9\u30ea\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3059\u308b\n  * GitHub Actions\u3067GitHub Pages\u3078\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u30c7\u30d7\u30ed\u30a4\u3059\u308b\n* PyPI\u3078\u306e\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\n  * \u30a2\u30ab\u30a6\u30f3\u30c8\u4f5c\u6210\n  * GitHub Actions\u3092\u6539\u4fee\u3057\u3066PyPI\u3078\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u51fa\u6765\u308b\u3088\u3046\u306b\u3059\u308b\n* \u3088\u308aPyPI\u306b\u6cbf\u3063\u305f\u30d1\u30c3\u30b1\u30fc\u30b8", "recording_license": "", "do_not_record": false, "persons": [{"code": "CZRYKK", "name": "Kazuya Takei (attakei)", "avatar": "https://pretalx.com/media/avatars/CZRYKK_4BQUSby.webp", "biography": "\u682a\u5f0f\u4f1a\u793e\u30cb\u30b8\u30dc\u30c3\u30af\u30b9\u306b\u6240\u5c5e\u3059\u308b\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u7cfb\u30a8\u30f3\u30b8\u30cb\u30a2\u3002\n\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8\u3067\u306f\u81ea\u79f0\u300cSphinx\u3067\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u3092\u3057\u305f\u304c\u308b\u4eba\u300d\u3002\n\n\u793e\u5185\u3067\u306f\u57fa\u76e4\u5468\u308a\u306e\u9762\u5012\u3092\u898b\u3064\u3064\u3001\u4ed6\u30e1\u30f3\u30d0\u30fc\u306e\u30b5\u30dd\u30fc\u30c8\u30fb\u30a2\u30c9\u30d0\u30a4\u30b6\u30fc\u3092\u4e2d\u5fc3\u306b\u6d3b\u52d5\u3002\n\u793e\u5916\u3067\u306f\u30d7\u30e9\u30b0\u30a4\u30f3\u7cfb\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u958b\u767a\u306b\u624b\u3092\u3064\u3051\u3066\u4ee5\u964d\u3001\u8208\u5473\u304c\u5411\u3044\u305f\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u62e1\u5f35\u7cfb\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30b3\u30c4\u30b3\u30c4\u3068\u958b\u767a\u30fb\u516c\u958b\u3057\u3066\u3044\u307e\u3059\u3002\n\n\u6700\u8fd1\u306fSphinx\u62e1\u5f35\u3092\u3042\u308c\u3053\u308c\u4f5c\u308a\u3001\u81ea\u5206\u304c\u4f5c\u3063\u3066\u3044\u308bSphinx\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3078\u30c9\u30c3\u30b0\u30d5\u30fc\u30c7\u30a3\u30f3\u30b0\u3059\u308b\u65e5\u3005\u3002", "public_name": "Kazuya Takei (attakei)", "guid": "d69abad8-07ce-5f6c-8661-563c25e72db7", "url": "https://pretalx.com/pyconapac2023/speaker/CZRYKK/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/KQQ3CU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/KQQ3CU/", "attachments": []}, {"guid": "096df960-298e-585b-acea-2e35f6217a5a", "code": "PSZB3R", "id": 33098, "logo": null, "date": "2023-10-27T14:20:00+09:00", "start": "14:20", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33098-pants--python-monorepo", "url": "https://pretalx.com/pyconapac2023/talk/PSZB3R/", "title": "Pants \u3067\u306f\u3058\u3081\u308b Python Monorepo", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Monorepo \u3068\u306f\u8907\u6570\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3084\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3001\u30ea\u30bd\u30fc\u30b9\u3092\u5206\u5272\u305b\u305a\u306b\u5168\u3066\u3092 1 \u3064\u306e\u30ea\u30dd\u30b8\u30c8\u30ea\u3067\u7ba1\u7406\u3059\u308b\u30ea\u30dd\u30b8\u30c8\u30ea\u69cb\u6210\u306e\u3053\u3068\u3067\u3059\u3002Monorepo \u3092\u63a1\u7528\u3059\u308b\u3053\u3068\u3067\u30b3\u30fc\u30c9\u306e\u5171\u6709\u304c\u5bb9\u6613\u306b\u306a\u308a\u3001\u30b3\u30fc\u30c9\u306e\u91cd\u8907\u3092\u6e1b\u3089\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u7d71\u4e00\u7684\u306a\u7ba1\u7406\u306b\u3088\u308a\u30b3\u30fc\u30c9\u54c1\u8cea\u3082\u4e00\u5b9a\u4fdd\u3066\u308b\u305f\u3081\u30c1\u30fc\u30e0\u958b\u767a\u3068\u76f8\u6027\u304c\u826f\u304f\u3001\u3046\u307e\u304f\u6d3b\u7528\u3059\u308b\u3053\u3068\u3067\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u6027\u3084\u958b\u767a\u8005\u4f53\u9a13\u3092\u5411\u4e0a\u3067\u304d\u307e\u3059\u3002\n\n\u30d3\u30eb\u30c9\u30b7\u30b9\u30c6\u30e0\u306e Pants \u306f Python \u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u304a\u308a\u3001CADDi \u3067\u306f\u30b5\u30fc\u30d0\u30fc\u30b5\u30a4\u30c9\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u3084\u6a5f\u68b0\u5b66\u7fd2\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306a\u3069\u3092 Monorepo \u3067\u7ba1\u7406\u3057\u3066\u3044\u307e\u3059\u3002\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001Pants \u306e\u6d3b\u7528\u65b9\u6cd5\u3068 CADDi \u306e Monorepo \u79fb\u884c\u30fb\u904b\u7528\u306b\u3088\u3063\u3066\u5f97\u3089\u308c\u305f\u77e5\u898b\u3092\u5171\u6709\u3057\u307e\u3059\u3002", "description": "## \u6982\u8981\n\nMonorepo \u3067\u7ba1\u7406\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u958b\u767a\u306b\u5fc5\u8981\u306a\u30ea\u30bd\u30fc\u30b9\u304c\u5168\u3066 1 \u3064\u306e\u5834\u6240\u306b\u96c6\u7d04\u3055\u308c\u3001\u30ea\u30dd\u30b8\u30c8\u30ea\u306b\u95a2\u308f\u308b\u5168\u54e1\u304c\u5171\u901a\u306e\u958b\u767a\u30d7\u30ed\u30bb\u30b9\u3084\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3067\u304d\u307e\u3059\u3002\u3053\u308c\u306b\u3088\u308a\u30ea\u30f3\u30bf\u30fc\u3001\u30d5\u30a9\u30fc\u30de\u30c3\u30bf\u30fc\u3001\u30c6\u30b9\u30c8\u3001CI/CD \u306a\u3069\u306e\u958b\u767a\u30c4\u30fc\u30eb\u306e\u7d71\u4e00\u304c\u5bb9\u6613\u306b\u306a\u308a\u307e\u3059\u3002\u8eca\u8f2a\u306e\u518d\u767a\u660e\u3092\u6e1b\u3089\u3057\u3001\u30b3\u30fc\u30c9\u54c1\u8cea\u3082\u4e00\u5b9a\u306b\u4fdd\u3066\u308b Monorepo \u306f\u30c1\u30fc\u30e0\u958b\u767a\u3068\u76f8\u6027\u304c\u826f\u304f\u3001\u3046\u307e\u304f\u6d3b\u7528\u3059\u308b\u3053\u3068\u3067\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u6027\u3084\u958b\u767a\u8005\u4f53\u9a13\u3092\u5411\u4e0a\u3067\u304d\u307e\u3059\u3002\n\n### Monorepo \u306b\u304a\u3051\u308b\u8ab2\u984c\n\nMonorepo \u3092\u63a1\u7528\u3059\u308b\u4e0a\u3067\u4f9d\u5b58\u95a2\u4fc2\u306e\u7ba1\u7406\u3084\u5dee\u5206\u691c\u77e5\u3068\u3044\u3063\u305f\u8ab2\u984c\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u3053\u308c\u3089\u306f\u30d3\u30eb\u30c9\u30b7\u30b9\u30c6\u30e0\u306b\u3088\u3063\u3066\u89e3\u6c7a\u3067\u304d\u307e\u3059\u3002\n\n- \u4f9d\u5b58\u95a2\u4fc2: \u30ea\u30dd\u30b8\u30c8\u30ea\u5185\u306e\u4f9d\u5b58\u3092\u660e\u793a\u7684\u306b\u8a18\u8ff0\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u304c\u3001Pants \u306f\u4f9d\u5b58\u95a2\u4fc2\u3092\u63a8\u6e2c\u3059\u308b\u6a5f\u80fd\u304c\u3042\u308b\u305f\u3081\u4f9d\u5b58\u95a2\u4fc2\u306e\u8a18\u8ff0\u3092\u30b7\u30f3\u30d7\u30eb\u306b\u3067\u304d\u307e\u3059\u3002\n- \u5dee\u5206\u691c\u77e5: Monorepo \u306b\u306f\u8907\u6570\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c\u5b58\u5728\u3057\u3001\u6bce\u56de\u306e CI \u5b9f\u884c\u3067\u5909\u66f4\u3068\u95a2\u4fc2\u306a\u3044\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u307e\u3067\u30c6\u30b9\u30c8\u3059\u308b\u3068\u6642\u9593\u3068\u304a\u91d1\u304c\u304b\u304b\u308a\u307e\u3059\u3002\u4e00\u65b9\u3067\u3001\u5909\u66f4\u306b\u3088\u3063\u3066\u5f71\u97ff\u3092\u53d7\u3051\u308b\u30b3\u30fc\u30c9\u304c\u30c6\u30b9\u30c8\u3055\u308c\u306a\u304b\u3063\u305f\u5834\u5408\u3001\u30b3\u30fc\u30c9\u304c\u58ca\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u691c\u77e5\u3067\u304d\u305a\u5e83\u7bc4\u56f2\u306b\u5f71\u97ff\u3092\u53ca\u307c\u3059\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002Pants \u306f\u5dee\u5206\u691c\u77e5\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308b\u306e\u3067\u3001\u5909\u66f4\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30eb\u306e\u307f\u3092\u5bfe\u8c61\u306b\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002\n- \u5b9f\u884c: \u30b3\u30f3\u30d1\u30a4\u30eb\u3092\u3057\u3066\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u8a00\u8a9e\u3067\u3042\u308c\u3070\u3001\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3092\u30b3\u30f3\u30c6\u30ca\u74b0\u5883\u306a\u3069\u306b\u914d\u7f6e\u3057\u5b9f\u884c\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u3057\u304b\u3057\u3001Python \u306f\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u307e\u305b\u3093\u3002\u5b9f\u884c\u306b\u5fc5\u8981\u306a\u30d5\u30a1\u30a4\u30eb\u3092\u624b\u52d5\u3067\u9078\u629e\u3057\u3066\u914d\u7f6e\u3057\u306a\u304f\u3066\u3044\u3044\u3088\u3046\u306b\u3001Pants \u306f pex \u3068\u3044\u3046 Python \u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3059\u308b\u30c4\u30fc\u30eb\u3092\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u307e\u3059\u3002\u3053\u308c\u306b\u3088\u308a\u4f9d\u5b58\u3059\u308b\u30bd\u30fc\u30b9\u304b\u3089\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u3092\u751f\u6210\u3057\u3066\u30b3\u30f3\u30c6\u30ca\u74b0\u5883\u306a\u3069\u3067\u5b9f\u884c\u3067\u304d\u307e\u3059\u3002\n\n## \u4e88\u5b9a\u7a3f\n\n- \u81ea\u5df1\u7d39\u4ecb\n- \u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u306e\u6982\u8981\n- Monorepo \u3068 Polyrepo \u306b\u3064\u3044\u3066\n  - \u305d\u308c\u305e\u308c\u306e\u7279\u5fb4\n  - \u30e1\u30ea\u30c3\u30c8\u30fb\u30c7\u30e1\u30ea\u30c3\u30c8\n\n- Pants \u306b\u3064\u3044\u3066\n  - Pants \u306e\u6982\u8981\n    - Pants \u306e\u7279\u5fb4\n    - Pants \u304c\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308b\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u8a00\u8a9e\u3068\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u30fb\u30c4\u30fc\u30eb\n\n- Pants \u3092\u4f7f\u3063\u305f Monorepo \u306e\u306f\u3058\u3081\u304b\u305f\n  - \u30d5\u30a9\u30fc\u30de\u30c3\u30bf\u30fc\u3001\u30ea\u30f3\u30bf\u30fc\u306e\u9759\u7684\u89e3\u6790\n    - Pants \u304c\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308b\u9759\u7684\u89e3\u6790\u306b\u3064\u3044\u3066\n  - \u30c6\u30b9\u30c8\n    - shard\u5206\u5272\n  - \u5dee\u5206\u5b9f\u884c\n  - \u30ea\u30e2\u30fc\u30c8\u30ad\u30e3\u30c3\u30b7\u30e5\n  - \u4f9d\u5b58\u95a2\u4fc2\u306e\u7ba1\u7406\n    - 3rd party \u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u4f9d\u5b58\u7ba1\u7406\n    - Monorepo \u5185\u306e\u4f9d\u5b58\u7ba1\u7406\n  - pex \u306b\u3064\u3044\u3066\n    - 3rd party \u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u4f9d\u5b58\u306e\u5185\u5305\n    - Docker\u3068\u306e\u9023\u643a\n  - \u4f9d\u5b58\u306e\u7981\u6b62\u30fb\u8a31\u53ef\n  - \u30ea\u30dd\u30b8\u30c8\u30ea\u4f9d\u5b58\u95a2\u4fc2\u306e\u7d71\u4e00\n- \u307e\u3068\u3081\n\n## \u8a71\u3055\u306a\u3044\u3053\u3068\n\n- Bazel \u3084 Buck2\u3001Moon\u3001NX \u3068\u3044\u3063\u305f Pants \u4ee5\u5916\u306e\u30d3\u30eb\u30c9\u30b7\u30b9\u30c6\u30e0\u306e\u8a73\u7d30", "recording_license": "", "do_not_record": false, "persons": [{"code": "LPTMFV", "name": "Koki Nishihara", "avatar": "https://pretalx.com/media/avatars/LPTMFV_Z3s1yK6.webp", "biography": "CADDi AI Team Tech Lead\n- MLOps\u306e\u63a8\u9032\n- \u6a5f\u68b0\u5b66\u7fd2\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306e\u958b\u767a\u30fb\u6539\u5584\u3084\u30b5\u30fc\u30d3\u30f3\u30b0\u652f\u63f4\n- Monorepo\u306e\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9", "public_name": "Koki Nishihara", "guid": "fc0411f8-2ec0-5203-ac80-523bd2f80a05", "url": "https://pretalx.com/pyconapac2023/speaker/LPTMFV/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/PSZB3R/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/PSZB3R/", "attachments": []}, {"guid": "fa2022ce-e9c7-5722-95c0-390e93a2bbb4", "code": "GJJGPS", "id": 33225, "logo": null, "date": "2023-10-27T15:30:00+09:00", "start": "15:30", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33225-django-orm", "url": "https://pretalx.com/pyconapac2023/talk/GJJGPS/", "title": "Django ORM\u9053\u5834\uff1a\u30af\u30a8\u30ea\u306e\u57fa\u672c\u3092\u62bc\u3055\u3048\uff0c\u3088\u308a\u826f\u3044\u578b\u3092\u8eab\u306b\u4ed8\u3051\u3088\u3046", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "Django ORM\u306fSQL\u306e\u77e5\u8b58\u304c\u306a\u304f\u3066\u3082\u3042\u308b\u7a0b\u5ea6\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u64cd\u4f5c\u304c\u3067\u304d\u308b\u4fbf\u5229\u306a\u6280\u8853\u3067\u3059\u304c\u3001\u305d\u306e\u77e5\u8b58\u3060\u3051\u3067DB\u64cd\u4f5c\u3092\u3057\u3066\u3044\u308b\u3068\u3001\u6c17\u304c\u3064\u304b\u306a\u3044\u3046\u3061\u306b\u3068\u3066\u3082\u52b9\u7387\u306e\u60aa\u3044\u5b9f\u88c5\u3092\u3057\u3066\u3057\u307e\u3044\u307e\u3059\u3002Web\u958b\u767a\u304b\u3089\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3092\u59cb\u3081\u305f\u4eba\u306fWeb\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3092\u4f7f\u3063\u3066\u3057\u3070\u3089\u304f\u3057\u3066\u304b\u3089DB\u306b\u95a2\u5fc3\u3092\u6301\u3064\u3088\u3046\u306b\u306a\u308b\u3001\u4f55\u306a\u3089DB\u306e\u3053\u3068\u306f\u3042\u307e\u308a\u8003\u3048\u305f\u304f\u306a\u3044\u3001\u3068\u3044\u3046\u65b9\u3082\u591a\u3044\u306e\u3067\u306f\u306a\u3044\u3067\u3057\u3087\u3046\u304b\u3002\u3053\u306eDjango ORM\u9053\u5834\u3067\u306f\u3001\u305d\u3093\u306a\u300cDjango ORM\u3042\u308b\u3042\u308b\u300d\u3092\u6b63\u3057\u3001\u672c\u6765\u3084\u308a\u305f\u304b\u3063\u305f\u306f\u305a\u306e\u51e6\u7406\u3092\u52b9\u7387\u826f\u304f\u884c\u3046\u3053\u3068\u304c\u3067\u304d\u308b\u3088\u3046\u3001\u57fa\u672c\u306e\u578b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002", "description": "\u672c\u30c8\u30fc\u30af\u3067\u306f\u3001Django\u306b\u5185\u8535\u3055\u308c\u3066\u3044\u308bDjango ORM\u306b\u3088\u308b\u30c7\u30fc\u30bf\u53d6\u5f97\u64cd\u4f5c\u3092\u6271\u3063\u3066\u3044\u304d\u307e\u3059\u3002\u307b\u304b\u306e\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u8a00\u8a9e\u3084\u3001\u307b\u304b\u306eWeb\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u306f\u8a73\u7d30\u306f\u7570\u306a\u308a\u307e\u3059\u304c\u3001\u57fa\u672c\u7684\u306a\u8003\u3048\u65b9\u306f\u5e83\u304f\u4f7f\u3048\u308b\u306f\u305a\u3067\u3059\u3002\n\u30b9\u30dd\u30fc\u30c4\u3067\u3042\u308c\u3070\u93e1\u3092\u898b\u306a\u304c\u3089\u30c8\u30ec\u30fc\u30cb\u30f3\u30b0\u3057\u305f\u308a\u3001\u52d5\u753b\u3092\u64ae\u3063\u3066\u81ea\u5206\u306e\u52d5\u304d\u3084\u30d5\u30a9\u30fc\u30e0\u3092\u898b\u306a\u304c\u3089\u7df4\u7fd2\u3057\u307e\u3059\u3002\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u958b\u767a\u3082\u540c\u3058\u3067\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u5b9f\u884c\u7d50\u679c\u3092\u6700\u5f8c\u307e\u3067\u78ba\u8a8d\u305b\u305a\u306b\u30b3\u30fc\u30c9\u3092\u66f8\u304f\u3053\u3068\u306f\u307b\u3068\u3093\u3069\u3042\u308a\u307e\u305b\u3093\u3002ORM\u30af\u30a8\u30ea\u306e\u5834\u5408\u3001\u300c\u671f\u5f85\u3059\u308b\u5024\u304c\u53d6\u308c\u305f\u304b\u300d\u306b\u6ce8\u76ee\u3057\u3066\u3057\u307e\u3044\u304c\u3061\u3067\u3059\u304c\u3001\u300cORM\u30af\u30a8\u30ea\u304c\u767a\u884c\u3059\u308bSQL\u6587\u300d\u3092\u3088\u304f\u89b3\u5bdf\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u8a66\u5408\u306e\u7d50\u679c\uff08\u5b9f\u884c\u7d50\u679c\u3084\u51e6\u7406\u901f\u5ea6\uff09\u3060\u3051\u898b\u308b\u306e\u3067\u306f\u306a\u304f\u3001\u305d\u3053\u306b\u81f3\u308b\u904e\u7a0b\u3068\u3057\u3066\u306e\u30d5\u30a9\u30fc\u30e0\uff08SQL\u6587\uff09\u3092\u89b3\u5bdf\u3057\u3066\u78e8\u3044\u3066\u3044\u304f\u3053\u3068\u304c\u5927\u4e8b\u3067\u3059\u3002\n\u672c\u30c8\u30fc\u30af\u3067\u306f\u3001\u9053\u5834\u4e3b\uff08\u30b3\u30f3\u30b5\u30eb\u30bf\u30f3\u30c8\uff09\u306e\u7acb\u5834\u304b\u3089\u300cORM\u5229\u7528\u306e3\u3064\u306e\u57fa\u672c\u300d\u3092\u62bc\u3055\u3048\u3001\u6df7\u4e71\u3057\u3066\u3057\u307e\u3063\u305fDjango ORM\u30b3\u30fc\u30c9\u3092\u30b9\u30c3\u30ad\u30ea\u3055\u305b\u308b\u65b9\u6cd5\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u30a2\u30b8\u30a7\u30f3\u30c0\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\n\n\u30fb\u81ea\u5df1\u7d39\u4ecb\u3068\u3001\u3053\u306e\u30c8\u30fc\u30af\u306e\u80cc\u666f\uff083\u5206\uff09\n\u30fb\u3053\u306eORM\u3001\u3069\u3093\u306aSQL\u3092\u5b9f\u884c\u3057\u3066\u3044\u308b\u306e\uff1f\uff083\u5206\uff09\n\u30fb\u57fa\u672c1\uff1a\u5b9f\u884c\u3057\u3066\u3044\u308bSQL\u3092\u3044\u3064\u3082\u78ba\u8a8d\u3057\u3088\u3046\uff085\u5206\uff09\n\u30fb\u57fa\u672c2\uff1a\u610f\u56f3\u3057\u306a\u3044\u30bf\u30a4\u30df\u30f3\u30b0\u3067\u306eSQL\u767a\u884c\u3092\u907f\u3051\u3088\u3046\uff087\u5206\uff09\n\u30fb\u57fa\u672c3\uff1a\u7406\u60f3\u306eSQL\u304b\u3089ORM\u3092\u7d44\u3082\u3046\uff087\u5206\uff09\n\u30fb\u307e\u3068\u3081\u3068\u8cea\u7591\u5fdc\u7b54\uff085\u5206\uff09", "recording_license": "", "do_not_record": false, "persons": [{"code": "KWTR93", "name": "Takayuki Shimizukawa", "avatar": "https://pretalx.com/media/avatars/KWTR93_sspFJG2.webp", "biography": "\u30fb\u6240\u5c5e\n  \u30fbBeProud\n  \u30fb\u4e00\u822c\u793e\u56e3\u6cd5\u4ebaPyCon JP Association \u4f1a\u8a08\u7406\u4e8b\n\u30fb\u30a4\u30d9\u30f3\u30c8\u95a2\u9023\n  \u30fbPyCamp \u8b1b\u5e2b\n  \u30fbPython mini hack-a-thon\u4e3b\u50ac\n  \u30fbSphinx-Users.jp \u904b\u55b6\n\u30fbSphinx\u306e\u30b3\u30df\u30c3\u30bf\u30fc\n\u30fbTwitter: @shimizukawa( https://twitter.com/shimizukawa )\n\u30fbURL: http://\u6e05\u6c34\u5ddd.jp/", "public_name": "Takayuki Shimizukawa", "guid": "a3219c7d-acc9-5bb0-9166-9c43e7bb7f93", "url": "https://pretalx.com/pyconapac2023/speaker/KWTR93/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/GJJGPS/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/GJJGPS/", "attachments": []}, {"guid": "e38759bb-7d0f-5179-aad5-6f2f707f3720", "code": "FQLVVU", "id": 33135, "logo": null, "date": "2023-10-27T16:10:00+09:00", "start": "16:10", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33135-python-social-auth--twitter-oauth-api", "url": "https://pretalx.com/pyconapac2023/talk/FQLVVU/", "title": "\u5b9f\u9332 Python Social Auth \u306e Twitter OAuth API\u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3068\u305d\u306e\u6559\u8a13", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "\u30bd\u30fc\u30b7\u30e3\u30eb\u30ed\u30b0\u30a4\u30f3\u6a5f\u80fd\u306f\u3001Web\u30b5\u30fc\u30d3\u30b9\u306e\u8a8d\u8a3c\u65b9\u6cd5\u3068\u3057\u3066\u5e83\u304f\u5229\u7528\u3055\u308c\u3066\u304a\u308a\u3001Python Social Auth\u306a\u3069\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u3053\u306e\u6a5f\u80fd\u3092\u5bb9\u6613\u306b\u5b9f\u88c5\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u4e00\u65b9\u3067\u3001\u5916\u90e8\u30b5\u30fc\u30d3\u30b9\u306b\u4f9d\u5b58\u3059\u308b\u3068\u3044\u3046\u6027\u8cea\u4e0a\u3001\u5916\u90e8\u8981\u56e0\u306b\u3088\u3063\u3066\u30b7\u30b9\u30c6\u30e0\u306e\u5909\u66f4\u304c\u5fc5\u8981\u306b\u306a\u308b\u30ea\u30b9\u30af\u304c\u3042\u308b\u306e\u3082\u4e8b\u5b9f\u3067\u3059\u3002\u5b9f\u969b\u30012023\u5e742\u6708\u306b\u306fTwitter\u304c\u65e7API\u306e\u5ec3\u6b62\u3092\u767a\u8868\u3057\u3001\u591a\u304f\u306eWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u5f71\u97ff\u3092\u53d7\u3051\u307e\u3057\u305f\u3002\n\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u5b9f\u969b\u306b\u884c\u3063\u305f\u300cPython Social Auth \u306e Twitter OAuth API \u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u300d\u3092\u632f\u308a\u8fd4\u308a\u306a\u304c\u3089\u3001\u5177\u4f53\u7684\u306a\u5bfe\u5fdc\u7b56\u3084\u30bd\u30fc\u30b7\u30e3\u30eb\u30ed\u30b0\u30a4\u30f3\u6a5f\u80fd\u306e\u69cb\u7bc9\u306b\u95a2\u3059\u308bTips\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\u30e6\u30fc\u30b6\u30fc\u3078\u306e\u5f71\u97ff\u3092\u51fa\u3057\u3066\u3057\u307e\u3063\u305f\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u3082\u3042\u308a\u307e\u3059\u304c\u3001\u5f97\u3089\u308c\u305f\u6559\u8a13\u3092\u5171\u6709\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002", "description": "### \u4e88\u5b9a\u7a3f\n\n- \u81ea\u5df1\u7d39\u4ecb\n- \u6982\u8981\u8aac\u660e\n- \u524d\u63d0\u77e5\u8b58\u306e\u5171\u6709\n  - \u30bd\u30fc\u30b7\u30e3\u30eb\u30ed\u30b0\u30a4\u30f3\u306b\u3064\u3044\u3066\n  - Python Social Auth\u306b\u3064\u3044\u3066\n- Twitter API \u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u7d4c\u7def\n  - LAPRAS(\u984c\u6750\u3068\u306a\u308b\u30b7\u30b9\u30c6\u30e0\u306e\u7d39\u4ecb)\n  - 2023\u306e\u767a\u8868\u304b\u3089\u3001\u5f71\u97ff\u8abf\u67fb\u3001\u5bfe\u5fdc\u65b9\u91dd\u6c7a\u5b9a\u306a\u3069\n- \u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u8ab2\u984c\u3068\u5bfe\u5fdc\u65b9\u6cd5\n  - Python Social Auth\u306e\u5185\u90e8\u69cb\u9020\n  - \u904b\u7528\u4e2d\u306e\u30b5\u30fc\u30d3\u30b9\u306e\u8a8d\u8a3c/\u8a8d\u53ef\u30d7\u30ed\u30d0\u30a4\u30c0\u3092\u5909\u66f4\u3059\u308b\u3053\u3068\u306b\u3088\u308b\u8ab2\u984c\n    - \u8ab2\u984c1 - \u540c\u3058\u30e6\u30fc\u30b6\u3067\u3082\u8a8d\u8a3c(\u8a8d\u53ef)\u30d7\u30ed\u30d0\u30a4\u30c0\u304c\u7570\u306a\u308b\u3068\u5225\u4eba\u3068\u3057\u3066\u6271\u308f\u308c\u308b\n    - \u8ab2\u984c2 - \u30b5\u30fc\u30d3\u30b9\u540d\u3068Provider\u540d\u304c\u4e00\u81f4\u3057\u306a\u304f\u306a\u308b\n  - \u79fb\u884c\u4f5c\u696d\u306e\u6ce8\u610f\u70b9\n- \u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u7d50\u679c\n- \u5b66\u3073(\u30b7\u30b9\u30c6\u30e0\u9762, \u904b\u7528\u9762)\n  - \u30b7\u30b9\u30c6\u30e0\u9762\n    - Provider\u540d\u3092\u30b5\u30fc\u30d3\u30b9\u540d\u3068\u3057\u3066\u76f4\u63a5\u4f7f\u7528\u3057\u306a\u3044\n    - Provider\u3068SNS\u306e\u95a2\u4fc2\u30921:1\u3092\u524d\u63d0\u3068\u3057\u306a\u3044\n  - \u6700\u60aa\u3092\u60f3\u5b9a\u3057\u3066\u8a08\u753b\u3092\u7acb\u3066\u308b\n  - \u8a08\u753b\u306e\u524d\u63d0\u306b\u3057\u3066\u3044\u308b\u4e8b\u5b9f\u3092\u660e\u78ba\u306b\u3057\u3066\u304a\u304f\n- \u307e\u3068\u3081", "recording_license": "", "do_not_record": false, "persons": [{"code": "8ZQEFE", "name": "Takanori Koroki / rocky_manobi", "avatar": "https://pretalx.com/media/avatars/8ZQEFE_2fzJbGl.webp", "biography": "LAPRAS\u682a\u5f0f\u4f1a\u793e\u306eCTO\u3068\u3057\u3066\u3001\u81ea\u793e\u30b5\u30fc\u30d3\u30b9(LAPRAS\u3084 LAPRAS SCOUT) \u306e\u958b\u767a\u30fb\u904b\u7528\u306b\u643a\u308f\u3063\u3066\u3044\u307e\u3059\u3002\n\nProfile: https://lapras.com/public/rocky_manobi", "public_name": "Takanori Koroki / rocky_manobi", "guid": "c087e79f-88e5-52b6-bd75-06064ffe94b7", "url": "https://pretalx.com/pyconapac2023/speaker/8ZQEFE/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/FQLVVU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/FQLVVU/", "attachments": []}], "track 5": [{"guid": "728f0dcc-6a65-5c5b-b69f-bc6e78bf60ba", "code": "MBSPYH", "id": 33223, "logo": null, "date": "2023-10-27T12:05:00+09:00", "start": "12:05", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-33223", "url": "https://pretalx.com/pyconapac2023/talk/MBSPYH/", "title": "\u597d\u304d\u3068\u304b\u5acc\u3044\u3068\u304b\u306f\u3044\u3044\u3001\u7df4\u7fd2\u3057\u3066\u30c6\u30b9\u30c8\u3092\u66f8\u3051\u308b\u3088\u3046\u306b\u306a\u308b\u3093\u3060", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "\u203b\u672c\u767a\u8868\u306f\u3001\u65e5\u672c\u8a9e\u8cc7\u6599\uff08Japanese slide\uff09\u30fb **English talk** \u3067\u3059\n\n---\n\n\u300c\u30c6\u30b9\u30c8\u306f\u4e0d\u5b89\u3092\u9000\u5c48\u306b\u5909\u3048\u308b\u8ce2\u8005\u306e\u77f3\u3060\u300d\uff08\u30b1\u30f3\u30c8\u30fb\u30d9\u30c3\u30af\u300e\u30c6\u30b9\u30c8\u99c6\u52d5\u958b\u767a\u300f\uff09\n\n\u3053\u308c\u306f\u305d\u306e\u901a\u308a\u3067\u79c1\u306f\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u304c\u66f8\u3051\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u3053\u3068\u3067\u3001\u5927\u304d\u304fPython\u306e\u529b\u304c\u3064\u3044\u305f\u3068\u611f\u3058\u3066\u3044\u307e\u3059\u3002\n\u904e\u53bb\u306e\u79c1\u306f\u30c6\u30b9\u30c8\u304c\u66f8\u3051\u305a\u3001\u81ea\u5206\u306e\u66f8\u3044\u305f\u30b3\u30fc\u30c9\u3092\u5909\u66f4\u3059\u308b\u305f\u3073\u306b\u300c\u3069\u3053\u304b\u58ca\u3057\u3066\u3044\u308b\u3093\u3058\u3083\u306a\u3044\u304b\u300d\u3068\u3044\u3046\u4e0d\u5b89\u306b\u82db\u307e\u308c\u3001\u300c\u58ca\u308c\u3066\u3044\u307e\u305b\u3093\u3088\u3046\u306b\u300d\u3068\u7948\u3063\u3066\u304d\u307e\u3057\u305f\u3002\n\u305d\u308c\u304c\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u304c\u3042\u308b\u3068\u3001\u7948\u308b\u5fc5\u8981\u304c\u306a\u304f\u306a\u308b\u306e\u3067\u3059\uff01\n\n\u81ea\u8ee2\u8eca\u306b\u4e57\u308c\u308b\u3088\u3046\u306b\u306a\u308b\u306e\u3068\u540c\u69d8\u3067\u3001\u8ab0\u3057\u3082\u6700\u521d\u306f\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u3092\u601d\u3046\u3088\u3046\u306b\u306f\u66f8\u3051\u307e\u305b\u3093\u3002\n\u3053\u306e\u30c8\u30fc\u30af\u3092\u304d\u3063\u304b\u3051\u306b\u30c6\u30b9\u30c8\u3092 practice, practice, practice!!!", "description": "\u4eca\u5e74\u306ePyCon JP\u306f\u300cPython \u521d\u5fc3\u8005\u300d\u304c\u30ad\u30fc\u30ef\u30fc\u30c9\u306e1\u3064\u306e\u3088\u3046\u306b\u601d\u3044\u307e\u3059\u3002  \nPython\u521d\u5fc3\u8005\u306b\u5bfe\u3057\u3066\u3001\u521d\u5fc3\u8005\u6642\u4ee3\u306e\u79c1\u306b\u4e00\u756a\u30aa\u30b9\u30b9\u30e1\u3057\u305f\u3044\u77e5\u898b\u300c\u30c6\u30b9\u30c8\u3092\u66f8\u3053\u3046\u300d\u3092\u5171\u6709\u3057\u307e\u3059\u3002\n\n\u521d\u5fc3\u8005\u6642\u4ee3\u306e\u79c1\u306fPython\u306e\u95a2\u6570\u3084\u30af\u30e9\u30b9\u3092\u5f8c\u304b\u3089\u5909\u66f4\u3057\u3084\u3059\u304f\u66f8\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\uff08\u4eca\u3067\u3082\u5c11\u3057\u524d\u306e\u30b3\u30fc\u30c9\u3092\u307f\u308b\u3068\u4f38\u3073\u3057\u308d\u3057\u304b\u306a\u3044\u306a\u3068\u611f\u3058\u307e\u3059\uff09\u3002  \n\u3081\u3061\u3083\u3081\u3061\u3083\u9054\u4eba\u306e\u3088\u3046\u306b\u601d\u3048\u308b\u958b\u767a\u8005\uff08\u5192\u982d\u3067\u5f15\u3044\u305f\u30b1\u30f3\u30c8\u30fb\u30d9\u30c3\u30af\uff09\u3067\u3082\u3001\u4e00\u767a\u3067\u8981\u4ef6\u306b\u5408\u81f4\u3059\u308b\u5909\u66f4\u3057\u3084\u3059\u3044\u30b3\u30fc\u30c9\u306f\u66f8\u3051\u306a\u3044\u3088\u3046\u3067\u3059\u3002  \n\u306a\u306e\u3067\u3001\u4e00\u767a\u3067\u66f8\u304f\u3068\u3044\u3046\u5e7b\u60f3\u306f\u6368\u3066\u3066\u3001\u3061\u3087\u3063\u3068\u305a\u3064\u4fee\u6b63\u3057\u3066\u3044\u304f\u3068\u3044\u3046\u30a2\u30d7\u30ed\u30fc\u30c1\u306b\u5207\u308a\u66ff\u3048\u307e\u3057\u305f\u3002\n  \n\u3053\u3053\u3067\u6709\u7528\u306a\u306e\u304c\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u3067\u3059\u3002 \n\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u304c\u306a\u3044\u5834\u5408\u3001\u5909\u66f4\u3057\u305f\u5f8c\u306f\u624b\u52d5\u3067\u632f\u308b\u821e\u3044\u304c\u5909\u308f\u3063\u3066\u3044\u306a\u3044\u304b\u78ba\u8a8d\u3057\u306a\u3044\u3068\u3044\u3051\u307e\u305b\u3093\u3002  \n\u4f55\u5ea6\u3082\u624b\u52d5\u3067\u78ba\u8a8d\u3059\u308b\u306e\u306f\u5927\u5909\u3067\u3059\u304c\u3001\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u304c\u3053\u308c\u3092\u89e3\u6c7a\u3057\u3066\u304f\u308c\u307e\u3059\u3002  \n\u5b9f\u4f53\u9a13\u304b\u3089\u3001\u632f\u308b\u821e\u3044\u3092\u5909\u3048\u305a\u306b\u65e2\u5b58\u306e\u30b3\u30fc\u30c9\u3092\u5909\u3048\u3066\u3044\u304f\uff08\u4f8b\uff1a\u65b0\u3057\u304f\u77e5\u3063\u305f\u6587\u6cd5\u77e5\u8b58\u3092\u7df4\u7fd2\u3057\u3066\u307f\u308b\uff09\u3053\u3068\u3067\u3001Python\u306e\u529b\u304c\u4f38\u3073\u308b\u3068\u601d\u3044\u307e\u3059\u3002\n\n\u3053\u306e\u30c8\u30fc\u30af\u3092\u304d\u3063\u304b\u3051\u306b\u30c6\u30b9\u30c8\u3092\u66f8\u3051\u308b\u3088\u3046\u306b\u306a\u308a\u3001Python\u306e\u529b\u304c\u3050\u3093\u3050\u3093\u4f38\u3073\u3066\u3001\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u516c\u958b\u3057\u3066\u307f\u3088\u3046\u3068\u6311\u6226\u3055\u308c\u308b\u65b9\u304c\u3044\u3089\u3063\u3057\u3083\u3063\u305f\u3089\u3053\u3093\u306a\u306b\u3046\u308c\u3057\u3044\u3053\u3068\u306f\u3042\u308a\u307e\u305b\u3093\u3002\n\n\u4ee5\u4e0b\u304c\u69cb\u6210\u3067\u3059\u3002\n\n- \u81ea\u5df1\u7d39\u4ecb 1\u5206\n- \u306a\u305c\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u304c\u66f8\u3051\u308b\u3068\u3044\u3044\u306e\u304b 3\u5206\n- doctest 7\u5206\n  - \u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\n  - tips: repr\u306e\u4e00\u81f4\n- unittest 9\u5206\n  - pytest\u3068\u540c\u3058\u5185\u5bb9\u3092unittest\u3067\u7d39\u4ecb\u3057\u307e\u3059\n- pytest 9\u5206\n  - \u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\n  - parametrized test\n  - \u30e2\u30c3\u30af\n- \u307e\u3068\u30811\u5206", "recording_license": "", "do_not_record": false, "persons": [{"code": "UM3CWP", "name": "nikkie", "avatar": "https://pretalx.com/media/avatars/UM3CWP_7MVjMTx.webp", "biography": "\u306b\u3063\u304d\u30fc\u3067\u3059\n\nNikkie began his career as a software engineer in 2016.  \nHe started Python as a hobby in 2017 and fell in love with it.  \nHe is engaged in Natural Language Processing as a data scientist at Uzabase, inc. Tokyo, Japan from 2019.\n\nHe is working on the Python community in Japan as a staff of the following event:\n\n- [Start Python Club](https://startpython.connpass.com/) (online, monthly)\n- [PyCon Japan](https://www.pycon.jp/organizer/index.html): the largest PyCon in Japan\n  - core staff on 2019 and 2020 (Program committee, lead on 2020)\n  - [chair](https://pyconjp.blogspot.com/2020/10/pyconjp-2021-chair.html) on 2021\n\nHe gave talks at many PyCons in Japan and abroad.\n\n- PyCon JP [2019](https://pycon.jp/2019/schedule/?sessionId=220), [2020](https://pycon.jp/2020/timetable/?id=203919), [2022](https://2022.pycon.jp/timetable?id=LPYF7C) (Japanese)\n- [EuroPython 2020](https://ep2020.europython.eu/talks/CvdM2Qa-bringing-your-python-script-to-more-users/), [PyCon Africa 2020](https://africa.pycon.org/speakers/nikkie#talk), [PyCon APAC 2020](https://youtu.be/JiXnEA7pM7U) [2022](https://youtu.be/0DiDUrhhU30) (English)\n\nHe loves anime (Japanese animetation) as much as Python, and implements ideas related to some anime with Python.", "public_name": "nikkie", "guid": "55d6f1d4-83e9-598c-80ab-95b3ba5a6398", "url": "https://pretalx.com/pyconapac2023/speaker/UM3CWP/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/MBSPYH/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/MBSPYH/", "attachments": []}, {"guid": "c19c5753-8aed-5d66-94ba-b3dc788de31b", "code": "8XZDC7", "id": 33197, "logo": null, "date": "2023-10-27T13:40:00+09:00", "start": "13:40", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-33197-python", "url": "https://pretalx.com/pyconapac2023/talk/8XZDC7/", "title": "Python\u306f\u3069\u306e\u3088\u3046\u306b\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068\u7e4b\u304c\u308b\u306e\u304b", "subtitle": "", "track": "Web programming", "type": "15 Minute Talk", "language": "en", "abstract": "Web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u3067\u4f55\u6c17\u306a\u304f\u4f7f\u3063\u3066\u3044\u308bO/R\u30de\u30c3\u30d1\u30fc\u3084\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30a2\u30c0\u30d7\u30bf\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u306f\u3068\u3066\u3082\u4fbf\u5229\u3067\u3059\u3002\n\u6570\u3005\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u304c\u3001\u6211\u3005\u304c\u30d7\u30ed\u30b0\u30e9\u30e0\u3068\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306f\u3069\u306e\u3088\u3046\u306b\u7e4b\u304c\u3063\u3066\u3044\u308b\u306e\u304b\u3092\u8003\u3048\u308b\u5fc5\u8981\u306a\u304f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068\u7e4b\u304c\u308b\u3053\u3068\u3092\u52a9\u3051\u3066\u304f\u308c\u3066\u3044\u307e\u3059\u3002\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3001\u30bd\u30b1\u30c3\u30c8\u901a\u4fe1\u3067\u3064\u306a\u304c\u308b\u65b9\u6cd5\u3092\u6df1\u6398\u308a\u3057\u3066\u3044\u304f\u4ed6\u3001\u8907\u6570\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u306e\u5b9f\u73fe\u65b9\u6cd5\u3001PEP249\u3067\u6c7a\u3081\u3089\u308c\u3066\u3044\u308b\u30eb\u30fc\u30eb\u3001\u975e\u540c\u671f\u51e6\u7406\u3092\u3069\u306e\u3088\u3046\u306b\u5b9f\u73fe\u3057\u3066\u3044\u308b\u304b\u3001\u6700\u65b0\u306eO/R\u30de\u30c3\u30d1\u30fc\u3084\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30a2\u30c0\u30d7\u30bf\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u4e8b\u60c5\u306a\u3069\u3092\u7d39\u4ecb\u3057\u3066\u3044\u304d\u307e\u3059\u3002", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "97MSXS", "name": "Shintaro Matsudo", "avatar": "https://pretalx.com/media/avatars/97MSXS_LPtJXoM.webp", "biography": "Shintaro Matsudo is a backend engineer and an engineering manager at RevComm inc. from Japan.\nHe is experienced engineer skilled in Web Application Development, DevOps, Product Management and Team Management.", "public_name": "Shintaro Matsudo", "guid": "4371fd50-b510-5c8e-a598-176fd6551bb9", "url": "https://pretalx.com/pyconapac2023/speaker/97MSXS/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8XZDC7/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8XZDC7/", "attachments": []}, {"guid": "b2ec0ece-719e-55cb-990a-74a6f6770ec2", "code": "NYW939", "id": 32557, "logo": null, "date": "2023-10-27T14:05:00+09:00", "start": "14:05", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32557-python-3-11data-class-transforms-pep-681-enhancing-type-checking-with-python-3-11-s-new-feature-data-class-transforms-pep-681", "url": "https://pretalx.com/pyconapac2023/talk/NYW939/", "title": "\u578b\u30c1\u30a7\u30c3\u30af\u3092\u5f37\u5316\u3059\u308bPython 3.11\u306e\u65b0\u6a5f\u80fdData Class Transforms\uff08PEP 681\uff09\uff08Enhancing Type Checking with Python 3.11's New Feature: Data Class Transforms (PEP 681)\uff09", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001Python 3.11\u306e\u65b0\u6a5f\u80fd\u3001Data Class Transforms\uff08PEP 681\uff09\u306b\u3064\u3044\u3066\u89e3\u8aac\u3057\u307e\u3059\u3002\nPEP 681\u3067typing\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u8ffd\u52a0\u3055\u308c\u305fdataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306f\u3001\u3053\u308c\u307e\u3067attrs\u3001Pydantic\u3001O/R\u30de\u30c3\u30d1\u30fc\uff08\u4f8b: SQLAlchemy\u3001Django\u5185\u81d3\u306eO/R\u30de\u30c3\u30d1\u30fc\uff09\u306a\u3069\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u306e\u578b\u30c1\u30a7\u30c3\u30af\u304c\u5341\u5206\u306b\u52b9\u304b\u306a\u304b\u3063\u305f\u554f\u984c\u3092\u89e3\u6c7a\u3057\u3001\u3088\u308a\u5805\u7262\u306a\u30b3\u30fc\u30c9\u3092\u5b9f\u73fe\u3057\u307e\u3059\u3002\n\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306e\u5185\u90e8\u30e1\u30ab\u30cb\u30ba\u30e0\u3082\u6398\u308a\u4e0b\u3052\u3001\u3055\u3089\u306b\u4e3b\u8981\u306a\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u306ePEP 681\u3078\u306e\u5bfe\u5fdc\u72b6\u6cc1\u3001\u305d\u3057\u3066\u5bfe\u5fdc\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u7d39\u4ecb\u3082\u884c\u3044\u307e\u3059\u3002\n\u578b\u5b89\u5168\u3092\u78ba\u4fdd\u3057\u3064\u3064\u3001\u3088\u308a\u5f37\u529b\u306a\u30c7\u30fc\u30bf\u64cd\u4f5c\u3092\u5b9f\u73fe\u3059\u308bPython\u306e\u65b0\u6a5f\u80fd\u3092\u3001\u305c\u3072\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u5b66\u3073\u307e\u3057\u3087\u3046\u3002", "description": "## \u30af\u30e9\u30b9\u306e\u521d\u671f\u5316\u51e6\u7406\u3067\u578b\u30c1\u30a7\u30c3\u30af\u304c\u52b9\u304b\u306a\u3044\u554f\u984c\u306e\u89e3\u8aac\n\u307e\u305a\u6700\u521d\u306b\u3001PEP 681\u767b\u5834\u4ee5\u524d\u306ePython\u306b\u3069\u306e\u3088\u3046\u306a\u554f\u984c\u304c\u3042\u3063\u305f\u306e\u304b\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\nPEP 681\u306e\u6069\u6075\u3092\u53d7\u3051\u308b\u306e\u306f\u3001[attrs](https://www.attrs.org/en/stable/)\u3001[Pydantic](https://docs.pydantic.dev/latest/)\u3001O/R\u30de\u30c3\u30d1\u30fc\uff08\u4f8b: [SQLAlchemy](https://www.sqlalchemy.org/)\u3001[Django](https://docs.djangoproject.com/ja//)\u5185\u81d3\u306eO/R\u30de\u30c3\u30d1\u30fc\uff09\u306a\u3069\u306e\u30c7\u30fc\u30bf\u30af\u30e9\u30b9\u98a8\u306b\u30af\u30e9\u30b9\u3092\u66f8\u3051\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u304c\u3001\u4eca\u56de\u306f\u5185\u90e8\u306e\u30b3\u30fc\u30c9\u3092\u30b7\u30f3\u30d7\u30eb\u306b\u3057\u305f\u30aa\u30ea\u30b8\u30ca\u30eb\u306eO/R\u30de\u30c3\u30d1\u30fc\u3092\u7528\u610f\u3057\u3066\u8aac\u660e\u3057\u307e\u3059\u3002\n\n## \u578b\u30c1\u30a7\u30c3\u30af\u3092\u5f37\u5316\u3059\u308btyping.dataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306e\u4f7f\u3044\u65b9\u306b\u3064\u3044\u3066\u89e3\u8aac\n\u6b21\u306b\u3001PEP 681\u3067typing\u30e2\u30b8\u30e5\u30fc\u30eb\u306b\u8ffd\u52a0\u3055\u308c\u305fdataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306e\u4f7f\u3044\u65b9\u306b\u3064\u3044\u3066\u89e3\u8aac\u3057\u307e\u3059\u3002\n\u524d\u8ff0\u306e\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u3092dataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u3092\u4f7f\u3063\u305f\u3082\u306e\u306b\u5909\u66f4\u3059\u308b\u3053\u3068\u3067\u3001\u578b\u30c1\u30a7\u30c3\u30af\u304c\u52b9\u304b\u306a\u3044\u554f\u984c\u3092\u89e3\u6c7a\u3067\u304d\u307e\u3059\u3002\n\n\u672c\u30c8\u30fc\u30af\u306b\u3088\u308a\u3001\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u9078\u5b9a\u306e\u969b\u306b\u3001\u3088\u308a\u9069\u5207\u306a\u5224\u65ad\u304c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002\n\u307e\u305f\u3001\u81ea\u4f5c\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u958b\u767a\u3055\u308c\u3066\u3044\u308b\u65b9\u306f\u3001dataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306e\u4f7f\u3044\u65b9\u3092\u77e5\u308b\u3053\u3068\u3067\u578b\u30c1\u30a7\u30c3\u30af\u3092\u5f37\u5316\u3067\u304d\u307e\u3059\u3002\n\n## typing.dataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u5185\u90e8\u306e\u4ed5\u7d44\u307f\u306b\u3064\u3044\u3066\u89e3\u8aac\ndataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u5185\u90e8\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306b\u3064\u3044\u3066\u89e3\u8aac\u3057\u307e\u3059\u3002dataclass_transform\u30c7\u30b3\u30ec\u30fc\u30bf\u30fc\u306e\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u306f\u3068\u3066\u3082\u30b7\u30f3\u30d7\u30eb\u3067\u3059\u304c\u3001\u305d\u308c\u3067\u3082\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u304c\u9ad8\u5ea6\u306a\u578b\u30c1\u30a7\u30c3\u30af\u3092\u3067\u304d\u308b\u7406\u7531\u3092\u8aac\u660e\u3057\u307e\u3059\u3002\n\n## \u4e3b\u8981\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u306ePEP 681\u5bfe\u5fdc\u72b6\u6cc1\n\u4e3b\u8981\u306a\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u3067\u306e\u5bfe\u5fdc\u72b6\u6cc1\u3092\u8aac\u660e\u3057\u307e\u3059\u3002PEP 681\u306f\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u304c\u5bfe\u5fdc\u3057\u3066\u3044\u306a\u3044\u3068\u610f\u5473\u304c\u306a\u3044\u6a5f\u80fd\u3067\u3059\u3002\u578b\u30c1\u30a7\u30c3\u30ab\u30fc\u3092\u63a1\u7528\u3059\u308b\u969b\u3001\u3053\u306e\u5185\u5bb9\u3092\u53c2\u8003\u306b\u9078\u5b9a\u3059\u308b\u3053\u3068\u3092\u304a\u52e7\u3081\u3057\u307e\u3059\u3002\n\n## PEP 681\u306b\u5bfe\u5fdc\u3057\u3066\u3044\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u7d39\u4ecb\n[attrs](https://www.attrs.org/en/stable/)\u3001[Pydantic](https://docs.pydantic.dev/latest/)\u3001O/R\u30de\u30c3\u30d1\u30fc\uff08\u4f8b: [SQLAlchemy](https://www.sqlalchemy.org/)\u3001[Django](https://docs.djangoproject.com/ja//)\u5185\u81d3\u306eO/R\u30de\u30c3\u30d1\u30fc\uff09\u306a\u3069\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u306ePEP 681\u3078\u306e\u5bfe\u5fdc\u72b6\u6cc1\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u63a1\u7528\u3092\u691c\u8a0e\u3059\u308b\u969b\u306e\u5224\u65ad\u6750\u6599\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "99YQKL", "name": "Ryuji Tsutsui", "avatar": "https://pretalx.com/media/avatars/99YQKL_oKFUpO9.webp", "biography": "- \u7b52\u4e95\u9686\u6b21\uff08Ryuji Tsutsui\uff09\n- 1974\u5e7410\u670813\u65e5\u751f\u307e\u308c\n- \u5317\u6d77\u9053\u51fa\u8eab\n\n\u4f4f\u5b85\u8ca9\u58f2\u55b6\u696d\u3092\u7d4c\u30662000\u5e74\u306b\u793e\u5185SE\u3068\u3057\u3066IT\u696d\u754c\u306b\u5f93\u4e8b\u30022011\u5e74\u307e\u3067\u306fJava\u3001PHP\u304c\u30e1\u30a4\u30f3\u8a00\u8a9e\u3060\u3063\u305f\u304c\u3001\u65b0\u3057\u3044\u8a00\u8a9e\u306b\u6311\u6226\u3057\u3088\u3046\u3068\u601d\u3044\u3001\u5e7e\u3064\u304b\u5b66\u3076\u4e2d\u3067Python\u306b\u51fa\u4f1a\u3046\u3002Python\u306e\u8a00\u8a9e\u4ed5\u69d8\u306e\u7c21\u6f54\u3055\u3068\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u6d3b\u52d5\u306e\u6d3b\u767a\u3055\u306b\u60f9\u304b\u308c\u3001\u73fe\u5728\u307e\u3067\u30e1\u30a4\u30f3\u8a00\u8a9e\u3068\u3057\u3066\u6d3b\u7528\u3057\u3066\u3044\u308b\u3002\n\n\u73fe\u5728\u306f\u682a\u5f0f\u4f1a\u793ehokan\u306b\u6240\u5c5e\u3002Django\u3092\u4f7f\u3063\u305fWeb\u30b5\u30fc\u30d3\u30b9\u958b\u767a\u306b\u5f93\u4e8b\u3057\u3066\u3044\u308b\u3002\n\nPyCon JP 2012\u3001PyCon APAC 2013\u3001PyCon JP 2014\u30b9\u30bf\u30c3\u30d5\u3002\nShonan.py\u3001GCPUG Shonan\u3001\u6a2a\u6d5cRust\u90e8\u306a\u3069\u306e\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u3067\u3082\u6d3b\u52d5\u3057\u3066\u3044\u308b\u3002\n\n- \u8457\u66f8:\n    - [Python\u30a8\u30f3\u30b8\u30cb\u30a2\u80b2\u6210\u63a8\u9032\u5354\u4f1a\u76e3\u4fee Python\u5b9f\u8df5\u30ec\u30b7\u30d4](https://gihyo.jp/book/2022/978-4-297-12576-9)\uff08\u5171\u8457\uff09\n- Twitter: https://twitter.com/ryu22e\n- Mastodon: https://mstdn.jp/@ryu22e\n- Blog: https://ryu22e.org/", "public_name": "Ryuji Tsutsui", "guid": "81805933-54b0-522f-a28d-c2f791080dbf", "url": "https://pretalx.com/pyconapac2023/speaker/99YQKL/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/NYW939/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/NYW939/", "attachments": []}, {"guid": "530400e3-c3e9-5f30-8f6b-3443875d0770", "code": "8AWUBQ", "id": 32989, "logo": null, "date": "2023-10-27T14:30:00+09:00", "start": "14:30", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32989-making-school-less-boring-with-python", "url": "https://pretalx.com/pyconapac2023/talk/8AWUBQ/", "title": "Making School Less Boring with Python!", "subtitle": "", "track": "Python in education", "type": "15 Minute Talk", "language": "en", "abstract": "In today's fast-paced academic environment, students often are overwhelmed and disengaged because of huge workloads and lengthy-uninspiring lectures. Join me as I share my journey as a student in overcoming these challenges through fun projects/scripts and participating in the PythonPH Community.  By sharing my experiences, I aim to help students make school life easier, more exciting, and FUN.", "description": "I will talk about how Python, and activities and communities related to it,  affected my school life adventures and made them More Easier, more Exciting, and Fun. \n\nSpecifically, I will talk about the following:\n- The different Fun Python Projects I made during my undergrad. One of them was during Valentine's when I made a valentines card generator that utilizes machine learning to create unique abstract paintings out of people\u2019s faces during Valentine's for every person. It was a random project I came up with as a joke since I spend more time coding than finding my own valentines. It was an enjoyable project that made me love coding and making projects. Sharing this experience will give everyone a good perspective on my struggles with conceptualizing a project just for the fun of it and having the motivation to work on it continuously! Detailing my experience here will be helpful to all beginners in Python!\n\n- The different automation scripts and packages in Python made life much easier during undergrad. They were Python scripts for automating sending emails, automating certificate generation for events, cleaning class records, and using Django for creating fast, quick scalable websites for class assignments that would have taken much longer for other languages and packages. I aim to give a perspective throughout this section on how Python can make simple and easy scripts that automate the \u201cboring and tedious\u201d work that comes with school life.\n\n- And lastly, how the Python Philippines Community made my after-class sessions much more fun! Having a common space with like-minded individuals who love automation, and talking about nerd topics and random projects made my school life much more fun. I will go into detail on how much of an impact the Python PH community in my creativity, motivation, and overall skillsets. This section of my talk will be helpful in everyone\u2019s journey regardless of their proficiency in Python!", "recording_license": "", "do_not_record": false, "persons": [{"code": "CQPBKX", "name": "Carl John Vi\u00f1as", "avatar": "https://pretalx.com/media/avatars/CQPBKX_fUKtxxh.webp", "biography": "Hello I am Carl, a professional with experience as a researcher, data engineer & analyst mostly working on problems and applications of geospatial and career-related text data for more than 3 years now.\n\nI also recently graduated with my undergraduate degree in Computer Science and doing work on applications of Segment Anything on geospatial data under the Fatima Fellowship Program.\n\nI also contribute to open source initiatives I feel interesting  such as increasing language representation through the Aya Initiative and contributing to the Python user base through Python related Events such as WFH Pythonista and Pycon!", "public_name": "Carl John Vi\u00f1as", "guid": "1d50802d-29d9-5078-86df-e0a847ea4e5d", "url": "https://pretalx.com/pyconapac2023/speaker/CQPBKX/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8AWUBQ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8AWUBQ/", "attachments": []}, {"guid": "5efcdffe-2b5d-522f-9d0c-426f7480211a", "code": "QPU3NR", "id": 32837, "logo": null, "date": "2023-10-27T15:30:00+09:00", "start": "15:30", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32837-python", "url": "https://pretalx.com/pyconapac2023/talk/QPU3NR/", "title": "\u696d\u52d9\u3067\u4f7f\u3048\u308b\u4e00\u6b69\u9032\u3093\u3060Python\u4f7f\u3044\u306b\u306a\u308b\u305f\u3081\u306b", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "Python\u3092\u4f7f\u3063\u3066\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3092\u5b66\u3073\u3001\u3044\u308d\u3044\u308d\u306a\u3082\u306e\u3092\u4f5c\u308b\u65b9\u304c\u5897\u3048\u3066\u3044\u307e\u3059\u3002\n\u6a5f\u68b0\u5b66\u7fd2\u3001Web\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u3001\u7d44\u307f\u8fbc\u307f\u5206\u91ce\u306a\u3069Python\u306e\u5bfe\u5fdc\u7bc4\u56f2\u306f\u5e83\u304f\u3001\u591a\u304f\u306e\u30e6\u30fc\u30b6\u30fc\u306b\u53d7\u3051\u5165\u308c\u3089\u308c\u3001\u5e83\u307e\u3063\u3066\u3044\u304d\u307e\u3057\u305f\u3002\n\n\u4e00\u65b9\u3001\u30c1\u30fc\u30e0\u3067\u958b\u767a\u3059\u308b\u969b\u306ePython\u306e\u6d3b\u7528\u30fb\u66f8\u304d\u65b9\u306b\u3064\u3044\u3066\u306f\u307e\u3060\u307e\u3060\u8ab2\u984c\u304c\u3042\u308b\u3088\u3046\u306b\u601d\u3044\u307e\u3059\u3002\n\u5b9f\u969b\u306e\u696d\u52d9\u3067\u306f\u591a\u304f\u306e\u30e1\u30f3\u30d0\u30fc\u3068\u958b\u767a\u3059\u308b\u95a2\u4fc2\u304b\u3089\u3001\u4e00\u4eba\u3067\u66f8\u3044\u3066\u3044\u308b\u3068\u304d\u4ee5\u4e0a\u306b\u6c17\u3092\u3064\u3051\u306a\u3051\u308c\u3070\u3044\u3051\u306a\u3044\u30dd\u30a4\u30f3\u30c8\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u6b8b\u5ff5\u306a\u304c\u3089\u305d\u306e\u30c6\u30af\u30cb\u30c3\u30af\u306f\u6d78\u900f\u3057\u3066\u3044\u307e\u305b\u3093\u3002\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u30db\u30d3\u30fc\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u304b\u3089Python\u3092\u59cb\u3081\u3001\u696d\u52d9\u3067\u591a\u304f\u306e\u958b\u767a\u7d4c\u9a13\u3092\u3059\u308b\u306b\u3064\u308c\u3066\u898b\u3064\u3051\u3066\u304d\u305f\u30d7\u30e9\u30af\u30c6\u30a3\u30b9\u3084\u3001\u30a2\u30f3\u30c1\u30d1\u30bf\u30fc\u30f3\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3057\u3001\u66f4\u306b\u4ed6\u306e\u52d5\u7684\u578b\u4ed8\u3051\u8a00\u8a9e\u306b\u3082\u5171\u901a\u3059\u308b\u3067\u3042\u308d\u3046\u30c8\u30d4\u30c3\u30af\u306b\u3082\u5e83\u3052\u3066\u304a\u8a71\u3057\u307e\u3059\u3002\n\u5bfe\u8c61\u8074\u8846\u306fPython\u53ca\u3073\u52d5\u7684\u578b\u4ed8\u3051\u8a00\u8a9e\u306e\u958b\u767a\u306e\u7d4c\u9a13\u304c\u6d45\u3044\u65b9\u3067\u3059\u3002", "description": "\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u7b46\u8005\u304c\u5b9f\u969b\u306b\u5931\u6557\u3057\u3066\u304d\u305f\u7d4c\u9a13\u3084\u3001\u4e16\u9593\u3067\u306ePython\u306b\u5bfe\u3059\u308b\u8a55\u4fa1\u3001\u8ab2\u984c\u70b9\u306e\u6574\u7406\u304b\u3089\u59cb\u3081\u307e\u3059\u3002\n\u4e16\u9593\u3067\u306fPython\u3092\u30b9\u30af\u30ea\u30d7\u30c8\u3084\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306a\u5b9f\u884c\u74b0\u5883\u306e\u8eab\u3067\u5b9f\u884c\u3057\u3066\u304a\u308a\u3001\u305d\u306e\u3088\u3046\u306a\u30e6\u30fc\u30b6\u30fc\u304c\u30c1\u30fc\u30e0\u958b\u767a\u306b\u5165\u3063\u3066\u3044\u304f\u3053\u3068\u306f\u5c4b\u3084\u30cf\u30fc\u30c9\u30eb\u304c\u9ad8\u3044\u3068\u8003\u3048\u3066\u3044\u307e\u3059\u3002\n\u7b46\u8005\u306f\u3053\u306e\u554f\u984c\u306b\u3064\u3044\u3066\u3001\u56fd\u5185\u5916\u554f\u308f\u305a\u3001\u521d\u5b66\u8005\u306e\u30e6\u30fc\u30b6\u30fc\u304c\u5bfe\u9762\u3059\u308b\u554f\u984c\u3067\u3042\u308b\u3068\u8003\u3048\u3066\u3044\u307e\u3059\u3002\n\n\u307e\u305f\u7b46\u8005\u306f8\u5e74\u307b\u3069Python\u3092\u66f8\u3044\u3066\u3044\u307e\u3059\u304c\u3001\u30db\u30d3\u30fc\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u306a\u3044\u3057\u500b\u4eba\u3067\u958b\u767a\u3057\u3066\u3044\u305f\u3068\u304d\u3068\u3001\u30c1\u30fc\u30e0\u3067\u958b\u767a\u3057\u3066\u3044\u308b\u3068\u304d\u3067\u610f\u8b58\u3057\u306a\u3051\u308c\u3070\u3044\u3051\u306a\u3044\u66f8\u304d\u65b9\u304c\u591a\u304f\u5b58\u5728\u3059\u308b\u3068\u611f\u3058\u3066\u3044\u307e\u3059\u3002\n\u672c\u767a\u8868\u306fPython\u7d4c\u9a13\u304c\u8584\u304b\u3063\u305f\u308a\u3001\u500b\u4eba\u3067\u306e\u958b\u767a\u7d4c\u9a13\u3057\u304b\u306a\u3044\u65b9\u306b\u5bfe\u3057\u3066\u30c1\u30fc\u30e0\u3067\u958b\u767a\u3059\u308b\u77e5\u8b58\u3084\u60c5\u5831\u3092\u8074\u8846\u306b\u6301\u3063\u3066\u5e30\u3063\u3066\u3044\u305f\u3060\u304f\u3053\u3068\u3092\u76ee\u7684\u3068\u3057\u3066\u3044\u307e\u3059\u3002\n\n\n\u767a\u8868\u6982\u8981\u306f15\u5206\u306b\u5408\u308f\u305b\u3066\u4e0b\u8a18\u306b\u4fee\u6b63\u3057\u3066\u3044\u307e\u3059\u3002\n\u5143\u300530\u5206\u3067\u8a71\u3059\u4e88\u5b9a\u3060\u3063\u305f\u3082\u306e\u306b\u95a2\u3057\u3066\u306f\u61c7\u89aa\u4f1a\u3084\u500b\u4eba\u7684\u306b\u3054\u9023\u7d61\u3044\u305f\u3060\u3051\u308c\u3070\u3068\u601d\u3044\u307e\u3059\u3002\n\n- \u81ea\u5df1\u7d39\u4ecb\u3068\u6982\u8981(1\u5206)\n- Python\u5b66\u7fd2\u8005\u3092\u53d6\u308a\u5dfb\u304f\u74b0\u5883(3\u5206)\n  - \u69d8\u3005\u306a\u958b\u767a\u74b0\u5883\n  - \u72ec\u7fd2\u3067\u9665\u308a\u304c\u3061\u306a\u843d\u3068\u3057\u7a74\n- \u696d\u52d9\u958b\u767a\u3067\u3084\u308b\u3079\u304d\u3053\u3068(5\u5206)\n  - \u305d\u3082\u305d\u3082\u696d\u52d9\u3067 Python \u3092\u4f7f\u3046\u3079\u304d\uff1f\n  - \u696d\u52d9\u3067\u306e\u958b\u767a\u306b\u306f\u4f55\u304c\u6c42\u3081\u3089\u308c\u3066\u3044\u308b\u304b\n  - \u63c3\u3048\u305f\u3044\u30c4\u30fc\u30eb\u985e\uff08\u4eee\u60f3\u74b0\u5883\u30fb\u30d1\u30c3\u30b1\u30fc\u30b8\u7ba1\u7406\u30fbLinter\u30fbFormatter\u30fb\u30c6\u30b9\u30c8\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\uff09\n  - \u88dc\u52a9\u3067\u5165\u308c\u305f\u3044\u30c4\u30fc\u30eb\u985e\uff08\u30a8\u30c7\u30a3\u30bf\u30fb\u30ed\u30b0\u7ba1\u7406\u30fbAPI\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u30fb\u30ed\u30fc\u30c9\u30c6\u30b9\u30c8\u30c4\u30fc\u30eb\u30fb\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u30c6\u30b9\u30c8\u30c4\u30fc\u30eb\u30fbAPM\u30c4\u30fc\u30eb\uff09\n- 4\u5e74 Python \u3092\u696d\u52d9\u3067\u4f7f\u3063\u3066\u611f\u3058\u305f\u30e1\u30ea\u30c3\u30c8\u30fb\u30c7\u30e1\u30ea\u30c3\u30c8\n   - \u30a4\u30f3\u30c7\u30f3\u30c8\u306e\u826f\u3057\u3042\u3057\n   - \u578b\u3068\u306e\u95d8\u3044\n   - \u8a2d\u8a08\u306e\u8a71\u306f\u4ed6\u8a00\u8a9e\u304b\u3089\u5b66\u3079\u308b\u3053\u3068\u3082\u591a\u3044\n- \u307e\u3068\u3081(1\u5206)\n\n\n\u4e0b\u8a18\u306f\u3082\u3068\u3082\u306830\u5206\u3067\u4e88\u5b9a\u3057\u3066\u3044\u305f\u767a\u8868\u5185\u5bb9\u3067\u3057\u305f\u3002\n\n- Python\u5b66\u7fd2\u8005\u3092\u53d6\u308a\u5dfb\u304f\u74b0\u5883(5\u5206)\n  - \u69d8\u3005\u306a\u958b\u767a\u74b0\u5883\n  - \u500b\u4eba\u3067\u4f5c\u308c\u308b\u3082\u306e\u306e\u4e16\u754c\n  - \u72ec\u7fd2\u3067\u9665\u308a\u304c\u3061\u306a\u843d\u3068\u3057\u7a74\n- \u30c1\u30fc\u30e0\u958b\u767a\u3068\u500b\u4eba\u958b\u767a(15\u5206)\n  - \u66f8\u304f\u3079\u304d\u3067\u306a\u3044\u8a00\u8a9e\u7684\u306a\u7f60\n    - \u7834\u58ca\u7684\u306a\u52d5\u304d\n    - Python\u306f\u540c\u3058\u3088\u3046\u306b\u66f8\u304f\u306e\u304c\u96e3\u3057\u3044\u306e\u3067\u306f\u2026\uff1f\n  - \u52d5\u7684\u578b\u4ed8\u3051\u8a00\u8a9e\u5168\u4f53\u306b\u8a00\u3048\u308b\u8ab2\u984c\n    - \u578b\u60c5\u5831\u3092\u306a\u308b\u3079\u304f\u5165\u308c\u3088\u3046\n    - \u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u3092\u66f8\u3053\u3046\n    - Linter, Formatter\u3092\u5165\u308c\u3088\u3046\n  - CI\u3067\u3082\u30c1\u30a7\u30c3\u30af\u3059\u308b\n  - \u30b3\u30fc\u30c9\u30ec\u30d3\u30e5\u30fc\u3092\u3057\u3088\u3046\n- \u306a\u305c\u6211\u3005\u306f\u30c1\u30fc\u30e0\u3067Python\u3092\u66f8\u304f\u306e\u304b(5\u5206)\n  - \u591a\u304f\u306e\u4eba\u304c\u89e6\u308c\u308b\u5f37\u307f\u3068\u5f31\u307f\n  - \u52d5\u7684\u578b\u4ed8\u3051\u8a00\u8a9e\u306e\u697d\u3055\u3068\u30b9\u30d4\u30fc\u30c9\n- \u307e\u3068\u3081(2\u5206)\n- \u8cea\u7591\u5fdc\u7b54(5\u5206)", "recording_license": "", "do_not_record": false, "persons": [{"code": "UKAZWU", "name": "Motoki Hirao", "avatar": "https://pretalx.com/media/avatars/UKAZWU_Zpmsj6E.webp", "biography": "I love conference. I love software technology. I love Python.\n\n\n- Python Engineer\n- Agile Developer", "public_name": "Motoki Hirao", "guid": "865cfbad-9c53-5a0a-907d-3d96f8bdbda5", "url": "https://pretalx.com/pyconapac2023/speaker/UKAZWU/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/QPU3NR/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/QPU3NR/", "attachments": []}, {"guid": "4cc9d2b7-b07d-5b22-bc9d-85389ef62db4", "code": "WQREM9", "id": 32421, "logo": null, "date": "2023-10-27T15:55:00+09:00", "start": "15:55", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32421-python-ate-my-homework", "url": "https://pretalx.com/pyconapac2023/talk/WQREM9/", "title": "Python ate my homework!", "subtitle": "", "track": "Python in education", "type": "15 Minute Talk", "language": "en", "abstract": "Is your relationship with maths... complicated?\n\nDo you hate doing simple, repetitive, error prone calculations that you know your computer could easily do?\n\nHave you ever been disappointed by Wolfram Alpha's inability to calculate your problems, with working out?\n\nThen book a session and I\u2019ll show you how to use Python, SymPy, & Jupyter to resolve your love problems, all with working out!", "description": "If you hate doing simple, repetitive, error prone calculations that you know a computer could trivially do, then this is the talk for you!\n\nYou'll learn some of the basics of the SymPy library, and then observe how to solve a sample university level maths problem. Then, we'll put these two together and use SymPy to solve this math problem for us, and in a way that also prints working out!\n\nYou'll also see how Jupyter can be used to calculate and submit parts of your assignment, and finally how you can help contribute to the computational maths community.", "recording_license": "", "do_not_record": false, "persons": [{"code": "AHET73", "name": "Evan Kohilas", "avatar": "https://pretalx.com/media/avatars/AHET73_7Ky4wOa.webp", "biography": "Evan is a Software Engineer whose passions lie in improving the developer experience by reducing human error, enhancing code health, and optimising workflows.\n\nWhen he's not thinking about security, informatics, or giving talks about his many projects, you'll find him nomming on subway cookies, or chasing bunny rabbits.", "public_name": "Evan Kohilas", "guid": "ce8fe9d1-18e9-59ab-8508-85ed8a1024a2", "url": "https://pretalx.com/pyconapac2023/speaker/AHET73/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/WQREM9/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/WQREM9/", "attachments": []}, {"guid": "35458b3c-db03-576a-9c4e-617912e20156", "code": "9TKP3P", "id": 33141, "logo": null, "date": "2023-10-27T16:20:00+09:00", "start": "16:20", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-33141-modulenotfounderror-import", "url": "https://pretalx.com/pyconapac2023/talk/9TKP3P/", "title": "ModuleNotFoundError\u306e\u50be\u5411\u3068\u5bfe\u7b56:\u4ed5\u7d44\u307f\u304b\u3089\u5b66\u3076Import", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "Python \u3078\u5165\u9580\u3057\u305f\u3042\u3068\u306b\u82e6\u6226\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u306e1\u3064\u306b\u3001ModuleNotFoundError\u3068\u306e\u906d\u9047\u304c\u3042\u308a\u307e\u3059\u3002\n\u4f55\u304c\u8d77\u304d\u3066\u3044\u308b\u306e\u304b\u3001\u4f55\u304c\u3044\u3051\u306a\u3044\u306e\u304b\u3001\u5168\u4f53\u50cf\u304c\u308f\u304b\u3089\u305a\u56f0\u60d1\u3057\u305f...\u305d\u3093\u306a\u3054\u7d4c\u9a13\u306f\u306a\u3044\u3067\u3057\u3087\u3046\u304b?\n\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3001Python\u306eimport\u306e\u4ed5\u7d44\u307f\u3092\u306f\u3058\u3081\u3068\u3057\u3066\u3001\u30e2\u30b8\u30e5\u30fc\u30eb\u3084\u540d\u524d\u7a7a\u9593\u3001\u30b9\u30b3\u30fc\u30d7\u306b\u95a2\u3059\u308b\u57fa\u790e\u7684\u306a\u77e5\u8b58\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\n\u3053\u308c\u306b\u3088\u308a\u3001\u53c2\u52a0\u8005\u304c\u81ea\u8eab\u306e\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306b\u969b\u3057\u3066ModuleNotFoundError\u306b\u5bfe\u51e6\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308b\u3053\u3068\u3092\u76ee\u6307\u3057\u307e\u3059\u3002\nPython\u306eimport\u306e\u4ed5\u7d44\u307f\u3092\u628a\u63e1\u3059\u308b\u3053\u3068\u3067\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u3068\u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u76f8\u4e92\u4f5c\u7528\u3092\u7406\u89e3\u3057\u3001Python\u306e\u8a00\u8a9e\u4ed5\u69d8\u3092\u77e5\u308b\u304d\u3063\u304b\u3051\u3068\u306a\u308b\u3053\u3068\u3092\u671f\u5f85\u3057\u307e\u3059\u3002", "description": "\u672c\u30c8\u30fc\u30af\u3067\u4e88\u5b9a\u3057\u3066\u3044\u308b\u76ee\u6b21\u306f\u4ee5\u4e0b\u306e\u3068\u304a\u308a\u3067\u3059\u3002\n\n1. Python\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u3068ModuleNotFoundError\n    - \u30e2\u30b8\u30e5\u30fc\u30eb\u3068\u306f\u4f55\u304b\n    - Python\u306f\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u3069\u306e\u3088\u3046\u306b\u6271\u3046\u306e\u304b\n    - ModuleNotFoundError\u3068\u306f\u4f55\u304b\u3001\u51fa\u73fe\u306b\u81f3\u308b\u30b7\u30ca\u30ea\u30aa\n2. Import\u30fb\u540d\u524d\u7a7a\u9593\u30fb\u30b9\u30b3\u30fc\u30d7\n    - import\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\n    - \u540d\u524d\u7a7a\u9593\n    - \u30b9\u30b3\u30fc\u30d7\n3. import \u3067\u4f55\u304c\u8d77\u304d\u3066\u3044\u308b\u306e\u304b\n    - \u30e2\u30b8\u30e5\u30fc\u30eb\u306e\u691c\u7d22\u9806\u5e8f\n    - \u30d3\u30eb\u30c8\u30a4\u30f3\u30e2\u30b8\u30e5\u30fc\u30eb\n    - sys.module\n    - sys.path\n4. ModuleNotFoundError\u306e\u50be\u5411\u3068\u5bfe\u7b56\n    - ModuleNotFoundError\u306e\u3088\u304f\u3042\u308b\u539f\u56e0\n    - \u5177\u4f53\u7684\u306a\u30a8\u30e9\u30fc\u4f8b\n    - \u89e3\u6c7a\u307e\u3067\u306e\u30b1\u30fc\u30b9\u30b9\u30bf\u30c7\u30a3\n5. \u307e\u3068\u3081:\n    - \u30c8\u30fc\u30af\u306e\u632f\u308a\u8fd4\u308a\n    - \u516c\u5f0f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u306e\u7d39\u4ecb", "recording_license": "", "do_not_record": false, "persons": [{"code": "HXULET", "name": "Toshifumi Tsutsumi", "avatar": "https://pretalx.com/media/avatars/HXULET_x0899y3.webp", "biography": "\u30c7\u30fc\u30bf\u30a8\u30f3\u30b8\u30cb\u30a2\u3002SIer \u3084\u88fd\u9020\u696d\u3092\u7d4c\u3066\u30012020\u5e74\u306bGMO\u30da\u30d1\u30dc\u682a\u5f0f\u4f1a\u793e\u3078\u5165\u793e\u3002\u6280\u8853\u90e8 \u30c7\u30fc\u30bf\u57fa\u76e4\u30c1\u30fc\u30e0\u306b\u6240\u5c5e\u3002\n\nTwitter: [@tosh2230](https://twitter.com/tosh2230)  \nGitHub: [@tosh2230](https://github.com/tosh2230)", "public_name": "Toshifumi Tsutsumi", "guid": "167691b7-b6b3-5f68-9217-915bfe3b3143", "url": "https://pretalx.com/pyconapac2023/speaker/HXULET/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/9TKP3P/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/9TKP3P/", "attachments": []}]}}, {"index": 3, "date": "2023-10-28", "day_start": "2023-10-28T04:00:00+09:00", "day_end": "2023-10-29T03:59:00+09:00", "rooms": {"track 1": [{"guid": "85671512-cf1b-501e-aea3-889ed36b7bfa", "code": "8WUUWU", "id": 37758, "logo": null, "date": "2023-10-28T10:20:00+09:00", "start": "10:20", "duration": "01:00", "room": "track 1", "slug": "pyconapac2023-37758-keynote-through-the-looking-glass-10-years-of-python-organizing-lessons-and-tribulations", "url": "https://pretalx.com/pyconapac2023/talk/8WUUWU/", "title": "Keynote - Through the looking glass: 10 years of Python Organizing Lessons and Tribulations", "subtitle": "", "track": null, "type": "Regular Talk", "language": "en", "abstract": "Community organizing can be a challenge in its own right; discovering trends to educate the community on, empowering those around you to challenge themselves, and more. Over the last 10 years from a beginner engineer to today community organizing has shaped the way not only I connect to the language and community but has fundamentally altered my outlook on career development. Together we shall explore some of these lessons learned and reflect on how we can do more, do better.", "description": "", "recording_license": "", "do_not_record": false, "persons": [{"code": "SWW8RP", "name": "Lorena Mesa", "avatar": null, "biography": null, "public_name": "Lorena Mesa", "guid": "2c3da01b-303a-565c-a3c8-4fcd388b2c7a", "url": "https://pretalx.com/pyconapac2023/speaker/SWW8RP/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8WUUWU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8WUUWU/", "attachments": []}, {"guid": "8b78567b-b749-52bb-9820-b391a81639ca", "code": "KKELHA", "id": 32843, "logo": null, "date": "2023-10-28T11:45:00+09:00", "start": "11:45", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-32843-beaming-up-to-the-flow", "url": "https://pretalx.com/pyconapac2023/talk/KKELHA/", "title": "Beaming up to the flow!", "subtitle": "", "track": "Niche technique", "type": "Regular Talk", "language": "en", "abstract": "Streaming data processing is a type of data processing that deals wit continuously generated data and cannot be processed in its entirety. Streaming data processing is a challenging problem because it requires algorithms that can process data quickly and efficiently. In this talk, the speaker will share how to create streaming data pipelines easily by using Python libraries like Apache Beam.", "description": "Streaming data processing is a type of data processing that deals with data that is continuously generated and cannot be stored in its entirety. This type of data is often generated by sensors, machines, and other devices that collect data in real time. Streaming data processing is a challenging problem because it requires algorithms that can process data quickly and efficiently, while also being able to handle changes in the data stream.\n\nIn this talk, the speaker will start with an introduction to streaming data processing, including the different types of streaming data and the challenges of processing streaming data. After that, the speaker will discuss Python libraries for streaming data processing, such as Apache Beam, and how it helps solve the issue. The speaker will also highlight a case study of streaming data processing, such as real-time fraud detection. Finally, the session will end with answering audience questions.\n\nAfter this talk, the audience will be able to:\n- Understand the basics of streaming data processing\n- Understand the characteristics and challenges of streaming data\n- Use Python libraries for streaming data processing\n- Apply streaming data processing to real-world problems", "recording_license": "", "do_not_record": false, "persons": [{"code": "9D8UUK", "name": "Thu Ya Kyaw", "avatar": "https://pretalx.com/media/avatars/9D8UUK_HP9RI3m.webp", "biography": "Thu Ya Kyaw is a Senior Developer Relations Engineer for Google Cloud. At Google, he helps to make learning, developing, deploying, and scaling applications on Google Cloud a delightful experience for everyone. He is also a curious person who enjoys sci-fi, fantasy, and documentaries. He is fascinated by the unknown and the possibilities of other worlds. He often wonders if aliens built the pyramids, or if we live in a simulated world.", "public_name": "Thu Ya Kyaw", "guid": "eca436ec-9214-5488-86f3-d75880ed0ede", "url": "https://pretalx.com/pyconapac2023/speaker/9D8UUK/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/KKELHA/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/KKELHA/", "attachments": []}, {"guid": "87461c91-0668-5709-ad0c-256f4d773207", "code": "C7HGZS", "id": 33195, "logo": null, "date": "2023-10-28T13:30:00+09:00", "start": "13:30", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-33195-debugging-and-troubleshooting-python-applications-leveraging-visibility-and-observability-to-solve-problems-faster", "url": "https://pretalx.com/pyconapac2023/talk/C7HGZS/", "title": "Debugging and Troubleshooting Python Applications: Leveraging Visibility and Observability to Solve Problems Faster", "subtitle": "", "track": "Test for development", "type": "Regular Talk", "language": "en", "abstract": "Explore the importance of visibility and observability in Python programming in this session. Learn how these crucial tools aid in debugging and troubleshooting, boosting application reliability and performance. Discover various techniques and tools for monitoring Python applications, including metrics, logging, and tracing, providing deeper insights into system performance and behavior.", "description": "In this session, we will  understand the role of visibility and observability in Python programming, and how these tools can help developers debug and troubleshoot their applications by introducing various techniques and tools for monitoring and observing Python applications, including metrics, logging, and tracing, and discuss how they can be used to gain insight into the performance and behavior of these systems.\n\n\nWe will also discuss common challenges and pitfalls in implementing visibility and observability in Python, and provide best practices and strategies for overcoming these obstacles. For example, we will discuss the importance of defining clear metrics and logging standards, and the challenges of implementing these tools in distributed and asynchronous systems.\n\n\nThroughout the talk, we will provide real-world examples and case studies of successful implementations of visibility and observability in Python, and the benefits they have provided to organizations and teams. We will also provide guidance and resources for developers who are looking to implement these tools in their own applications.\n\n\nIn conclusion, visibility and observability are essential tools for debugging and troubleshooting Python applications. By providing insight into the inner workings of these systems, these tools can help developers identify and fix problems more quickly and efficiently, ensuring that their applications are reliable and performant. By implementing these tools and following best practices, Python developers can improve the performance and reliability of their applications, and deliver a better experience to their users.", "recording_license": "", "do_not_record": false, "persons": [{"code": "CHHWUG", "name": "Neeraj Pandey", "avatar": "https://pretalx.com/media/avatars/CHHWUG_7gGA08W.webp", "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.", "public_name": "Neeraj Pandey", "guid": "60d473ff-e10b-5274-810f-d012bfe0e6a7", "url": "https://pretalx.com/pyconapac2023/speaker/CHHWUG/"}], "links": [{"title": "Presentation Slides", "url": "https://bit.ly/3QbixIE", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/C7HGZS/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/C7HGZS/", "attachments": []}, {"guid": "7ca28bca-5ee1-516e-aaa0-a8a0ad7c087a", "code": "AZPMHH", "id": 32223, "logo": null, "date": "2023-10-28T14:10:00+09:00", "start": "14:10", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-32223-unleashing-the-power-of-lidar-with-python", "url": "https://pretalx.com/pyconapac2023/talk/AZPMHH/", "title": "Unleashing the Power of LIDAR with Python", "subtitle": "", "track": "Visualization / Games / Music", "type": "Regular Talk", "language": "en", "abstract": "This presentation explores the fascinating intersection of LIDAR technology and Python programming, shining a light on how Python empowers us to harness the full potential of LIDAR data in various applications. Dive into the world of point clouds and 3D data processing as we demonstrate how Python libraries and tools can process, manipulate, and visualize LIDAR data with ease and efficiency.", "description": "LIDAR technology, capable of producing highly accurate 3D representations of the physical world, has revolutionized a broad spectrum of industries, from autonomous vehicles and robotics to geographical mapping and archaeology. Yet, the potential of LIDAR can only be harnessed through efficient data processing and analysis methods, and this is where Python steps in.\n\nIn this talk, we will first provide a brief introduction to LIDAR and its significance in today's technological landscape. We will then delve into the vast Python ecosystem and its capabilities for handling LIDAR data, discussing key Python libraries such as PDAL (Point Data Abstraction Library), PyLidar, and others that facilitate the processing and visualization of point cloud data.\n\nThe following key points will be covered:\n\n-Overview of LIDAR technology and its applications\n-Introduction to point cloud data and its challenges\n-Python tools and libraries for LIDAR data processing\n-Case studies demonstrating real-world usage of Python in LIDAR data analysis\n-Future trends in LIDAR data processing with Python\n\nAttendees will walk away with a deeper understanding of the power of Python in processing complex LIDAR data, and the knowledge to utilize Python tools to kickstart their journey in the world of LIDAR technology.\n\nWhether you're a data scientist exploring new data types, a Python enthusiast keen on learning its applications in cutting-edge technology, or an industry professional looking to leverage LIDAR data, this talk will shine a light on the path ahead. Join us as we illuminate the future with LIDAR and Python.", "recording_license": "", "do_not_record": false, "persons": [{"code": "J9BLKR", "name": "Phillip Andrew Espina", "avatar": "https://pretalx.com/media/avatars/J9BLKR_ZGeNYvA.webp", "biography": "", "public_name": "Phillip Andrew Espina", "guid": "95abeaef-0a5d-554f-b20e-891b6e2628fc", "url": "https://pretalx.com/pyconapac2023/speaker/J9BLKR/"}], "links": [{"title": "Everything", "url": "https://drive.google.com/drive/folders/1A_le0RtY957fw6hXap9vdpRXAAL60GVK?usp=sharing", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/AZPMHH/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/AZPMHH/", "attachments": []}, {"guid": "2586058c-4036-5e1b-8cd6-cbddb9d19a14", "code": "YLPNET", "id": 33094, "logo": null, "date": "2023-10-28T15:20:00+09:00", "start": "15:20", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-33094-real-world-video-quality-enhancement", "url": "https://pretalx.com/pyconapac2023/talk/YLPNET/", "title": "Real\u00b2-World Video Quality Enhancement", "subtitle": "", "track": "Others", "type": "Regular Talk", "language": "en", "abstract": "Python's role in the video industry and high-tech research is undeniable. But how well does it bridge the gap between video enhancement research and the industry? This talk explores the challenges of integrating Python with real-world datasets to achieve high-quality videos. Join us as we delve into the complexities. Don't miss this opportunity to explore the future of video+Python.", "description": "In this thriving AI era, groundbreaking research and technologies emerge constantly. The Computer Vision revolution sparked the AI movement with milestones like AlexNet in 2012. However, many academic codebases lack the complexity and real-world challenges of industry data. Python, a driving force in AI, is often used for research implementation but falls short in integrating cutting-edge algorithms into complete video pipelines.\n\nJoin us as we share our experiences, experiments, and insights applying state-of-the-art video enhancement research to premium content. We'll delve into the challenges faced when bridging academic Python codebases, research datasets, real-world video content, and video processing pipelines. \n\nExplore:\n    - Types of video quality enhancement research and their significance\n    - The gap between SOTA video research and the industry\n        - Python codebase considerations\n        - Handling diverse video datasets effectively\n        - Optimizing video processing pipelines\n    - Strategies to narrow the gap and achieve seamless integration\n    - Engaging demonstrations showcasing enhanced videos across various domains\n\nDon't miss this enlightening session where we unravel the complexities of implementing advanced video research and explore ways to revolutionize the industry with Python.", "recording_license": "", "do_not_record": false, "persons": [{"code": "PQRDWA", "name": "Shuen-Huei Guan", "avatar": "https://pretalx.com/media/avatars/PQRDWA_3mhfVOz.webp", "biography": "[Drake](https://www.linkedin.com/in/drakeguan/) is an expert in streaming and computer graphics (just within some sub-field).\u00a0 He was serving as the Chief Technology Officer in KKStream, and now a Executive Vice President of Advanced Research Center in [KKCompany Technologies](https://www.kkcompany.com). KKCompany is a leading company in music streaming, video streaming, AI, and cloud computing.\u00a0Drake is enthusiastic about technology, and spends a lot of time in the communities of [Taiwan Multimedia Tech meetup (was Taipei Video Tech)](https://www.meetup.com/taipei-video-technology/) and [PyCon Taiwan](https://tw.pycon.org/) to share what he thinks about and promote technical development. Cheer~", "public_name": "Shuen-Huei Guan", "guid": "863d48c0-3287-59fd-bf0c-1b83ee9c25f5", "url": "https://pretalx.com/pyconapac2023/speaker/PQRDWA/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/YLPNET/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/YLPNET/", "attachments": []}, {"guid": "a3451d50-f8b9-59c2-90ce-ab4abd1ee4d6", "code": "VZ33RX", "id": 31564, "logo": null, "date": "2023-10-28T16:00:00+09:00", "start": "16:00", "duration": "00:30", "room": "track 1", "slug": "pyconapac2023-31564-automating-victory-beating-browser-games-with-accessible-python", "url": "https://pretalx.com/pyconapac2023/talk/VZ33RX/", "title": "Automating Victory: Beating browser games with accessible Python", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Whether your task is data entry or playing a video game, Python has the power to automate it. In this talk we'll explore the power of intuitive Python libraries for I/O, then use them to automatically beat an in-browser video game using the same strategies and inputs as a human. We\u2019ll also discuss applying project management skills to take personal projects from ideas to successes.", "description": "Even though many beginner programmers are motivated by solving day-to-day problems, many tutorials are disconnected from the real world. Automation is easy when inputs and outputs are consistent and locally stored, but how do you handle situations where that\u2019s not the case? Using Python to automate beating a browser game is a great example of a real-world problem that\u2019s uniquely hard to solve without Python libraries. The steps for solving this problem as a human map one-to-one with the steps for solving it programmatically and each step gives a simple and useful example of key automation libraries. Beyond highlighting some automation examples, I'll also talk about factors that led to this project's success rather than staying an eternal work-in-progress.", "recording_license": "", "do_not_record": false, "persons": [{"code": "RS9DVB", "name": "Jon Gaul", "avatar": "https://pretalx.com/media/avatars/RS9DVB_avjrXR2.webp", "biography": "Jon's passion for learning has led him to Tokyo, Japan where he works as a software engineer at HENNGE. He can be reached through Afraidalot.com.", "public_name": "Jon Gaul", "guid": "a06740ff-59d8-5b29-ba4d-ee9046cf9f8e", "url": "https://pretalx.com/pyconapac2023/speaker/RS9DVB/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VZ33RX/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VZ33RX/", "attachments": []}, {"guid": "aefd569d-00a6-55e0-99ee-ea68ec65ee66", "code": "QWDKWX", "id": 37663, "logo": null, "date": "2023-10-28T16:40:00+09:00", "start": "16:40", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-37663-sponsor-lt-kakehashi-python", "url": "https://pretalx.com/pyconapac2023/talk/QWDKWX/", "title": "Sponsor LT (KAKEHASHI) Python\u3067\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u30c6\u30b9\u30c8", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "Speaker: \u6a2a\u7530\u76f4\u5f66", "description": "", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/QWDKWX/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/QWDKWX/", "attachments": []}, {"guid": "97eed5ca-10ae-53d9-92c3-f430064d2047", "code": "8ZJQBC", "id": 37662, "logo": null, "date": "2023-10-28T16:45:00+09:00", "start": "16:45", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-37662-sponsor-lt-findy-mlopsgptml", "url": "https://pretalx.com/pyconapac2023/talk/8ZJQBC/", "title": "Sponsor LT (Findy) MLOps\u5c0e\u5165\u3068GPT\u6d3b\u7528\u304c\u3067\u304d\u308bML\u7d44\u7e54\u306b\u306a\u3063\u3066\u304d\u305f\u8a71", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "Speaker: \u7b39\u91ce\u7fd4\u592a", "description": "", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/8ZJQBC/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/8ZJQBC/", "attachments": []}, {"guid": "63e1a6d2-21c4-56c0-b0fd-220d3d3023c7", "code": "3SLJAU", "id": 37661, "logo": null, "date": "2023-10-28T16:50:00+09:00", "start": "16:50", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-37661-sponsor-lt-hennge", "url": "https://pretalx.com/pyconapac2023/talk/3SLJAU/", "title": "Sponsor LT: HENNGE", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "Speaker: Jasmine Yap", "description": "", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/3SLJAU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/3SLJAU/", "attachments": []}, {"guid": "788a9efe-8ebc-5ea2-b2b1-fd066c5c6a00", "code": "BKJDRV", "id": 37677, "logo": null, "date": "2023-10-28T16:55:00+09:00", "start": "16:55", "duration": "00:05", "room": "track 1", "slug": "pyconapac2023-37677-pycon-apac-2023wi-fi", "url": "https://pretalx.com/pyconapac2023/talk/BKJDRV/", "title": "PyCon APAC 2023\u306eWi-Fi\u3092\u652f\u3048\u308b\u6280\u8853", "subtitle": "", "track": "Others", "type": "Lightning Talk", "language": "en", "abstract": "PyCon APAC 2023\u306eWi-Fi\u3068\u914d\u4fe1\u3092\u652f\u3048\u308b\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u69cb\u6210\u3001\u6a5f\u6750\u3001\u6280\u8853\u30b9\u30bf\u30c3\u30af\u306e\u7d39\u4ecb\u3092\u884c\u3044\u307e\u3059", "description": "", "recording_license": "", "do_not_record": false, "persons": [], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/BKJDRV/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/BKJDRV/", "attachments": []}], "track 2": [{"guid": "40c5411e-94b0-590c-a7f2-2b6de6047b6c", "code": "UAYG3F", "id": 32525, "logo": null, "date": "2023-10-28T11:45:00+09:00", "start": "11:45", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32525-let-s-implement-useless-python-objects", "url": "https://pretalx.com/pyconapac2023/talk/UAYG3F/", "title": "Let's implement useless Python objects", "subtitle": "", "track": "Python core", "type": "Regular Talk", "language": "en", "abstract": "Let's implement objects that are useless for anything.\nFor example, an object whose length returned by the len() function is different every time, or an object that returns a bullshit result when you check if a value exists with the in operator.\nAnd through the implementation, you will get a better understanding of Python data types.", "description": "The Python objects implemented in this presentation are not useful at all.\nHowever, implementing completely useless objects will give you a better understanding of Python data types.\nYou will then be able to implement useful objects.\n\nThere are two topics covered in this presentation.\n\nThe first is understanding what happens behind the scenes of the len() function, the in operator, and the for statement.\nFor example, if you pass an object ``obj`` to the ``len()`` function, the result of ``len(obj)`` will be ``obj.__len__()``.\nIn other words, if you screw up the implementation of ``obj.__len__()``, the result of ``len(obj)`` will also be screwed up.\nYou will understand what Python does behind the scenes, why you can create useless objects, and how to implement objects that behave correctly.\n\nSecond, you will understand how to use the abstract base classes in ``collections.abc``.\nPython's built-in containers include lists, tuples, dictionaries, and sets.\nAnd the built-in containers, simply put, consist of the abstract base classes ``Sized``, ``Container`` and ``Iterable`` in ``collections.abc``.\nIf you try to implement a useless object and implement it in an absurd way, you will not be able to use it properly.\nUsing the abstract base class, you can create useless objects whose behaviour is absurd, but which also work with existing Python objects.\nThrough this experience, you will learn how to use abstract base classes and how to create your own containers correctly.\n\nThe basic agenda is as follows\n\n- Preliminaries: let's create a totally useless object.\n- Basics: start with ``Sized``, ``Container`` and ``Iterable``.\n  - ``ElasticSized``: an object that changes the return value of the ``len()`` function each time it is executed.\n  - ``ForgottenContainer``: an object where the result of the in operator changes each time it is executed.\n  - ``ShuffledIterable``: An object whose ``for`` statement changes the result each time it is executed.\n- Applications: Uncontrolled containers.\n  - ``UncontrolledSequence``: An uncontrolled sequence.\n  - ``MisprintedDictionary``: A misprinted dictionary.\n  - ``CrowdSet``: A crowd set\n\n\u672c\u767a\u8868\u3067\u5b9f\u88c5\u3059\u308bPython\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u307e\u3063\u305f\u304f\u5f79\u306b\u7acb\u3061\u307e\u305b\u3093\u3002\n\u3057\u304b\u3057\u3001\u307e\u3063\u305f\u304f\u5f79\u306b\u7acb\u305f\u306a\u3044\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u88c5\u3059\u308b\u3068\u3001Python\u306e\u30c7\u30fc\u30bf\u578b\u306e\u7406\u89e3\u304c\u6df1\u307e\u308a\u307e\u3059\u3002\n\u305d\u3057\u3066\u3001\u5f79\u306b\u7acb\u3064\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u5b9f\u88c5\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002\n\n\u672c\u767a\u8868\u3067\u6271\u3046\u30c6\u30fc\u30de\u306f2\u3064\u3042\u308a\u307e\u3059\u3002\n\n\u307e\u305a\u3001len()\u95a2\u6570\u3084in\u6f14\u7b97\u5b50\u3001for\u6587\u306e\u88cf\u5074\u3067\u4f55\u304c\u8d77\u304d\u3066\u3044\u308b\u306e\u304b\u3092\u7406\u89e3\u3059\u308b\u3053\u3068\u3067\u3059\u3002\n\u4f8b\u3048\u3070\u3001\u30aa\u30d6\u30b8\u30a7\u30af\u30c8``obj``\u3092``len()``\u95a2\u6570\u306b\u6e21\u3057\u305f\u5834\u5408\u3001``len(obj)``\u306e\u7d50\u679c\u306f``obj.__len__()``\u3092\u8fd4\u3057\u307e\u3059\u3002\n\u3064\u307e\u308a\u3001``obj.__len__()``\u306e\u5b9f\u88c5\u3092\u6ec5\u8336\u82e6\u8336\u306b\u3059\u308c\u3070\u3001``len(obj)``\u306e\u7d50\u679c\u3082\u7121\u8336\u82e6\u8336\u306b\u306a\u308a\u307e\u3059\u3002\n\u306a\u305c\u5f79\u306b\u7acb\u305f\u306a\u3044\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u4f5c\u308c\u308b\u306e\u304b\u3001\u305d\u3057\u3066\u3001\u3069\u3046\u3059\u308c\u3070\u6b63\u3057\u3044\u632f\u308b\u821e\u3044\u3092\u3059\u308b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u5b9f\u88c5\u3067\u304d\u308b\u306e\u304b\u3092\u901a\u3057\u3066\u3001Python\u304c\u88cf\u5074\u3067\u51e6\u7406\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u7406\u89e3\u3057\u307e\u3059\u3002\n\n2\u3064\u76ee\u306f\u3001``collections.abc``\u306b\u3042\u308b\u62bd\u8c61\u57fa\u5e95\u30af\u30e9\u30b9\u306e\u4f7f\u3044\u65b9\u3092\u7406\u89e3\u3059\u308b\u3053\u3068\u3067\u3059\u3002\nPython\u306e\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30c6\u30ca\u3068\u3057\u3066\u30ea\u30b9\u30c8\u3001\u30bf\u30d7\u30eb\u3001\u8f9e\u66f8\u3001\u96c6\u5408\u304c\u3042\u308a\u307e\u3059\u3002\n\u305d\u3057\u3066\u3001\u7d44\u307f\u8fbc\u307f\u30b3\u30f3\u30c6\u30ca\u306f\u3001\u7c21\u5358\u306b\u8a00\u3048\u3070``collections.abc``\u306b\u3042\u308b\u62bd\u8c61\u57fa\u5e95\u30af\u30e9\u30b9``Sized``\u3001``Container``\u3001``Iterable``\u304b\u3089\u306a\u308a\u307e\u3059\u3002\n\u5f79\u306b\u7acb\u305f\u306a\u3044\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u5b9f\u88c5\u3057\u3088\u3046\u3068\u3057\u3066\u7121\u8336\u82e6\u8336\u306b\u5b9f\u88c5\u3057\u3066\u3082\u6b63\u3057\u304f\u4f7f\u3048\u307e\u305b\u3093\u3002\n\u62bd\u8c61\u57fa\u5e95\u30af\u30e9\u30b9\u306e\u52a9\u3051\u3092\u501f\u308a\u308b\u3053\u3068\u3067\u3001\u632f\u308b\u821e\u3044\u306f\u7121\u8336\u82e6\u8336\u306a\u306e\u306b\u65e2\u5b58\u306ePython\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u3082\u5354\u8abf\u3059\u308b\u5f79\u306b\u7acb\u305f\u306a\u3044\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u308a\u307e\u3059\u3002\n\u305d\u306e\u7d4c\u9a13\u3092\u901a\u3057\u3066\u3001\u62bd\u8c61\u57fa\u5e95\u30af\u30e9\u30b9\u306e\u4f7f\u3044\u65b9\u3084\u6b63\u3057\u3044\u81ea\u4f5c\u30b3\u30f3\u30c6\u30ca\u306e\u4f5c\u308a\u65b9\u3092\u5b66\u3076\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\n\n\u57fa\u672c\u7684\u306a\u30a2\u30b8\u30a7\u30f3\u30c0\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3059\u3002\n\n- \u524d\u8aac\uff1a\u307e\u3063\u305f\u304f\u5f79\u306b\u7acb\u305f\u306a\u3044\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f5c\u308d\u3046\n- \u57fa\u672c\u7de8\uff1a``Sized``\u3001``Container``\u3001``Iterable``\u304b\u3089\u59cb\u3081\u3088\u3046\n  - ``ElasticSized``\uff1a \u5b9f\u884c\u3059\u308b\u305f\u3073\u306blen()\u95a2\u6570\u306e\u8fd4\u308a\u5024\u304c\u5909\u5316\u3059\u308b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\n  - ``ForgottenContainer``\uff1a \u5b9f\u884c\u3059\u308b\u305f\u3073\u306bin\u6f14\u7b97\u5b50\u306e\u7d50\u679c\u304c\u5909\u5316\u3059\u308b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\n  - ``ShuffledIterable``\uff1a ``for``\u6587\u306e\u5b9f\u884c\u7d50\u679c\u304c\u6bce\u56de\u5909\u308f\u308b\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\n- \u5fdc\u7528\u7de8\uff1a \u5909\u308f\u308a\u679c\u3066\u305f\u30b3\u30f3\u30c6\u30ca\u305f\u3061\n  - ``UncontrolledSequence``\uff1a \u7121\u79e9\u5e8f\u306a\u30b7\u30fc\u30b1\u30f3\u30b9\n  - ``MisprintedDictionary`` \u4e71\u4e01\u3057\u305f\u8f9e\u66f8\n  - ``CrowdSet``\uff1a \u70cf\u5408\u306e\u96c6\u5408", "recording_license": "", "do_not_record": false, "persons": [{"code": "YY9MKV", "name": "Hayao Suzuki", "avatar": "https://pretalx.com/media/avatars/YY9MKV_fR7oU3G.webp", "biography": "- Master of Engineering, The University of Electro-Communications, Tokyo https://www.uec.ac.jp\n- BeProud Inc. https://www.beproud.jp\n- Translated Book: Python Distilled https://www.oreilly.co.jp/books/9784814400461/\n- Twitter account is here: https://twitter.com/CardinalXaro", "public_name": "Hayao Suzuki", "guid": "4e94a837-e011-5d13-8523-9dc1dcfe1976", "url": "https://pretalx.com/pyconapac2023/speaker/YY9MKV/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/UAYG3F/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/UAYG3F/", "attachments": []}, {"guid": "3b6f7e75-533f-5f35-9b06-18a224640de1", "code": "VNQKHW", "id": 31890, "logo": null, "date": "2023-10-28T13:30:00+09:00", "start": "13:30", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-31890-parallel-code-with-python-3-12-sub-interpreters", "url": "https://pretalx.com/pyconapac2023/talk/VNQKHW/", "title": "Parallel code with Python 3.12 sub-interpreters", "subtitle": "", "track": "Python core", "type": "Regular Talk", "language": "en", "abstract": "Python 3.12 comes with an exciting new feature -- sub-interpreters. Sub-interpreters are a new programming model for Python that enable parallel execution of your code, without needing separate processes. In this talk, you will learn about sub-interpreters, how and where to use them.", "description": "Sub-Interpreters are a new feature in Python 3.12, scheduled for release in October/November 2023. Sub-Interpreters each have their own Global Interpreter Lock (GIL) meaning that you can execute code in parallel on multiple CPU cores without using multiple processes. In this talk, we will explore what parallel computation is, why it (was) hard in Python and how sub-interpreters solve that problem. We will show 3 working applications using sub-interpreters.", "recording_license": "", "do_not_record": false, "persons": [{"code": "EXZMKL", "name": "Deleted User", "avatar": null, "biography": "Anthony Shaw is a Python advocate at Microsoft from Sydney, Australia. Anthony is a contributor to many open-source communities. Running and contributing to several popular open-source tools for DevOps, Security, Automation and Code Quality. Anthony has been recognised for his contribution to open-source, including as Fellow of the Python Software Foundation and member of the Apache Software Foundation. Anthony runs a Python blog and YouTube channel and has recently published a book, \"CPython Internals\", on the Python compiler.", "public_name": "Deleted User", "guid": "03331733-1604-5e93-af03-afa4f8d0a21e", "url": "https://pretalx.com/pyconapac2023/speaker/EXZMKL/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VNQKHW/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VNQKHW/", "attachments": []}, {"guid": "151cb5ab-aa34-5035-80a6-4fe7bdf1fb06", "code": "EFRGJM", "id": 32658, "logo": null, "date": "2023-10-28T14:10:00+09:00", "start": "14:10", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32658-reformating-your-code-without-ai-let-s-see-how-a-formatter-work", "url": "https://pretalx.com/pyconapac2023/talk/EFRGJM/", "title": "Reformating your code without AI - let's see how a formatter work", "subtitle": "", "track": "Test for development", "type": "Regular Talk", "language": "en", "abstract": "We don\u2019t need AI for writing better code! Formators like Black and PyBetter have been automatically refactoring messy code way before AI agents claim to help you write codes. In this talk, we are going to explore how formatters analyse and manipulate the CST of your code to make it nicer.", "description": "Recently year there are AI agents that pops up in the market saying that they can help you to write code. However, there are tools out there that have been used over decades that can help us write better codes - the auto formats like Black and PyBetter that can refactor your code into nicer-looking ones. In this talk, we are going to explore how auto-formators analyse and manipulate the CST of your code to make it nicer.\n\nFirst, we will introduce what is an Abstract Syntax Tree (AST) and a Concrete Syntax Tree (CST). Next, we will talk about libcst and how it analyses the code and express the CST of your code as Python objects. Then, we explore how we can use the match method provided and modify our code if the logic matches. By the end of it, the auto-formators would not be a mystery for the audience anymore as we now understand the inner working of it.\n\n## Outline\n\n- Introduction: What is AST and what is CST, and what are the differences (5 mins)\n- Introducing libcst: example codes (5 mins)\n- Matching CST patterns: example of doing it with libcst 5 mins)\n- How auto-formatter works (10 mins)\n- Conclusions (5 mins)", "recording_license": "", "do_not_record": false, "persons": [{"code": "8EGVC9", "name": "Cheuk Ting Ho", "avatar": "https://pretalx.com/media/avatars/8EGVC9_LbezfQb.webp", "biography": "Before working in Developer Relations, Cheuk has been a Data Scientist in various companies which demands high numerical and programmatical skills, especially in Python. To follow her passion for the tech community, Cheuk is now the Developer Advocate at Anaconda. Cheuk also contributes to multiple Open Source libraries like Hypothesis and Pandas.\n\nBesides her work, Cheuk enjoys talking about Python on personal streaming platforms and podcasts. Cheuk has also been a speaker at Universities and various conferences. Besides speaking at conferences, Cheuk also organises events for developers. Conferences that Cheuk has organized include EuroPython (which she is a board member), PyData Global and Pyjamas Conf. Believing in Tech Diversity and Inclusion, Cheuk constantly organizes workshops and mentored sprints for minority groups. In 2021, Cheuk has become a Python Software Foundation fellow.", "public_name": "Cheuk Ting Ho", "guid": "6acb0b45-07a8-5f1c-a3fa-45ae8f0a9858", "url": "https://pretalx.com/pyconapac2023/speaker/8EGVC9/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/EFRGJM/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/EFRGJM/", "attachments": []}, {"guid": "4b7b067f-a2b3-5c78-852d-cfe3f3ad0773", "code": "XEGZUD", "id": 32169, "logo": null, "date": "2023-10-28T15:20:00+09:00", "start": "15:20", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-32169-comparison-of-packaging-tools-in-2023", "url": "https://pretalx.com/pyconapac2023/talk/XEGZUD/", "title": "Comparison of Packaging Tools in 2023", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Today, there are so many options for Python package management tools, such as pip (with venv), poetry, pipenv, ....\n\nI'll compare those tools for people wondering which to use for package management tools in 2023.\n\nThis talk will be for people wondering which to use for package management tools, including library or framework developers, web developers, and automation script developers.", "description": "## Background of this talk\n\nI wrote and posted an article in January 2023 (written in Japanese; the translated title is \"Why don't you use just pip with venv for Python package management?\")\nI received more likes and felt surprised and happy. There might also be a demand for a sequel-like article.\n\n\n## Target Audiences\n\nI will this talk for those wondering which package management tools to use.\n\nEspecially:\n\n- Library or framework developers\n- Web Developers\n- Automation Script developers\n\n## Motivation and Objectives\n\nWhich of the following is the best option? [poetry](https://python-poetry.org/), [pipenv](https://pipenv.pypa.io/en/latest/), [pdm](https://pdm.fming.dev/latest/), [hatch](https://hatch.pypa.io/latest/) [pip-tools](https://github.com/jazzband/pip-tools), or just venv and pip? What is the best Python package and dependency management tool today?\n\nThe environment around these tools is changing dramatically; the adoption of several PEPs, including PEP [621](https://peps.python.org/pep-0621/), [517](https://peps.python.org/pep-0517/), and [660](https://peps.python.org/pep-0660/).\n\nI will compare pros / cons and propose three use cases; based on several years of experience following Python package specifications.\n\n### Topics not covered\n\n* Each detail of the PEPs\n* Specifications and implementations of these tools\n\n## Planned Outline\n\n1. Self-introduction, Table of Contents\n2. Introduction:\n    1. Background, Motivations\n    2. Target Audiences of this Talk\n    3. List of Packaging tools to compare in this Talk\n3. Pros / Cons for each tools:\n    1. [pip](https://pip.pypa.io/en/stable/index.html) (with venv)\n    2. [pipenv](https://pipenv.pypa.io/en/latest/)\n    3. [poetry](https://python-poetry.org)\n    4. [pdm](https://pdm.fming.dev/latest/)\n    5. [pip-tools](https://pip-tools.readthedocs.io/en/latest/)\n    6. [hatch](https://hatch.pypa.io/latest/)\n4. What is the best tool? (In some use cases)\n    1. Case 1: Library / Framework Developing\n    2. Case 2: Web Application Developing\n    3. Case 3: Automation Script Developing\n5. Summary\n6. (Appendix) About the [rye](https://rye-up.com/)", "recording_license": "", "do_not_record": false, "persons": [{"code": "FZCJFP", "name": "Peacock", "avatar": "https://pretalx.com/media/avatars/FZCJFP_vgtEhpt.webp", "biography": "PyCon JP 2020\u3088\u308a\u30dc\u30e9\u30f3\u30c6\u30a3\u30a2\u30b9\u30bf\u30c3\u30d5\u3068\u3057\u3066\u6d3b\u52d5\u3002\u526f\u5ea7\u9577\u3068\u3057\u3066\u306f2022\u3088\u308a\u3002\u4e00\u822c\u793e\u56e3\u6cd5\u4ebaPyCon JP Association\u306e\u904b\u55b6\u30e1\u30f3\u30d0\u30fc\u3067\u3082\u3042\u308a\u3001PyCon JP TV\u306e\u30c7\u30a3\u30ec\u30af\u30bf\u30fc\u3082\u52d9\u3081\u308b\u3002\n\nEuroPython 2021, PyCon APAC 2021, PyCon US 2022\u306a\u3069\u3067\u767a\u8868\u306e\u7d4c\u9a13\u3092\u7a4d\u3093\u3067\u3044\u308b\u3002\n\n\u666e\u6bb5\u306f\u682a\u5f0f\u4f1a\u793e\u30c8\u30c3\u30d7\u30b2\u30fc\u30c8\u3067Google Cloud\u306b\u3088\u308bIaC\u3068DevOps\u306e\u63a8\u9032\u3084Golang\u306b\u3088\u308bWeb API\u958b\u767a\u306a\u3069\u3092\u884c\u3063\u3066\u3044\u308b\u3002\u8da3\u5473\u306f\u30df\u30e9\u30fc\u30ec\u30b9\u30ab\u30e1\u30e9\u3001\u30b9\u30ad\u30fc\u3001\u30af\u30e9\u30b7\u30c3\u30af\u97f3\u697d\u9451\u8cde\u306a\u3069\u3002\n\nHe started serving as a volunteer staff member in 2020. Since 2022, he's been the vice-chair. And, also part of the PyCon JP Association's Operating Member, as a director of the PyCon JP TV.\n\nAt TOPGATE, Inc. he pushes for IaC and DevOps with Google Cloud and develops Golang Web APIs. His hobbies include mirrorless cameras, skiing, and classical music.", "public_name": "Peacock", "guid": "8ef175d9-07b4-5043-9b9b-45f643357590", "url": "https://pretalx.com/pyconapac2023/speaker/FZCJFP/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/XEGZUD/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/XEGZUD/", "attachments": []}, {"guid": "c357ad27-c86d-5fd0-a3f4-6e3b20e0a8be", "code": "LZCKR9", "id": 33078, "logo": null, "date": "2023-10-28T16:00:00+09:00", "start": "16:00", "duration": "00:30", "room": "track 2", "slug": "pyconapac2023-33078-the-best-of-python-a-review-of-some-of-its-slickest-features", "url": "https://pretalx.com/pyconapac2023/talk/LZCKR9/", "title": "The Best of Python: A Review of Some of its Slickest Features", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Ever heard of syntactic sugar? Its syntax that makes code easier to read, write, and understand... and Python is full of it! In this talk, we'll dive into some of Python's most powerful syntactic sugar including decorators, context managers, and more. Whether you're new to Python or experienced, you'll walk away from this talk with tips and tricks to effortlessly write slick, readable code.", "description": "In this talk, we will discuss the following Python features:\n- Decorators\n- Context managers\n- List Comprehensions\n- Magic Methods\nThis talk will break down each topic with code examples so that newcomers can understand these more advanced concepts and folks who have experience with Python can get a refresher on how they work.", "recording_license": "", "do_not_record": false, "persons": [{"code": "YT7HSK", "name": "Uma Annamalai", "avatar": "https://pretalx.com/media/avatars/YT7HSK_nO17EAL.webp", "biography": "Uma is a software engineer on the Python agent team at New Relic. She has previously worked on software in the healthcare and marketing industries as well as hardware at Oracle. She has also worked on research projects focused on barriers newcomers face when contributing to open source projects. She has been published in multiple international technical journals including the Computer Support Cooperative Works.", "public_name": "Uma Annamalai", "guid": "b1e0e471-aaa6-5147-9fad-f5b9e085f1a1", "url": "https://pretalx.com/pyconapac2023/speaker/YT7HSK/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/LZCKR9/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/LZCKR9/", "attachments": []}], "track 3": [{"guid": "5e6f37f5-8db6-5476-8181-08a25b977463", "code": "FHRP3H", "id": 32678, "logo": null, "date": "2023-10-28T11:45:00+09:00", "start": "11:45", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-32678-memray", "url": "https://pretalx.com/pyconapac2023/talk/FHRP3H/", "title": "\u30e1\u30e2\u30ea\u30d7\u30ed\u30d5\u30a1\u30a4\u30e9Memray\u306e\u30b9\u30b9\u30e1", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "Python\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u969b\u306e\u30e1\u30e2\u30ea\u30d7\u30ed\u30d5\u30a1\u30a4\u30ea\u30f3\u30b0\u306f\u91cd\u8981\u3067\u3059\u3002\u305f\u3060\u3001\u5b9f\u614b\u3092\u63b4\u3080\u306e\u306f\u96e3\u3057\u3044\u3067\u3059\u3002\u30e1\u30e2\u30ea\u30d7\u30ed\u30d5\u30a1\u30a4\u30ea\u30f3\u30b0\u306e\u624b\u6cd5\u306f\u5927\u304d\u304f\u5206\u3051\u30662\u3064\u6709\u308a\u307e\u3059\u3002\u305d\u308c\u3089\u306e\u7279\u5fb4\u3092\u77e5\u308a\u3001\u3088\u308a\u5b9f\u614b\u3092\u3064\u304b\u307f\u3084\u3059\u3044\u30c8\u30ec\u30fc\u30b7\u30f3\u30b0\u624b\u6cd5\u3092\u7528\u3044\u3066\u3066\u3044\u308b\u30c4\u30fc\u30eb\u3067\u3042\u308b [Memray](https://bloomberg.github.io/memray/) \u306e\u4f7f\u3044\u65b9\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3001Python\u306e\u30e1\u30e2\u30ea\u72b6\u614b\u306e\u8a73\u7d30\u3092\u30c7\u30e2\u753b\u9762\u3092\u4ea4\u3048\u306a\u304c\u3089\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n\u30ea\u30b9\u30c8\u306e\u4f5c\u308a\u65b9\u306b\u3088\u308b\u9055\u3044\u3084\u3001NumPy\u306e\u30e1\u30e2\u30ea\u78ba\u4fdd\u306e\u72b6\u6cc1\u304c\u308f\u304b\u308a\u307e\u3059\u3002\u3055\u307e\u3056\u307e\u306a\u30a2\u30a6\u30c8\u30d7\u30c3\u30c8\u65b9\u6cd5\u304c\u3042\u308a\u307e\u3059\u306e\u3067\u305d\u308c\u3089\u306e\u9055\u3044\u306b\u3064\u3044\u3066\u3082\u89e3\u8aac\u3057\u307e\u3059\u3002Jupyter Integration\u3082\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n\u3053\u306e\u30c8\u30fc\u30af\u3092\u898b\u305f\u3089\u3001\u81ea\u8eab\u306e\u30b3\u30fc\u30c9\u306e\u30e1\u30e2\u30ea\u72b6\u614b\u306e\u8a73\u7d30\u3092\u78ba\u8a8d\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002", "description": "Memray\u306f\u3001Python3.11\u306e\u30ea\u30ea\u30fc\u30b9\u30de\u30cd\u30fc\u30b8\u30e3\u30fc\u306e\u300cPablo\u6c0f\u300d\u304c\u958b\u767a\u306e\u4e2d\u5fc3\u306b\u3044\u308b\u6ce8\u76ee\u306e\u30c4\u30fc\u30eb\u3067\u3059\u3002\n\n\u30c7\u30fc\u30bf\u5206\u6790\u3084\u30b7\u30df\u30e5\u30ec\u30fc\u30b7\u30e7\u30f3\u3092\u884c\u3046\u969b\u306b\u5927\u304d\u306a\u30c7\u30fc\u30bf\u3092\u4f7f\u3046\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002\u305d\u306e\u969b\u306e\u30e1\u30e2\u30ea\u72b6\u614b\u3092\u898b\u308b\u306e\u306f\u91cd\u8981\u3067\u3059\u3002NumPy\u306a\u3069\u306eC\u62e1\u5f35\u304c\u4f7f\u308f\u308c\u3066\u3044\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u304c\u78ba\u4fdd\u3059\u308b\u30e1\u30e2\u30ea\u306e\u72b6\u614b\u3092\u898b\u308b\u306e\u306f\u96e3\u3057\u3044\u3067\u3059\u304c\u3001\u4eca\u56de\u7d39\u4ecb\u3059\u308bMemray\u306fC\u62e1\u5f35\u3092\u542b\u3080Python\u30b3\u30fc\u30c9\u304c\u5b9f\u884c\u3055\u308c\u305f\u30e1\u30e2\u30ea\u306e\u72b6\u614b\u3092\u8a73\u7d30\u306b\u30c8\u30ec\u30fc\u30b7\u30f3\u30b0\u3057\u307e\u3059\u3002\n\u307e\u305f\u3001\u5b50\u30d7\u30ed\u30bb\u30b9\u3092\u751f\u6210\u3059\u308b `Celery` \u3084 `Gunicorn` \u306a\u3069\u306e\u72b6\u6cc1\u3082\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002\n\n## \u30c8\u30fc\u30af\u306e\u6d41\u308c\n\n- \u30e1\u30e2\u30ea\u30d7\u30ed\u30d5\u30a1\u30a4\u30e9\u3068\u306f\n    - \u5fc5\u8981\u6027\n    - 2\u3064\u306e\u624b\u6cd5\u3092\u7d39\u4ecb\n    - \u30c4\u30fc\u30eb\u306e\u7d39\u4ecb\n    - \u30d7\u30ed\u30d5\u30a1\u30a4\u30ea\u30f3\u30b0\u306e\u96e3\u3057\u3055\n- Python\u7528\u30e1\u30e2\u30ea\u30d7\u30ed\u30d5\u30a1\u30a4\u30e9Memray\u306e\u7d39\u4ecb\n- Memray\u306e\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\n    - \u30d7\u30ed\u30d5\u30a1\u30a4\u30eb\u306e\u5b9f\u884c\n    - \u7d50\u679c\u306e\u8868\u793a\n    - \u73fe\u72b6\u3092\u30e9\u30a4\u30d6\u3067\u898b\u308b\n- Python\u306e\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306b\u3088\u308b\u9055\u3044\n    - \u30e1\u30e2\u30ea\u306e\u78ba\u4fdd\u72b6\u6cc1\u306e\u9055\u3044\n    - \u5b9f\u884c\u6642\u9593\u306e\u9055\u3044\u3082\u898b\u308c\u308b\n- NumPy\u3092\u4f7f\u3063\u305f\u78ba\u8a8d\n    - \u30e1\u30e2\u30ea\u78ba\u4fdd\u306e\u53ef\u8996\u5316\n    - C\u62e1\u5f35\u3067\u3082\u72b6\u6cc1\u304c\u304d\u3061\u3093\u3068\u308f\u304b\u308b\n- \u4e00\u6b69\u9032\u3093\u3060\u4f7f\u3044\u65b9\n    - Jupyter Integration \u3092\u4f7f\u3046\n    - with \u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3067\u90e8\u5206\u7684\u306b\u72b6\u614b\u3092\u898b\u308b\n    - pytest limit \u3067\u30c6\u30b9\u30c8\u306b\u30e1\u30e2\u30ea\u5236\u9650\u3092\u8a2d\u3051\u308b", "recording_license": "", "do_not_record": false, "persons": [{"code": "PUXNLK", "name": "Manabu TERADA", "avatar": "https://pretalx.com/media/avatars/PUXNLK_pj6Hjhc.webp", "biography": "Python Web\u95a2\u4fc2\u306e\u696d\u52d9\u3092\u4e2d\u5fc3\u306b\u30b3\u30f3\u30b5\u30eb\u30c6\u30a3\u30f3\u30b0\u3084\u30b7\u30b9\u30c6\u30e0\u69cb\u7bc9\u3092(\u682a)CMS\u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3\u30ba\u4ee3\u8868\u53d6\u7de0\u5f79\u3068\u3057\u3066\u624b\u304c\u3051\u3066\u3044\u308b\u3002\n\nPython\u3092\u306f\u3058\u3081\u3068\u3057\u305f\u6280\u8853\u8a71\u984c\u3092\u6271\u3046Podcast\u300cterapyon channel\u300dhttps://podcast.terapyon.net/ \u3092\u914d\u4fe1\u4e2d\u3002\u6a5f\u68b0\u5b66\u7fd2\u56f3\u9451(\u7fd4\u6cf3\u793e: 2019\u5e744\u6708)\u3092\u5171\u8457\u3001Python\u306b\u3088\u308b\u3042\u305f\u3089\u3057\u3044\u30c7\u30fc\u30bf\u5206\u6790\u306e\u6559\u79d1\u66f8\u7b2c2\u7248(\u7fd4\u6cf3\u793e: 2022\u5e7410\u6708)\u3092\u5171\u8457\u3001\u30b9\u30e9\u30b9\u30e9\u308f\u304b\u308bPython \u7b2c2\u7248(\u7fd4\u6cf3\u793e: 2021\u5e7412\u6708)\u3092\u76e3\u4fee\u3001Python\u30cf\u30c3\u30ab\u30fc\u30ac\u30a4\u30c9\u30d6\u30c3\u30af(\u30de\u30a4\u30ca\u30d3\u51fa\u7248: 2020\u5e745\u6708)\u3092\u76e3\u8a33\u3001\u305d\u306e\u4ed6\u57f7\u7b46\u6d3b\u52d5\u3082\u884c\u3063\u3066\u3044\u308b\u3002\n\n- (\u682a)CMS\u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3\u30ba\u3000\u4ee3\u8868\u53d6\u7de0\u5f79  https://www.cmscom.jp\n- \u4e00\u822c\u793e\u56e3\u6cd5\u4ebaPyCon JP Association \u7406\u4e8b  http://www.pycon.jp\n- \u4e00\u822c\u793e\u56e3\u6cd5\u4ebaPython\u30a8\u30f3\u30b8\u30cb\u30a2\u80b2\u6210\u63a8\u9032\u5354\u4f1a\u3000\u9867\u554f\u7406\u4e8b https://www.pythonic-exam.com\n- PSF(Python Software Foundation) Fellow member 2019Q3 & Contributing members https://www.python.org/psf/membership/\n- Plone Foundation Ambassador  https://plone.org", "public_name": "Manabu TERADA", "guid": "163ce9bd-18c5-5c68-85bc-ca7b0dd99a43", "url": "https://pretalx.com/pyconapac2023/speaker/PUXNLK/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/FHRP3H/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/FHRP3H/", "attachments": []}, {"guid": "786f4629-23cd-5fd0-bd23-cb449d678f87", "code": "HUBWPQ", "id": 31320, "logo": null, "date": "2023-10-28T13:30:00+09:00", "start": "13:30", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-31320-python", "url": "https://pretalx.com/pyconapac2023/talk/HUBWPQ/", "title": "Python\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u5f37\u5316", "subtitle": "", "track": "Test for development", "type": "Regular Talk", "language": "en", "abstract": "\u30de\u30a4\u30af\u30ed\u30b5\u30fc\u30d3\u30b9\u3092\u306f\u3058\u3081\u3068\u3059\u308b\u591a\u6570\u306e\u30b3\u30f3\u30dd\u30fc\u30cd\u30f3\u30c8\u3067\u52d5\u4f5c\u3059\u308b\u30b7\u30b9\u30c6\u30e0\u304c\u4e00\u822c\u7684\u3068\u306a\u308b\u306a\u304b\u3001\u30b7\u30b9\u30c6\u30e0\u306e\u72b6\u6cc1\u3092\u7d20\u65e9\u304f\u7406\u89e3\u3059\u308b\u305f\u3081\u306e\u4ed5\u7d44\u307f\u3068\u3057\u3066\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u304c\u6ce8\u76ee\u3055\u308c\u3066\u3044\u307e\u3059\u3002\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u307e\u305a\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u306a\u305c\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u304c\u5fc5\u8981\u304b\u3001\u305d\u306e\u91cd\u8981\u6027\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u6b21\u306bOpenTelemetry\u3092\u4f7f\u3063\u3066Python\u88fd\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u3092\u78ba\u4fdd\u3059\u308b\u65b9\u6cd5\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3057\u3001\u5b9f\u969b\u306b\u3069\u306e\u3088\u3046\u306b\u554f\u984c\u304c\u89e3\u6c7a\u3067\u304d\u308b\u304b\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\u3053\u3053\u3067OpenTelemetry\u306ePython\u306a\u3089\u3067\u306f\u306e\u6a5f\u80fd\u306b\u3064\u3044\u3066\u3082\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u6700\u5f8c\u306b\u3001Python\u88fd\u30b5\u30fc\u30d3\u30b9\u3092\u958b\u767a\u904b\u7528\u3059\u308b\u969b\u306b\u3001\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u306b\u3088\u3063\u3066\u5f97\u3089\u308c\u305f\u30c6\u30ec\u30e1\u30c8\u30ea\u30fc\u3092\u6d3b\u304b\u3057\u3066\u3001\u958b\u767a\u8005\u3068\u904b\u7528\u62c5\u5f53\u8005\u304c\u3001\u3069\u306e\u3088\u3046\u306b\u958b\u767a\u904b\u7528\u30d7\u30ed\u30bb\u30b9\u3092\u6539\u5584\u3067\u304d\u308b\u304b\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002", "description": "\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u306fPython\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u8005\u304c\u3001\u30b7\u30b9\u30c6\u30e0\u306e\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u3092\u78ba\u4fdd\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u3053\u3068\u306e\u6982\u8981\u3068\u3001\u305d\u308c\u306b\u5fc5\u8981\u306a\u624b\u7d9a\u304d\u3092\u7406\u89e3\u3059\u308b\u4e0a\u3067\u3001\u51fa\u767a\u70b9\u3068\u306a\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u3002\u3059\u3067\u306b\u53d6\u308a\u7d44\u3093\u3067\u3044\u308b\u958b\u767a\u8005\u306e\u65b9\u306b\u3068\u3063\u3066\u3082\u3001\u7406\u89e3\u3092\u6574\u7406\u3059\u308b\u826f\u3044\u304d\u3063\u304b\u3051\u3068\u306a\u308b\u3053\u3068\u3092\u671f\u5f85\u3057\u3066\u3044\u307e\u3059\u3002\n\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u306f\u6b21\u306e\u3088\u3046\u306a\u69cb\u6210\u3092\u8003\u3048\u3066\u3044\u307e\u3059\u3002\n* \u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u3068\u306f\u306a\u306b\u304b\n  * \u5b9a\u7fa9\u306b\u3064\u3044\u3066\n* \u30c6\u30ec\u30e1\u30c8\u30ea\u30fc\u306e\u7a2e\u985e\u306b\u3064\u3044\u3066\n  * \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u8005\u306e\u4f5c\u696d\uff08\u8a08\u88c5\uff09\u306b\u3064\u3044\u3066\n* OpenTelemetry\u306e\u7d39\u4ecb\n  * \u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u6982\u8981\n  * Python\u3067\u306e\u5229\u7528\u65b9\u6cd5\n  * Python\u306a\u3089\u3067\u306f\u306e\u81ea\u52d5\u8a08\u88c5\n* \u30b5\u30fc\u30d3\u30b9\u30ec\u30d9\u30eb\u76ee\u6a19\u306b\u3064\u3044\u3066\n  * \u5b9a\u7fa9\n  * \u6d3b\u7528\u65b9\u6cd5\n\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u7d42\u3048\u308b\u9803\u306b\u306f\u3001\u30b7\u30b9\u30c6\u30e0\u306b\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u304c\u5fc5\u8981\u3067\u3042\u308b\u3053\u3068\u3001\u305d\u3057\u3066\u305d\u306e\u305f\u3081\u306b\u306f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u8005\u306e\u5354\u529b\u304c\u4e0d\u53ef\u6b20\u3067\u3042\u308b\u3053\u3068\u3001\u305d\u3057\u3066\u3072\u3044\u3066\u306f\u305d\u308c\u304c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u306e\u901f\u5ea6\u3092\u65e9\u3081\u3001\u30b7\u30b9\u30c6\u30e0\u306e\u30e6\u30fc\u30b6\u30fc\u306b\u5bfe\u3059\u308b\u4fe1\u983c\u6027\u3092\u9ad8\u3081\u308b\u3053\u3068\u306b\u7e4b\u304c\u308b\u3053\u3068\u304c\u7406\u89e3\u3055\u308c\u308b\u3068\u601d\u3044\u307e\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "3G78PA", "name": "\u5c71\u53e3\u80fd\u8fea", "avatar": "https://pretalx.com/media/avatars/3G78PA_vmAzsQ0.webp", "biography": "\u30b0\u30fc\u30b0\u30eb\u5408\u540c\u4f1a\u793e\u30b7\u30cb\u30a2\u30c7\u30d9\u30ed\u30c3\u30d1\u30fc\u30ea\u30ec\u30fc\u30b7\u30e7\u30f3\u30ba\u30a8\u30f3\u30b8\u30cb\u30a2\u3002\u30af\u30e9\u30a6\u30c9\u88fd\u54c1\u306e\u666e\u53ca\u3068\u6280\u8853\u652f\u63f4\u3092\u62c5\u5f53\u3057\u3001\u7279\u306b\u30aa\u30d6\u30b6\u30fc\u30d0\u30d3\u30ea\u30c6\u30a3\u3001SRE\u3001DevOps\u3068\u3044\u3063\u305f\u9818\u57df\u3092\u62c5\u5f53\u3002OpenTelemetry\u3084Go\u306e\u30b3\u30df\u30e5\u30cb\u30c6\u30a3\u306e\u652f\u63f4\u3082\u6d3b\u767a\u306b\u884c\u3063\u3066\u3044\u308b\u3002\u4ee5\u524d\u306f\u30a6\u30a7\u30d6\u3001Android\u3001Google\u30a2\u30b7\u30b9\u30bf\u30f3\u30c8\u306a\u3069\u3068\u5404\u7a2e\u65b0\u898f\u88fd\u54c1\u30fb\u65b0\u898f\u6a5f\u80fd\u306e\u30ea\u30ea\u30fc\u30b9\u3068\u666e\u53ca\u306b\u95a2\u308f\u308a\u3001\u591a\u304f\u306e\u516c\u958b\u4e8b\u4f8b\u306e\u6280\u8853\u652f\u63f4\u3092\u62c5\u5f53\u3002\u597d\u304d\u306a\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0\u8a00\u8a9e\u306e\u50be\u5411\u306f\u3001\u5b9f\u7528\u6307\u5411\u3067\u6a19\u6e96\u306e\u5fc5\u8981\u5341\u5206\u306b\u91cd\u304d\u3092\u7f6e\u304f\u3082\u306e\u3067\u3001\u7279\u306bGo\u3084Python\u3092\u597d\u3093\u3067\u3044\u308b\u3002", "public_name": "\u5c71\u53e3\u80fd\u8fea", "guid": "78e8a0bf-834f-5130-929d-2735f23f6e8c", "url": "https://pretalx.com/pyconapac2023/speaker/3G78PA/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/HUBWPQ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/HUBWPQ/", "attachments": []}, {"guid": "420b57e7-300b-54eb-8cf8-bdda7b047d73", "code": "FHTQDR", "id": 33069, "logo": null, "date": "2023-10-28T14:10:00+09:00", "start": "14:10", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-33069", "url": "https://pretalx.com/pyconapac2023/talk/FHTQDR/", "title": "\u3042\u306a\u305f\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u672c\u756a\u30b7\u30b9\u30c6\u30e0\u3067\u52d5\u304b\u3059\u305f\u3081\u306b", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "Web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u958b\u767a\u3068\u904b\u7528\u306b\u304a\u3044\u3066\u5fc5\u8981\u306a\u77e5\u8b58\u306f\u591a\u5c90\u306b\u6e21\u308a\u307e\u3059\u3002\n\n\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u306e\u4f7f\u3044\u65b9\u3092\u899a\u3048\u308b\u3053\u3068\u306f\u3082\u3061\u308d\u3093\u91cd\u8981\u3067\u3059\u304c\u3001\u958b\u767a\u3057\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u672c\u756a\u30b7\u30b9\u30c6\u30e0\u306b\u30ea\u30ea\u30fc\u30b9\u3057\u3066\u5b9f\u969b\u306b\u7a3c\u50cd\u3059\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002  \n\u305d\u3057\u3066\u3001\u30ea\u30ea\u30fc\u30b9\u3057\u305f\u30b7\u30b9\u30c6\u30e0\u306f\u7d99\u7d9a\u7684\u306b\u904b\u7528\u3057\u3066\u3044\u304f\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\n\n\u3053\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u672c\u756a\u30b7\u30b9\u30c6\u30e0\u3067\u306e\u904b\u7528\u3092\u898b\u636e\u3048\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u306b\u5fc5\u8981\u306a\u77e5\u8b58\u3084\u52d8\u6240\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002", "description": "Web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u958b\u767a\u3068\u904b\u7528\u306b\u304a\u3044\u3066\u5fc5\u8981\u306a\u77e5\u8b58\u306f\u591a\u5c90\u306b\u6e21\u308a\u307e\u3059\u3002\n\n\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u306e\u4f7f\u3044\u65b9\u3092\u899a\u3048\u308b\u3053\u3068\u306f\u3082\u3061\u308d\u3093\u91cd\u8981\u3067\u3059\u304c\u3001\u958b\u767a\u3057\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u672c\u756a\u30b7\u30b9\u30c6\u30e0\u306b\u30ea\u30ea\u30fc\u30b9\u3057\u3066\u5b9f\u969b\u306b\u7a3c\u50cd\u3059\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002  \n\u305d\u3057\u3066\u3001\u30ea\u30ea\u30fc\u30b9\u3057\u305f\u30b7\u30b9\u30c6\u30e0\u306f\u7d99\u7d9a\u7684\u306b\u904b\u7528\u3057\u3066\u3044\u304f\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\n\n\u3053\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u672c\u756a\u30b7\u30b9\u30c6\u30e0\u3067\u306e\u904b\u7528\u3092\u898b\u636e\u3048\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u306b\u5fc5\u8981\u306a\u77e5\u8b58\u3084\u52d8\u6240\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n\u4e3b\u306b\u521d\u7d1a\uff5e\u4e2d\u7d1a\u306e\u30a8\u30f3\u30b8\u30cb\u30a2\u5411\u3051\u3092\u60f3\u5b9a\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u7279\u306b\u521d\u5b66\u8005\u306e\u65b9\u306b\u3068\u3063\u3066\u306f\u4e2d\u7d1a\u3078\u30b9\u30c6\u30c3\u30d7\u30a2\u30c3\u30d7\u3067\u304d\u308b\u7cf8\u53e3\u306b\u306a\u308b\u304b\u3068\u601d\u3044\u307e\u3059\u3002  \n\u9014\u4e2d\u3067\u7d39\u4ecb\u3059\u308b\u30b5\u30f3\u30d7\u30eb\u30b3\u30fc\u30c9\u306b\u306fDjango\u3092\u4f8b\u306b\u7528\u3044\u307e\u3059\u304c\u3001\u7279\u5b9a\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u306b\u4f9d\u5b58\u3057\u306a\u3044\u6c4e\u7528\u7684\u306a\u5185\u5bb9\u3068\u306a\u308b\u3088\u3046\u306b\u6ce8\u610f\u3057\u307e\u3059\u3002\n\n- \u5b9f\u88c5\n  - ORM\n  - \u30c6\u30b9\u30c8\n  - \u30a8\u30e9\u30fc\u30cf\u30f3\u30c9\u30ea\u30f3\u30b0\n- \u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\n  - \u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\n  - \u74b0\u5883\u306e\u4f7f\u3044\u5206\u3051\n  - \u30ed\u30ae\u30f3\u30b0\n- \u30b9\u30b1\u30fc\u30e9\u30d3\u30ea\u30c6\u30a3\n- \u305d\u306e\u4ed6\n  - \u30b3\u30f3\u30c6\u30ca\u5316", "recording_license": "", "do_not_record": false, "persons": [{"code": "RB7N7W", "name": "Shota Kokado", "avatar": "https://pretalx.com/media/avatars/RB7N7W_YmlsITZ.webp", "biography": "Software Engineer\n\u682a\u5f0f\u4f1a\u793eRevComm\u3067\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u30a8\u30f3\u30b8\u30cb\u30a2\u3092\u3057\u3066\u3044\u307e\u3059\u3002", "public_name": "Shota Kokado", "guid": "406e5620-3c1a-5494-a028-f8ebae531e9d", "url": "https://pretalx.com/pyconapac2023/speaker/RB7N7W/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/FHTQDR/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/FHTQDR/", "attachments": []}, {"guid": "dad3f812-45ea-58aa-938a-8bca0c0f3ab6", "code": "NGSQMV", "id": 32768, "logo": null, "date": "2023-10-28T15:20:00+09:00", "start": "15:20", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-32768-python---web", "url": "https://pretalx.com/pyconapac2023/talk/NGSQMV/", "title": "Python\u3060\u3051\u3067\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u81ea\u52d5\u751f\u6210 \u301c\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30fb\u7d44\u5408\u305b\u63a2\u7d22\u30fbWeb\u30a2\u30d7\u30ea\u958b\u767a\u301c", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u81ea\u52d5\u751f\u6210\u3059\u308bWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u984c\u6750\u306b\u3001API\u547c\u3073\u51fa\u3057\u30fb\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30fb\u7d44\u5408\u305b\u63a2\u7d22\u30fb\u53ef\u8996\u5316\u306a\u3069\u591a\u69d8\u306a\u51e6\u7406\u3092\u624b\u8efd\u306b\u5b9f\u88c5\u3067\u304d\u308bPython\u306e\u5fdc\u7528\u6027\u306e\u9ad8\u3055\u3092\u5831\u544a\u3059\u308b\u3002\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3067\u306f\u3001\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u304b\u3089\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306e\u89e3\u3068\u3057\u3066\u9069\u5207\u306a\u5358\u8a9e\u3068\u305d\u306e\u8aac\u660e\u3092\u62bd\u51fa\u3059\u308b\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30d1\u30fc\u30c8\u3068\u3001\u5165\u529b\u3055\u308c\u305f\u5358\u8a9e\u304b\u3089\u77db\u76fe\u306e\u7121\u3044\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u751f\u6210\u3059\u308b\u63a2\u7d22\u30d1\u30fc\u30c8\u3092\u5168\u3066Python\u3067\u8a18\u8ff0\u3057\u305f\u3002\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30d1\u30fc\u30c8\u3067\u306f\u8a18\u4e8b\u60c5\u5831\u3092\u53d6\u5f97\u3059\u308bAPI\u3092\u547c\u3073\u51fa\u3057\u3001\u8aad\u307f\u4eee\u540d\u4ed8\u4e0e\u3084\u5f62\u614b\u7d20\u89e3\u6790\u306a\u3069\u306e\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u6d3b\u7528\u3059\u308b\u3002\u63a2\u7d22\u30d1\u30fc\u30c8\u3067\u306f\u3001\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306e\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8a2d\u8a08\u3059\u308b\u7d44\u5408\u305b\u63a2\u7d22\u3092\u5b9f\u88c5\u3057\u305f\u3002\u3055\u3089\u306b\u3001\u3053\u308c\u3089\u306e\u51e6\u7406\u306e\u53ef\u8996\u5316\u306b\u306f\u3001Python\u306eWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3042\u308bStreamlit\u3092\u7528\u3044\u3066\u3044\u308b\u3002\u767a\u8868\u3067\u306f\u3001\u30c7\u30e2\u3092\u4ea4\u3048\u306a\u304c\u3089\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u7d39\u4ecb\u3057\u3001\u958b\u767a\u306b\u304a\u3051\u308b\u77e5\u898b\u3092\u5171\u6709\u3059\u308b\u3002", "description": "\u672c\u8b1b\u6f14\u3067\u306f\u3001\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u3092\u5165\u529b\u3068\u3057\u3066\u30d2\u30f3\u30c8\u4ed8\u304d\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u81ea\u52d5\u751f\u6210\u3059\u308bWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u7d39\u4ecb\u3059\u308b\u3002\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5185\u3067\u306fAPI\u306e\u547c\u3073\u51fa\u3057\u3001\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u3001\u7d44\u5408\u305b\u63a2\u7d22\u3001\u53ef\u8996\u5316\u306a\u3069\u306e\u8907\u6570\u306e\u8907\u96d1\u306a\u51e6\u7406\u304c\u5b9f\u884c\u3055\u308c\u308b\u304c\u3001\u5168\u3066Python\u3067\u5b9f\u88c5\u3055\u308c\u3066\u3044\u308b\u3002\u30c7\u30e2\u3092\u4ea4\u3048\u305f\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u7d39\u4ecb\u306b\u3088\u3063\u3066\u3001Python\u306e\u5fdc\u7528\u53ef\u80fd\u6027\u3001\u5b9f\u73fe\u53ef\u80fd\u306a\u51e6\u7406\u306e\u591a\u69d8\u6027\u3001\u624b\u8efd\u3055\u306b\u3064\u3044\u3066\u767a\u4fe1\u3059\u308b\u3002\n\n\u672c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u305f\u80cc\u666f\u3068\u3057\u3066\u3001\u8b1b\u5e2b\u304c\u6240\u5c5e\u3059\u308b\u30cb\u30e5\u30fc\u30b9\u30e1\u30c7\u30a3\u30a2\u696d\u754c\u306b\u304a\u3051\u308b\u30d1\u30ba\u30eb\u306e\u5f79\u5272\u306e\u5927\u304d\u3055\u304c\u3042\u308b\u3002\u7279\u306b\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306f\u4eba\u6c17\u306e\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u3042\u308a\u3001\u591a\u304f\u306e\u30cb\u30e5\u30fc\u30b9\u30e1\u30c7\u30a3\u30a2\u304c\u63b2\u8f09\u3057\u3066\u3044\u308b\u3002\u300c\u9867\u5ba2\u306b\u5408\u308f\u305b\u305f\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u81ea\u52d5\u3067\u751f\u6210\u3067\u304d\u308c\u3070\u3001\u3088\u308a\u9867\u5ba2\u306e\u6e80\u8db3\u5ea6\u3092\u9ad8\u3081\u3089\u308c\u308b\u300d\u3068\u3044\u3046\u4eee\u8aac\u306e\u3082\u3068\u3001\u672c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u305f\u3002\n\n\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u8907\u6570\u306e\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u3092\u5165\u529b\u3068\u3057\u3066\u3001\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u5185\u306e\u5358\u8a9e\u3092\u542b\u3080\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3068\u5404\u5358\u8a9e\u306e\u30d2\u30f3\u30c8\u3092\u81ea\u52d5\u3067\u51fa\u529b\u3057\u3001\u8868\u793a\u3059\u308b\u3002\u5165\u529b\u3059\u308b\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u3092\u3001\u9867\u5ba2\u304c\u95b2\u89a7\u3057\u305f\u8a18\u4e8b\u3001\u671d\u520a\u306e\u4e00\u9762\u306e\u8a18\u4e8b\u3001\u7279\u5b9a\u306e\u30b8\u30e3\u30f3\u30eb\u306e\u8a18\u4e8b\u306a\u3069\u306b\u9650\u5b9a\u3059\u308b\u3053\u3068\u3067\u3001\u69d8\u3005\u306a\u30b3\u30f3\u30bb\u30d7\u30c8\u306e\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u81ea\u52d5\u751f\u6210\u3067\u304d\u308b\u3002\n\n\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30d1\u30fc\u30c8\u3068\u63a2\u7d22\u30d1\u30fc\u30c8\u306b\u5206\u304b\u308c\u3066\u3044\u308b\u3002\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30d1\u30fc\u30c8\u3067\u306f\u307e\u305a\u3001\u8a18\u4e8b\u60c5\u5831\u3092\u53d6\u5f97\u3059\u308bAPI\u3092\u547c\u3073\u51fa\u3057\u3066\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u6587\u7ae0\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3059\u308b\u3002API\u306e\u547c\u3073\u51fa\u3057\u3001\u8a8d\u8a3c\u306b\u306frequests\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u7528\u3044\u3066\u3044\u308b\u3002\u6b21\u306b\u3001\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306e\u89e3\u3068\u3057\u3066\u9069\u5207\u306a\u5358\u8a9e\u3068\u305d\u306e\u8aac\u660e\u3092\u62bd\u51fa\u3059\u308b\u3002\u3053\u306e\u51e6\u7406\u306b\u306fre, spacy, pykakasi, jaconv\u306a\u3069\u306e\u591a\u304f\u306e\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u7528\u3044\u3066\u3044\u308b\u3002\u63a2\u7d22\u30d1\u30fc\u30c8\u3067\u306f\u3001\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30d1\u30fc\u30c8\u3067\u62bd\u51fa\u3055\u308c\u305f\u5358\u8a9e\u306b\u52a0\u3048\u3001wikipedia\u306a\u3069\u306e\u5916\u90e8\u30bd\u30fc\u30b9\u306e\u5358\u8a9e\u3082\u5165\u529b\u3068\u3057\u3066\u3001\u77db\u76fe\u306e\u7121\u3044\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u3092\u751f\u6210\u3059\u308b\u3002\u3053\u306e\u751f\u6210\u306b\u306f\u6df1\u3055\u512a\u5148\u63a2\u7d22\u306e\u4e00\u7a2e\u3067\u3042\u308b\u30d0\u30c3\u30af\u30c8\u30e9\u30c3\u30ad\u30f3\u30b0\u3092\u30d9\u30fc\u30b9\u3068\u3057\u305f\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u304c\u63a1\u7528\u3055\u308c\u3066\u304a\u308a\u3001\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u304b\u3089\u62bd\u51fa\u3055\u308c\u305f\u5358\u8a9e\u3092\u591a\u304f\u542b\u3080\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u304c\u751f\u6210\u3055\u308c\u308b\u3002\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u306f\u5b66\u8853\u8ad6\u6587\u3092\u53c2\u8003\u306b\u3001\u672c\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8a2d\u5b9a\u306b\u5408\u308f\u305b\u3066\u5909\u66f4\u3057\u305f\u3082\u306e\u3092Python\u3067\u5b9f\u88c5\u3057\u305f\u3002\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u5168\u4f53\u306fPython\u306eWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u4f5c\u6210\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3042\u308bStreamlit\u306b\u3088\u3063\u3066\u5b9f\u88c5\u3055\u308c\u3066\u3044\u308b\u3002\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306e\u30b5\u30a4\u30ba\u3084\u53d6\u5f97\u3059\u308b\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u30b8\u30e3\u30f3\u30eb\u306a\u3069\u306e\u30d1\u30e9\u30e1\u30fc\u30bf\u30fc\u3092\u7c21\u5358\u306b\u5909\u66f4\u3067\u304d\u3001\u30af\u30ed\u30b9\u30ef\u30fc\u30c9\u30d1\u30ba\u30eb\u306e\u751f\u6210\u904e\u7a0b\u3092\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306b\u8868\u793a\u3067\u304d\u308b\u3002\n\n\u958b\u767a\u306b\u304a\u3051\u308b\u8ab2\u984c\u3068\u3057\u3066\u30011. \u591a\u69d8\u306a\u51e6\u7406\u3092\u5b9f\u88c5\u3059\u308b\u5fc5\u8981\u304c\u3042\u308b 2. \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u5b9f\u88c5\u306b\u5272\u304f\u3053\u3068\u306e\u3067\u304d\u308b\u6642\u9593\u304c\u9650\u3089\u308c\u3066\u3044\u308b \u3068\u3044\u30462\u70b9\u304c\u3042\u3063\u305f\u3002Python\u306e\u307f\u3067\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5b9f\u88c5\u3059\u308b\u3053\u3068\u3067\u3001\u3053\u308c\u3089\u306e\u8ab2\u984c\u3092\u89e3\u6c7a\u3057\u305f\u30021\u70b9\u76ee\u306b\u3064\u3044\u3066\u306f\u3001Python\u306e\u8c4a\u5bcc\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u6d3b\u7528\u3057\u3066\u5bfe\u51e6\u3057\u305f\u3002\u5168\u3066\u306e\u51e6\u7406\u3092\u540c\u4e00\u8a00\u8a9e\u3067\u8a18\u8ff0\u3059\u308b\u3053\u3068\u306f\u3001\u51e6\u7406\u306e\u96c6\u7d04\u304c\u7c21\u5358\u306b\u306a\u308b\u3068\u3044\u3046\u30e1\u30ea\u30c3\u30c8\u3082\u3042\u308b\u30022\u70b9\u76ee\u306b\u3064\u3044\u3066\u306f\u3001Streamlit\u3092\u7528\u3044\u308b\u3053\u3068\u3067\u624b\u8efd\u306b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u305f\u3002\u53ef\u8996\u5316\u307e\u3067\u306e\u5b9f\u88c5\u671f\u9593\u3092\u77ed\u304f\u3059\u308b\u3053\u3068\u3067\u3001\u52b9\u7387\u7684\u306b\u30d5\u30a3\u30fc\u30c9\u30d0\u30c3\u30af\u3092\u5f97\u3066\u6539\u5584\u3067\u304d\u305f\u3002\n\n\u767a\u8868\u306e\u69cb\u6210\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3067\u3042\u308b\u3002\u5c0e\u5165\u3067\u306f\u3001\u767a\u8868\u306e\u5168\u4f53\u50cf\u30fb\u76ee\u7684\u3068\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u305f\u80cc\u666f\u30fb\u30e2\u30c1\u30d9\u30fc\u30b7\u30e7\u30f3\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u305f\u5f8c\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u6982\u8981\u3092\u30c7\u30e2\u3092\u4ea4\u3048\u306a\u304c\u3089\u7d39\u4ecb\u3059\u308b\u3002\u6b21\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u3068\u5185\u90e8\u3067\u5b9f\u884c\u3055\u308c\u3066\u3044\u308b\u51e6\u7406\u306b\u3064\u3044\u3066\u3001\u95a2\u9023\u3059\u308bPython\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4e2d\u5fc3\u306b\u89e3\u8aac\u3059\u308b\u3002\u305d\u3057\u3066\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u306e\u958b\u767a\u8005\u4f53\u9a13\u306b\u3064\u3044\u3066\u3001Python\u306e\u307f\u3067\u958b\u767a\u3057\u305f\u611f\u60f3\u3001\u632f\u308a\u8fd4\u308a\u3092\u4e2d\u5fc3\u306b\u7d39\u4ecb\u3059\u308b\u3002\n\n\u5c0e\u5165\uff082min\uff09\n- \u81ea\u5df1\u7d39\u4ecb\n- \u767a\u8868\u306e\u5168\u4f53\u50cf\u30fb\u76ee\u7684\n\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u6982\u8981\uff0810min\uff09\n- \u30c7\u30e2\u30f3\u30b9\u30c8\u30ec\u30fc\u30b7\u30e7\u30f3\n- \u4f5c\u6210\u3057\u305f\u80cc\u666f\u30fb\u30e2\u30c1\u30d9\u30fc\u30b7\u30e7\u30f3\n- \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8aac\u660e\n\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8a73\u7d30\uff089min\uff09\n- \u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\n- \u305d\u308c\u305e\u308c\u306e\u51e6\u7406\u306b\u3064\u3044\u3066\n  - API\u547c\u3073\u51fa\u3057\n  - \u81ea\u7136\u8a00\u8a9e\u51e6\u7406\n  - \u7d44\u5408\u305b\u63a2\u7d22\n- Web\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306b\u3064\u3044\u3066\n\u958b\u767a\u8005\u4f53\u9a13\uff084min\uff09\n- Python\u306e\u307f\u3067\u306e\u958b\u767a\u306b\u3064\u3044\u3066\n  - \u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u8c4a\u5bcc\u3055\n  - \u624b\u8efd\u3055\n  - \u30b3\u30df\u30e5\u30cb\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u53d6\u308a\u3084\u3059\u3055\n- \u4eca\u5f8c\u306e\u5c55\u671b\n- \u307e\u3068\u3081", "recording_license": "", "do_not_record": false, "persons": [{"code": "QE9C3J", "name": "\u99ac\u5d8b\u6d77\u6597", "avatar": null, "biography": null, "public_name": "\u99ac\u5d8b\u6d77\u6597", "guid": "4c33d092-1c4f-5103-bdd7-39b28f966494", "url": "https://pretalx.com/pyconapac2023/speaker/QE9C3J/"}], "links": [{"title": "\u672c\u767a\u8868\u306eWeb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u8a73\u7d30\u306a\u30a2\u30eb\u30b4\u30ea\u30ba\u30e0\u3001\u5185\u90e8\u51e6\u7406\u306b\u3064\u3044\u3066\u306e\u8ad6\u6587", "url": "https://arxiv.org/abs/2308.04688", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/NGSQMV/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/NGSQMV/", "attachments": []}, {"guid": "6177efbe-6b00-5832-96ae-11189a4ae5b0", "code": "ENA9YT", "id": 33027, "logo": null, "date": "2023-10-28T16:00:00+09:00", "start": "16:00", "duration": "00:30", "room": "track 3", "slug": "pyconapac2023-33027-fintechfastapi", "url": "https://pretalx.com/pyconapac2023/talk/ENA9YT/", "title": "FinTech\u306e\u73fe\u5834\u3067\u30d0\u30ea\u30d0\u30ea\u6d3b\u8e8d\u3059\u308bFastAPI\u306e\u7406\u60f3\u3068\u73fe\u5b9f", "subtitle": "", "track": "Web programming", "type": "Regular Talk", "language": "en", "abstract": "\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u300cFinTech\u306e\u73fe\u5834\u3067FastAPI\u304c\u3069\u306e\u3088\u3046\u306b\u4f7f\u308f\u308c\u3066\u3044\u308b\u304b\u300d\u306e\u7406\u60f3\u3068\u73fe\u5b9f\u3092\u304a\u5c4a\u3051\u3057\u307e\u3059\u3002\u7406\u60f3\u7684\u306a\u59ff\u306f\u3042\u308c\u3069\u3001\u696d\u52d9\u3067\u306f\u3055\u3058\u52a0\u6e1b\u3067\u73fe\u5b9f\u7684\u306a\u3084\u308a\u65b9\u3092\u63a1\u7528\u3059\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002\u305d\u306e\u3044\u3044\u5869\u6885\u3092\u304a\u4f1d\u3048\u3059\u308b\u3064\u3082\u308a\u3067\u3059\u3002\n\n2023\u5e74\u767a\u58f2\u306e\u300c\u52d5\u304b\u3057\u3066\u5b66\u3076\uff01Python FastAPI\u958b\u767a\u5165\u9580\u300d\u3067\u306f\u5b9f\u52d9\u3067\u4f7f\u3048\u308bFastAPI\u306e\u30c6\u30af\u30cb\u30c3\u30af\u3092\u7d39\u4ecb\u3057\u3066\u3044\u307e\u3059\u3002\u672c\u306b\u306f\u76db\u308a\u8fbc\u307f\u304d\u308c\u306a\u304b\u3063\u305f\u3053\u308c\u304b\u3089FastAPI\u3092\u4f7f\u3063\u3066\u307f\u305f\u3044\u3068\u601d\u3063\u3066\u3044\u308b\u65b9\u3084\u3001\u904b\u7528\u3092\u59cb\u3081\u305f\u3070\u304b\u308a\u306e\u65b9\u306b\u3001\u73fe\u5834\u306e\u808c\u611f\u3084\u8e93\u304d\u30dd\u30a4\u30f3\u30c8\u3092\u77e5\u3063\u3066\u3044\u305f\u3060\u3051\u308c\u3070\u3068\u601d\u3044\u307e\u3059\u3002", "description": "FastAPI\u306e\u4eba\u6c17\u304c\u65e5\u306b\u65e5\u306b\u5897\u3057\u3066\u3044\u308b\u6628\u4eca\u3067\u3059\u304c\u3001\u307e\u3060\u307e\u3060\u300c\u4ed6\u306e\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u3067\u3044\u3044\u3058\u3083\u3093\u300d\u300c\u672c\u5f53\u306b\u672c\u756a\u6295\u5165\u3057\u3066\u5927\u4e08\u592b\uff1f\u300d\u306a\u3069\u69d8\u3005\u306a\u601d\u3044\u3067\u5c0e\u5165\u3092\u305f\u3081\u3089\u3063\u3066\u3044\u308b\u65b9\u3082\u591a\u3044\u304b\u3068\u601d\u3044\u307e\u3059\u3002\n\u7406\u60f3\u7684\u306a\u59ff\u306f\u3042\u308c\u3069\u3001\u73fe\u5b9f\u7684\u306b\u306f\u7406\u60f3\u3092\u8ffd\u3044\u904e\u304e\u308b\u3068\u6e96\u5099\u3084\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u306e\u30b3\u30b9\u30c8\u304c\u9ad8\u3059\u304e\u3046\u307e\u304f\u3044\u304b\u306a\u3044\u3053\u3068\u3082\u3042\u308a\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u3042\u308b\u7a0b\u5ea6\u306e\u59a5\u5354\u3092\u3057\u3066\u958b\u767a\u30fb\u904b\u7528\u3057\u3066\u3044\u304f\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u304c\u3001\u201d\u30b3\u30b9\u30d1\u201d\u306e\u3044\u3044\u5869\u6885\u3092\u304a\u5c4a\u3051\u3057\u307e\u3059\u3002\n\n\u79c1\u306f\u3001\u65e5\u9803FinTech\u3068\u3044\u3046\u30df\u30c3\u30b7\u30e7\u30f3\u30af\u30ea\u30c6\u30a3\u30ab\u30eb\u306a\u30c9\u30e1\u30a4\u30f3\u306b\u304a\u3044\u3066FastAPI\u3092\u304b\u308c\u3053\u308c\uff12\u5e74\u4ee5\u4e0a\u904b\u7528\u3057\u3066\u304a\u308a\u3001\u305d\u306e\u73fe\u5834\u304b\u3089\u306e\u958b\u767a\u306e\u73fe\u5b9f\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\u3053\u308c\u306a\u3089FastAPI\u3092\u5b9f\u52d9\u3067\u4f7f\u3048\u305d\u3046\u3060\u306a\u3001\u3068\u3044\u3046\u5b9f\u611f\u3092\u62b1\u3044\u3066\u5e30\u3063\u3066\u3044\u305f\u3060\u304d\u305f\u3044\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u3002\n\u540c\u3058\u601d\u3044\u3067\u3001\u300c\u52d5\u304b\u3057\u3066\u5b66\u3076\uff01Python FastAPI\u958b\u767a\u5165\u9580\u300d\u3068\u3044\u3046\u672c\u3092\u4eca\u5e74\u51fa\u7248\u3057\u307e\u3057\u305f\u3002\u672c\u3067\u306f\u4f53\u7cfb\u7684\u306b\u5b66\u3079\u308b\u3088\u3046\u306b\u3059\u308b\u305f\u3081\u76db\u308a\u8fbc\u3081\u306a\u304b\u3063\u305fTips\u3082\u3044\u304f\u3064\u304b\u3042\u308a\u3001\u3053\u306e\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u3082\u5c11\u3057\u89e6\u308c\u3066\u3044\u304f\u4e88\u5b9a\u3067\u3059\u3002\n\n\u3010\u30c8\u30fc\u30af\u5185\u5bb9\u3011\n\n- \u524d\u534a\uff08\u57fa\u790e\u7de8\uff09\uff1aFastAPI\u306e\u826f\u3044\u3068\u3053\u308d\u3092\u30b5\u30af\u30c3\u3068\u5b66\u7fd2\n\u3000- \u60f3\u5b9a\u3059\u308b\u30aa\u30fc\u30c7\u30a3\u30a8\u30f3\u30b9\n\u3000\u3000- FastAPI\u3092\u4f7f\u3063\u3066\u307f\u305f\u3044\u3051\u3069\u307e\u3060\u30c8\u30e9\u30a4\u3067\u304d\u3066\u3044\u306a\u3044\u65b9\n- \u5f8c\u534a\uff08\u5fdc\u7528\u7de8\uff09\uff1aFastAPI\u304c\u300cFinTech\u300d\u300c\u30b9\u30bf\u30fc\u30c8\u30a2\u30c3\u30d7\u300d\u3067\u3069\u3046\u4f7f\u308f\u308c\u3066\u3044\u308b\u304b\u306e\u4e00\u4f8b\u3092\u3054\u7d39\u4ecb\n\u3000- \u60f3\u5b9a\u3059\u308b\u30aa\u30fc\u30c7\u30a3\u30a8\u30f3\u30b9\n\u3000\u3000- FastAPI\u306b\u5165\u9580\u3057\u3066\u307f\u305f\u3051\u3069\u3001\u696d\u52d9\u3067\u672c\u756a\u74b0\u5883\u3078\u306e\u6295\u5165\u307e\u3067\u306b\u306f\u81f3\u3063\u3066\u3044\u306a\u3044\u65b9\n\u3000\u3000- FastAPI\u3092\u672c\u756a\u74b0\u5883\u3067\u4f7f\u3063\u3066\u3044\u308b\u304c\u3001FinTech\u3067\u3069\u3046\u4f7f\u308f\u308c\u3066\u3044\u308b\u304b\u88cf\u5074\u3092\u77e5\u3063\u3066\u307f\u305f\u3044\u65b9\n\n\u3010\u30a2\u30b8\u30a7\u30f3\u30c0\u3011\n\n- \u57fa\u790e\u7de8\n\u3000- \u3069\u3093\u306a\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\uff1f\n\u3000- FastAPI\u306f\u3069\u3046\u52d5\u3044\u3066\u3044\u308b\u304b\uff1f\n\u3000- \u30dd\u30a4\u30f3\u30c8\uff11\uff1a\u578b\u5b89\u5168\n\u3000- \u30dd\u30a4\u30f3\u30c8\uff12\uff1aSwagger UI\u306e\u81ea\u52d5\u751f\u6210\n\u3000- \u30dd\u30a4\u30f3\u30c8\uff13\uff1a\u9ad8\u901f\n- \u5fdc\u7528\u7de8\n\u3000- \u91d1\u878d\u3067Python\u3063\u3066\u5927\u4e08\u592b\u306a\u306e\uff1f\n\u3000- \u30a2\u30fc\u30ad\u30c6\u30af\u30c1\u30e3\u306e\u7d39\u4ecb\n\u3000- \u578b\u30d2\u30f3\u30c8\n\u3000- Tips\uff1a\u6570\u5024\u8a08\u7b97\n\u3000- Swagger UI\n\u3000- \u975e\u540c\u671f\u5316\n\u3000- Tips\uff1a\u30a8\u30e9\u30fc\u30cf\u30f3\u30c9\u30ea\u30f3\u30b0", "recording_license": "", "do_not_record": false, "persons": [{"code": "WDW7DB", "name": "Sho Nakamura", "avatar": "https://pretalx.com/media/avatars/WDW7DB_ZYrdUKQ.webp", "biography": "\u682a\u5f0f\u4f1a\u793esusten\u30ad\u30e3\u30d4\u30bf\u30eb\u30fb\u30de\u30cd\u30b8\u30e1\u30f3\u30c8Founder\u306e\u4e00\u4eba\u3002\n\n\u4e3b\u306bPython(FastAPI)\u306b\u3066\u8cc7\u7523\u904b\u7528\u30b5\u30fc\u30d3\u30b9\u300cSUSTEN\u300d\u306e\u958b\u767a\u3092\u884c\u3046\u3002 \n\n\u8457\u66f8\u306b\u300c\u52d5\u304b\u3057\u3066\u5b66\u3076\uff01Python FastAPI\u958b\u767a\u5165\u9580\u300d\uff08\u7fd4\u6cf3\u793e\uff09", "public_name": "Sho Nakamura", "guid": "ccd86218-026a-5ce3-a518-f09d25d22117", "url": "https://pretalx.com/pyconapac2023/speaker/WDW7DB/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/ENA9YT/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/ENA9YT/", "attachments": []}], "track 4": [{"guid": "8dd4871b-8482-5ce3-a7ba-cb1f1bbf9514", "code": "QEHREX", "id": 32807, "logo": null, "date": "2023-10-28T11:45:00+09:00", "start": "11:45", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-32807-python", "url": "https://pretalx.com/pyconapac2023/talk/QEHREX/", "title": "Python\u3067\u4e00\u6b69\u8e0f\u307f\u51fa\u3059\u30d0\u30a4\u30ca\u30ea\u306e\u4e16\u754c", "subtitle": "", "track": "Others", "type": "Regular Talk", "language": "en", "abstract": "\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u306e\u4e16\u754c\u306f\u30bc\u30ed\u3068\u30a4\u30c1\u3067\u6210\u308a\u7acb\u3063\u3066\u3044\u307e\u3059\u3002\n\u3053\u306e\u6587\u7ae0\u3082Python\u306e\u30ed\u30b4\u753b\u50cf\u3082\u307f\u306a\u3055\u3093\u304c\u66f8\u3044\u3066\u3044\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u3082\u3059\u3079\u3066\u30bc\u30ed\u3068\u30a4\u30c1\u3067\u8868\u73fe\u3055\u308c\u3066\u3044\u307e\u3059\u3002\n\n\u3068\u3044\u3046\u3053\u3068\u306f\u307f\u306a\u3055\u3093\u77e5\u3063\u3066\u3044\u308b\u3067\u3057\u3087\u3046\u3002  \n\u3057\u304b\u3057\u3001\u305d\u306e\u3053\u3068\u3092\u610f\u8b58\u3057\u305f\u3053\u3068\u304c\u306a\u304b\u3063\u305f\u308a\u3001\u300c\u30d0\u30a4\u30ca\u30ea\u300d\u3084\u300c\u30d0\u30a4\u30c8\u5217\u300d\u3068\u3044\u3046\u8a00\u8449\u306b\u82e6\u624b\u610f\u8b58\u3092\u611f\u3058\u308b\u65b9\u3082\u591a\u3044\u306e\u3067\u306f\u306a\u3044\u3067\u3057\u3087\u3046\u304b\u3002\n\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001Python\u306e\u5bfe\u8a71\u30e2\u30fc\u30c9\u3084print()\u3001struct\u30e2\u30b8\u30e5\u30fc\u30eb\u306a\u3069\u3092\u4f7f\u3063\u3066\u30d0\u30a4\u30ca\u30ea\u306e\u4e16\u754c\u3092\u8997\u3044\u3066\u307f\u307e\u3059\u3002\n\n\u30d0\u30a4\u30ca\u30ea\u306b\u6163\u308c\u308b\u3068\u3088\u308a\u6df1\u304f\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u3092\u77e5\u308b\u3053\u3068\u304c\u3067\u304d\u3001\u76ee\u306e\u524d\u306e\u4e16\u754c\u304c\u4e00\u6c17\u306b\u5e83\u304c\u308a\u307e\u3059\u3002\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u901a\u3058\u3066\u3001\u305d\u306e\u6700\u521d\u306e\u4e00\u6b69\u3092\u8e0f\u307f\u51fa\u3057\u307e\u3057\u3087\u3046\u3002", "description": "\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u306e\u4e16\u754c\u306f\u30bc\u30ed\u3068\u30a4\u30c1\u3067\u6210\u308a\u7acb\u3063\u3066\u3044\u307e\u3059\u3002\n\u3053\u306e\u6587\u7ae0\u3082Python\u306e\u30ed\u30b4\u753b\u50cf\u3082\u307f\u306a\u3055\u3093\u304c\u66f8\u3044\u3066\u3044\u308b\u30d7\u30ed\u30b0\u30e9\u30e0\u3082\u3059\u3079\u3066\u30bc\u30ed\u3068\u30a4\u30c1\u3067\u8868\u73fe\u3055\u308c\u3066\u3044\u307e\u3059\u3002\n\n\u3068\u3044\u3046\u3053\u3068\u306f\u307f\u306a\u3055\u3093\u77e5\u3063\u3066\u3044\u308b\u3067\u3057\u3087\u3046\u3002  \n\u3057\u304b\u3057\u3001\u305d\u306e\u3053\u3068\u3092\u610f\u8b58\u3057\u305f\u3053\u3068\u304c\u306a\u304b\u3063\u305f\u308a\u3001\u300c\u30d0\u30a4\u30ca\u30ea\u300d\u3084\u300c\u30d0\u30a4\u30c8\u5217\u300d\u3068\u3044\u3046\u8a00\u8449\u306b\u82e6\u624b\u610f\u8b58\u3092\u611f\u3058\u308b\u65b9\u3082\u591a\u3044\u306e\u3067\u306f\u306a\u3044\u3067\u3057\u3087\u3046\u304b\u3002\n\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001Python\u306e\u5bfe\u8a71\u30e2\u30fc\u30c9\u3084print()\u3001struct\u30e2\u30b8\u30e5\u30fc\u30eb\u306a\u3069\u3092\u4f7f\u3063\u3066\u30d0\u30a4\u30ca\u30ea\u306e\u4e16\u754c\u3092\u8997\u3044\u3066\u307f\u307e\u3059\u3002\n\u3088\u308a\u5177\u4f53\u7684\u306b\u306fPython\u3067\u66f8\u3044\u305f\u30bd\u30fc\u30b9\u30b3\u30fc\u30c9\u3084\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u306a\u3069\u3092\u5bfe\u8c61\u306b\u3001\u305d\u306e\u898b\u65b9\u306e\u30b3\u30c4\u3084\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u4ed5\u69d8\u66f8\u3092\u7406\u89e3\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u7528\u8a9e\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n\u30d0\u30a4\u30ca\u30ea\u306b\u6163\u308c\u308b\u3068\u3088\u308a\u6df1\u304f\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u3092\u77e5\u308b\u3053\u3068\u304c\u3067\u304d\u3001\u76ee\u306e\u524d\u306e\u4e16\u754c\u304c\u4e00\u6c17\u306b\u5e83\u304c\u308a\u307e\u3059\u3002\n\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3092\u901a\u3058\u3066\u3001\u305d\u306e\u6700\u521d\u306e\u4e00\u6b69\u3092\u8e0f\u307f\u51fa\u3057\u307e\u3057\u3087\u3046\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "S7CCQ7", "name": "Rei Suyama", "avatar": "https://pretalx.com/media/avatars/S7CCQ7_o9iz6ch.webp", "biography": "\u5c3e\u9053\u304c\u597d\u304d\u306b\u306a\u308a\u6771\u4eac\u304b\u3089\u5c3e\u9053\u306e\u5411\u5cf6\u306b\u5f15\u3063\u8d8a\u3057\u3066\u304d\u305f\u30d5\u30eb\u30ea\u30e2\u30fc\u30c8\u306e\u30d7\u30ed\u30b0\u30e9\u30de\u3002\u5b66\u751f\u6642\u4ee3\u304b\u3089\u305a\u3063\u3068Python\u597d\u304d\u3002\u30b7\u30f3\u30d7\u30eb\u306a\u30b3\u30fc\u30c9\u3001\u30b7\u30f3\u30d7\u30eb\u306a\u8a2d\u8a08\u3092\u76ee\u6307\u3057\u3066\u307e\u3059\u3002\u300cPython\u5b9f\u8df5\u5165\u9580\u300d\u306e\u8457\u8005\u3002\n\n- Twitter: rhoboro\n- GitHub: rhoboro\n- \u30d6\u30ed\u30b0: https://www.rhoboro.com/", "public_name": "Rei Suyama", "guid": "9c59f577-cb24-5c39-92f0-bee49f358b4d", "url": "https://pretalx.com/pyconapac2023/speaker/S7CCQ7/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/QEHREX/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/QEHREX/", "attachments": []}, {"guid": "dbf2c410-049f-5b29-8ea6-4d027adcc3ec", "code": "G3LDSG", "id": 33029, "logo": null, "date": "2023-10-28T13:30:00+09:00", "start": "13:30", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33029-pdca", "url": "https://pretalx.com/pyconapac2023/talk/G3LDSG/", "title": "\u81ea\u4f5c\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u7cfb\u306e\u6027\u80fd\u6e2c\u5b9a\u3068\u53ef\u8996\u5316&\u6539\u5584\u306ePDCA\u3092\u56de\u3057\u3066\u6700\u5f37\u306e\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u7cfb\u306e\u4f5c\u308a\u65b9\u3092\u5b66\u307c\u3046", "subtitle": "", "track": "Network programing", "type": "Regular Talk", "language": "en", "abstract": "\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u7cfb\u306e\u958b\u767a\u306b\u3064\u3044\u3066\u3001\u6027\u80fd\u8a55\u4fa1\u3092\u901a\u3058\u305f\u6539\u5584\u30d7\u30ed\u30bb\u30b9\u3092\u901a\u3058\u3066\u4e00\u7dd2\u306b\u63a2\u6c42\u3057\u307e\u3059\u3002\n\u306f\u3058\u3081\u306b\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u306e\u57fa\u672c\u539f\u7406\u30fb\u30d9\u30f3\u30c1\u30de\u30fc\u30ad\u30f3\u30b0\u306e\u624b\u6cd5\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u305f\u306e\u3061\u3001\u6539\u5584\u30d7\u30ed\u30bb\u30b9\u3067\u4e2d\u5fc3\u3068\u306a\u308b \u6027\u80fd\u8a66\u9a13\u74b0\u5883\u30fb\u7d50\u679c\u306e\u53ef\u8996\u5316 \u3067 Python \u3092\u3069\u306e\u3088\u3046\u306b\u6d3b\u7528\u3057\u305f\u304b\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\u3053\u306e\u767a\u8868\u3092\u901a\u3058\u3066\u3001\u81ea\u793e\u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3084\u81ea\u4f5c\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u306e\u6027\u80fd\u6e2c\u5b9a\u3068\u5411\u4e0a\u306b\u95a2\u5fc3\u306e\u3042\u308b\u958b\u767a\u8005\u3001\u30a8\u30f3\u30b8\u30cb\u30a2\u3001\u30a2\u30fc\u30ad\u30c6\u30af\u30c8\u306b\u3068\u3063\u3066\u300c\u901a\u4fe1\u306e\u9ad8\u901f\u5316\u3063\u3066\u3053\u3046\u3084\u3063\u3066\u884c\u3046\u306e\u304b\uff01\u300d\u3068\u3061\u3087\u3063\u3068\u4e16\u754c\u306e\u898b\u65b9\u304c\u5909\u308f\u308b\u6709\u76ca\u306a\u6642\u9593\u3092\u63d0\u4f9b\u3057\u307e\u3059", "description": "## \u80cc\u666f\u3068\u30e2\u30c1\u30d9\n- \u5f0a\u793e\u3067\u306f\u30d5\u30ebMVNO\u4e8b\u696d\u3092\u3084\u3063\u3066\u304a\u308a\u3001\u305d\u306e\u4e2d\u306ePGW-U\u3068\u547c\u3070\u308c\u308b\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306b\u51fa\u308b\u305f\u3081\u306e\u81ea\u4f5c\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u7cfb\u306e\u901a\u4fe1\u52b9\u7387\u306e\u6027\u80fd\u3092\u4e0a\u3052\u308b\u3053\u3068\u304c\u6c42\u3081\u3089\u308c\u3066\u3044\u307e\u3057\u305f\n- \u305d\u306e\u305f\u3081\u306bpython\u88fd\u306e\u30c4\u30fc\u30eb\u3068\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u99c6\u4f7f\u3057\u3066\u8a08\u6e2c\u3057\u9ad8\u901f\u5316\u3092\u3057\u307e\u3057\u305f\n## \u8a71\u3059\u5185\u5bb9\n- \u79c1\u305f\u3061\u306f\u3001XDP\u3068\u547c\u3070\u308c\u308beBPF\u3092\u4f7f\u3063\u305f\u9ad8\u901f\u30d1\u30b1\u30c3\u30c8\u51e6\u7406\u6280\u8853\u3092\u4f7f\u3063\u3066\u5b9f\u88c5\u3057\u3066\u3044\u307e\u3059\n- \u6027\u80fd\u8a66\u9a13\u3092\u901a\u3057\u305f\u6539\u5584\u30d7\u30ed\u30bb\u30b9\u3067\u306f\u3001\u8ca0\u8377\u8a66\u9a13\u306e\u30d1\u30b1\u30c3\u30c8\u751f\u6210\u30fb\u30c6\u30b9\u30c8\u7d50\u679c\u306e\u8a18\u9332\u30fb\u30e1\u30c8\u30ea\u30c3\u30af\u306e\u5206\u6790\u306a\u3069\u591a\u304f\u306e\u5834\u9762\u3067 Python \u3092\u6d3b\u7528\u3057\u3066\u3044\u307e\u3059\n### \u305d\u308c\u305e\u308c\u306e\u5834\u9762\u3067\u306e\u6d3b\u7528\u4e8b\u4f8b\u3092\u7d39\u4ecb\u3057\u307e\u3059\n- scapy \u3067 TRex \u306e\u30d1\u30b1\u30c3\u30c8\u751f\u6210\u306b\u30e2\u30d0\u30a4\u30eb\u7db2\u3067\u4f7f\u3046\u30d7\u30ed\u30c8\u30b3\u30eb\u306e\u30d1\u30b1\u30c3\u30c8\u3092\u8ffd\u52a0\u3057\u307e\u3057\u305f\n- \u6027\u80fd\u8a66\u9a13\u306e\u30c6\u30b9\u30c8\u5b8c\u4e86\u5f8c\u3001\u6027\u80fd\u6307\u6a19\u3092 TRex \u304b\u3089\u53d6\u5f97\u3057 Pushgateway \u3067\u8a18\u9332\u3057\u307e\u3057\u305f\n- Jupyter Lab \u4e0a\u3067 Grafana \u7d4c\u7531\u306e CSV \u30d5\u30a1\u30a4\u30eb\u3092 pandas.DataFrame \u306b\u52a0\u5de5\u3057\u3001\u53ef\u8996\u5316\u3084\u8a55\u4fa1\u3092\u884c\u3044\u307e\u3057\u305f\n\n### \u6027\u80fd\u8a66\u9a13\u3092\u901a\u3058\u305f\u6539\u5584\u4f8b\n- \u5927\u91cf\u306e\u30a8\u30f3\u30c8\u30ea\u3092\u6d41\u3057\u305f\u969b\u306b\u30e1\u30e2\u30ea\u4f7f\u7528\u91cf\u304c\u5927\u304d\u304f\u306a\u308b\u3068\u30b3\u30b1\u308b\u554f\u984c\u3092\u767a\u898b\u3057\u3066\u4fee\u6b63\u3057\u305f\u4e8b\u4f8b\n- \u30d1\u30b1\u30c3\u30c8\u306echeck sum\u306e\u51e6\u7406\u3067\u9045\u304f\u306a\u3063\u305f\u306e\u3067\u51e6\u7406\u6027\u80fd\u3092\u5411\u4e0a\u3055\u305b\u308b\u305f\u3081\u306bchecksum\u6a5f\u80fd\u3092optout\u3059\u308b\u6a5f\u80fd\u3092\u8ffd\u52a0\u3057\u305f\u4e8b\u4f8b\n- \u7279\u5b9a\u306e\u30d1\u30b1\u30c3\u30c8\u306b\u5bfe\u3057\u3066\u30de\u30eb\u30c1\u30b3\u30a2\u5bfe\u5fdc\u304c\u3055\u308c\u3066\u3044\u306a\u3044\u3053\u3068\u3092\u767a\u898b\u3057\u3066\u3001Intel\u306eNIC\u30c9\u30e9\u30a4\u30d0\u306b\u6a5f\u80fd\u3092\u8ffd\u52a0\u3057\u3066\u30de\u30eb\u30c1\u30b3\u30a2\u5bfe\u5fdc\u3055\u305b\u305f\u3002\u305d\u306e\u7d50\u679c$(nproc| CPU\u30b3\u30a2\u6570)\u500d\u306e\u52b9\u7387\u30a2\u30c3\u30d7\u304c\u3067\u304d\u305f\u4e8b\u4f8b", "recording_license": "", "do_not_record": false, "persons": [{"code": "FLRSRA", "name": "Takeru Hayasaka", "avatar": "https://pretalx.com/media/avatars/FLRSRA_FGsVUVT.webp", "biography": "21\u5352\u65b0\u5352\u3067\u4eac\u90fd\u306e\u5927\u624b\u30b2\u30fc\u30e0\u4f1a\u793e\u306b\u5c31\u8077\u3057\u3001\u30b2\u30fc\u30e0\u6a5f\u958b\u767a\u3084SDK\u958b\u767a\u306a\u3069\u306b\u643a\u308f\u308b\u3002\n\u305d\u306e\u5f8c\u306f\u5b66\u751f\u6642\u4ee3\u306b\u7acb\u3061\u4e0a\u3052\u306b\u95a2\u308f\u3063\u305f\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u95a2\u3059\u308b\u30d9\u30f3\u30c1\u30e3\u30fc\u306b\u8ee2\u8077\u3057\u3001\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u30a8\u30f3\u30b8\u30cb\u30a2\u30ea\u30f3\u30b0\u306e\u529b\u3067\u30e2\u30d0\u30a4\u30eb\u306e\u4e16\u754c\u3092\u3088\u308a\u3088\u304f\u3059\u308b\u305f\u3081\u65e5\u3005\u793e\u4f1a\u5b9f\u88c5\u3092\u884c\u3063\u3066\u3044\u308b\u3002", "public_name": "Takeru Hayasaka", "guid": "de1c5bd1-ef52-58b7-bc57-c69bee8c0fb0", "url": "https://pretalx.com/pyconapac2023/speaker/FLRSRA/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/G3LDSG/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/G3LDSG/", "attachments": []}, {"guid": "2773780b-7115-55e0-9d0b-8cc782743ce2", "code": "XRLR98", "id": 33123, "logo": null, "date": "2023-10-28T14:10:00+09:00", "start": "14:10", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-33123-python-x", "url": "https://pretalx.com/pyconapac2023/talk/XRLR98/", "title": "Python x \u6cd5\u5b66\u301c\u65e5\u672c\u306e\u6cd5\u306e\u30c6\u30ad\u30b9\u30c8\u5206\u6790\u30fb\u5730\u56f3\u53ef\u8996\u5316\u3078\u306e\u8a66\u307f\u301c", "subtitle": "", "track": "Approaching to social problem", "type": "Regular Talk", "language": "en", "abstract": "\u65e5\u672c\u8a9e\u30b9\u30e9\u30a4\u30c9\uff1a\nhttps://www.docswell.com/s/olivine-ryo/5M13YL-20231028\n\nEnglish Slides (machine translation)\uff1a\nhttps://www.docswell.com/s/olivine-ryo/5DE738-20231028-en\n\n\u6cd5\u306f\u8ab0\u306b\u3068\u3063\u3066\u3082\u91cd\u8981\u306a\u5b58\u5728\u3067\u3042\u308a\u306a\u304c\u3089\u3001\u305d\u306e\u96e3\u89e3\u3055\u304b\u3089\u666e\u6bb5\u306f\u656c\u9060\u3057\u3066\u3057\u307e\u3044\u304c\u3061\u3067\u3059\u3002\u3053\u306e\u767a\u8868\u3067\u306fPython\u3092\u99c6\u4f7f\u3057\u305f\u30c7\u30fc\u30bf\u5206\u6790\u30fb\u53ef\u8996\u5316\u306b\u3088\u308a\u3001\u6cd5\u306b\u898b\u3048\u96a0\u308c\u3059\u308b\u65e5\u672c\u306e\u6b74\u53f2\u306a\u3069\u3092\u8074\u8846\u306e\u5168\u54e1\u306b\u5206\u304b\u308a\u3084\u3059\u304f\u793a\u3057\u307e\u3059\u3002  \u767a\u8868\u3067\u306fPython\u3092\u4f7f\u3063\u305f\u30c6\u30ad\u30b9\u30c8\u5206\u6790\u304a\u3088\u3073\u5730\u7406\u30c7\u30fc\u30bf\u3068\u3057\u3066\u306e\u5206\u6790\u3092\u884c\u3044\u307e\u3057\u305f\u3002\u30ef\u30fc\u30c9\u30af\u30e9\u30a6\u30c9\u3084\u5730\u56f3\u3092\u6d3b\u7528\u3057\u305f\u53ef\u8996\u5316\u304b\u3089\u3055\u307e\u3056\u307e\u306a\u77e5\u898b\u304c\u5f97\u3089\u308c\u307e\u3057\u305f\u3002\n\nPythonist \u304c\u6cd5\u5b66\u306e\u30c9\u30e1\u30a4\u30f3\u77e5\u8b58\u306b\u89e6\u308c\u308b\u6a5f\u4f1a\u306f\u3001\u5b66\u8853\u7684\u306b\u3082\u793e\u4f1a\u7684\u306b\u3082\u8cb4\u91cd\u3060\u3068\u8003\u3048\u307e\u3059\u3002\u307e\u305f\u53ef\u8996\u5316\u306b\u3088\u3063\u3066\u6cd5\u5f8b\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u4f1d\u3048\u308b\u8a66\u307f\u306f\u5c02\u9580\u77e5\u8b58\u306e\u30b3\u30df\u30e5\u30b1\u30fc\u30b7\u30e7\u30f3\u3068\u3057\u3066\u3082\u4fa1\u5024\u304c\u3042\u308b\u55b6\u307f\u3060\u3068\u8003\u3048\u307e\u3059\u3002", "description": "\u6cd5\u5f8b\u306f\u8ab0\u306b\u3068\u3063\u3066\u3082\u91cd\u8981\u306a\u5b58\u5728\u3067\u3042\u308a\u306a\u304c\u3089\u3001\u305d\u306e\u96e3\u89e3\u3055\u3084\u8907\u96d1\u3055\u304b\u3089\u5b9f\u969b\u306e\u6761\u6587\u3092\u773a\u3081\u305f\u308a\u610f\u5473\u3092\u8003\u3048\u305f\u308a\u3059\u308b\u4eba\u306f\u6cd5\u5f8b\u5bb6\u3092\u9664\u3051\u3070\u307e\u308c\u3067\u3057\u3087\u3046\u3002\u3057\u304b\u3057\u6cd5\u5f8b\u3053\u305d\u304c\u3042\u306a\u305f\u304c\u5371\u6a5f\u306b\u9665\u3063\u305f\u3068\u304d\u306b\u52a9\u3051\u3066\u304f\u308c\u305f\u308a\u3001\u3042\u306a\u305f\u304c\u4f55\u304b\u306b\u6311\u6226\u3057\u3088\u3046\u3068\u3057\u305f\u3068\u304d\u306b\u30b5\u30dd\u30fc\u30c8\u3092\u3057\u3066\u304f\u308c\u308b\u5b58\u5728\u306e\u6b63\u4f53\u3067\u3059\u3002\u3053\u3046\u3057\u305f\u6cd5\u5f8b\u3092\u5206\u6790\u30fb\u53ef\u8996\u5316\u3059\u308b\u3053\u3068\u3067\u8074\u8846\u306b\u6cd5\u5f8b\u306b\u307e\u3064\u308f\u308b\u30c6\u30fc\u30de\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u4f1d\u3048\u308b\u8a66\u307f\u306f\u793e\u4f1a\u7684\u610f\u7fa9\u304c\u5927\u304d\u3044\u3068\u8003\u3048\u307e\u3059\u3002\n  \n\u3053\u306e\u767a\u8868\u3067\u306fPython\u3092\u99c6\u4f7f\u3057\u3066\u6cd5\u5f8b\u30c7\u30fc\u30bf\u3092\u30c6\u30ad\u30b9\u30c8\u5206\u6790\u3057\u305f\u308a\u3001\u6cd5\u5f8b\u3092\u5730\u7406\u7a7a\u9593\u60c5\u5831\u3068\u3057\u3066\u5730\u56f3\u306b\u53ef\u8996\u5316\u3057\u305f\u308a\u3059\u308b\u3053\u3068\u306b\u3088\u3063\u3066\u3001\u6cd5\u5f8b\u306b\u898b\u3048\u96a0\u308c\u3059\u308b\u65e5\u672c\u306e\u6b74\u53f2\u3084\u65e5\u672c\u306e\u6cd5\u5f8b\u306e\u7279\u5fb4\u306a\u3069\u3092\u8074\u8846\u306e\u5168\u54e1\u306b\u5206\u304b\u308a\u3084\u3059\u304f\u793a\u3057\u307e\u3059\u3002\n\n\u767a\u8868\u3067\u306f\u3001\u56fd\u7acb\u56fd\u4f1a\u56f3\u66f8\u9928\u306e\u65e5\u672c\u6cd5\u4ee4\u7d22\u5f15\u30c7\u30fc\u30bf\u3092\u7528\u3044\u3001\u30c6\u30ad\u30b9\u30c8\u5206\u6790\uff08\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\uff09\u3068\u5730\u7406\u30c7\u30fc\u30bf\u306e\u5206\u6790\u306e\uff12\u3064\u306b\u7126\u70b9\u3092\u5f53\u3066\u307e\u3059\u3002\n\n\u672c\u767a\u8868\u306e\u30a2\u30a6\u30c8\u30e9\u30a4\u30f3\u306f\u4ee5\u4e0b\u3067\u3059\u3002\n\u30fb\u65e5\u672c\u306e\u6cd5\u4ee4\u3092\u77e5\u308b\n\u30fb\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3059\u308b\n\u30fb\u30c6\u30ad\u30b9\u30c8\u5206\u6790\n\u30fb\u5730\u7406\u30c7\u30fc\u30bf\u3068\u306f\n\u30fb\u5730\u56f3\u3067\u53ef\u8996\u5316\u3059\u308b\n\n\u3053\u3046\u3057\u305f\u30c6\u30fc\u30de\u306f\u8a08\u91cf\u6cd5\u5b66\uff08\u30b8\u30e5\u30ea\u30e1\u30c8\u30ea\u30c3\u30af\u30b9\uff09\u306e\u4e00\u90e8\u3068\u3055\u308c\u307e\u3059\u3002\u3057\u304b\u3057\u3001\u8a08\u91cf\u6cd5\u5b66\u306f\u65e5\u672c\u3067\u306f\u307e\u3060\u767a\u5c55\u9014\u4e0a\u3067\u3059\u3002 Pythonist \u3084\u30d5\u30ed\u30f3\u30c8\u30a8\u30f3\u30c9\u30a8\u30f3\u30b8\u30cb\u30a2\u304c\u6cd5\u5b66\u306e\u30c9\u30e1\u30a4\u30f3\u77e5\u8b58\u306b\u89e6\u308c\u308b\u3053\u3068\u3067\u3001\u5b66\u8853\u7684\u306b\u3082\u793e\u4f1a\u7684\u306b\u3082\u610f\u7fa9\u306e\u3042\u308b\u65b0\u305f\u306a\u767a\u60f3\u304c\u751f\u307e\u308c\u308b\u6a5f\u904b\u306b\u306a\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002\u307e\u305f\u3001\u53ef\u8996\u5316\u306b\u3088\u3063\u3066\u6cd5\u5f8b\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u4f1d\u3048\u308b\u8a66\u307f\u306f\u3001\u6cd5\u5b66\u306e\u5c02\u9580\u77e5\u8b58\u306e\u5927\u8846\u3078\u306e\u30b3\u30df\u30e5\u30b1\u30fc\u30b7\u30e7\u30f3\u3068\u3057\u3066\u3082\u4fa1\u5024\u304c\u3042\u308b\u55b6\u307f\u3060\u3068\u8003\u3048\u307e\u3059\u3002\n\n\u65e5\u672c\u8a9e\u30b9\u30e9\u30a4\u30c9\uff1a\nhttps://www.docswell.com/s/olivine-ryo/5M13YL-20231028\n\n\u82f1\u8a9e\u30b9\u30e9\u30a4\u30c9\uff08\u6a5f\u68b0\u7ffb\u8a33\uff09\uff1a\nhttps://www.docswell.com/s/olivine-ryo/5DE738-20231028-en", "recording_license": "", "do_not_record": false, "persons": [{"code": "F3SVPR", "name": "Ryo Namiki", "avatar": "https://pretalx.com/media/avatars/F3SVPR_wwdc4jM.webp", "biography": "GIS Engineering / Data xxst", "public_name": "Ryo Namiki", "guid": "26734a63-2f65-58d6-8966-bd06671fac42", "url": "https://pretalx.com/pyconapac2023/speaker/F3SVPR/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/XRLR98/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/XRLR98/", "attachments": []}, {"guid": "3d70300d-7984-5ed9-8502-27e5c37e1314", "code": "MH78PW", "id": 32765, "logo": null, "date": "2023-10-28T15:20:00+09:00", "start": "15:20", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-32765-optuna", "url": "https://pretalx.com/pyconapac2023/talk/MH78PW/", "title": "\u30cf\u30a4\u30d1\u30fc\u30d1\u30e9\u30e1\u30fc\u30bf\u6700\u9069\u5316\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30afOptuna\u306e\u6700\u65b0\u6a5f\u80fd\u7d39\u4ecb", "subtitle": "", "track": "Machine learning", "type": "Regular Talk", "language": "en", "abstract": "\u30cf\u30a4\u30d1\u30fc\u30d1\u30e9\u30e1\u30fc\u30bf\u6700\u9069\u5316\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30afOptuna\u306f\u3001\u3059\u3067\u306b\u591a\u304f\u306e\u6a5f\u68b0\u5b66\u7fd2\u30a8\u30f3\u30b8\u30cb\u30a2\u306b\u5229\u7528\u3055\u308c\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3068\u306a\u308a\u307e\u3057\u305f\u3002\u73fe\u5728\u3082\u6d3b\u767a\u306b\u958b\u767a\u304c\u7d9a\u3044\u3066\u304a\u308a\u65e5\u3005\u591a\u304f\u306e\u65b0\u6a5f\u80fd\u304c\u52a0\u308f\u308b\u4e00\u65b9\u3067\u3001\u3084\u3084\u30cb\u30c3\u30c1\u306a\u9818\u57df\u3067\u3042\u308b\u305f\u3081\u306bOptuna\u306e\u4e00\u822c\u7684\u306a\u5229\u7528\u8005\u306b\u306f\u307e\u3060\u307e\u3060\u77e5\u3089\u308c\u3066\u3044\u306a\u3044\u6a5f\u80fd\u3082\u591a\u304f\u5b58\u5728\u3057\u307e\u3059\u3002\u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u306f\u3001Optuna\u306e\u30b3\u30a2\u958b\u767a\u8005\u3092\u52d9\u3081\u308b\u767a\u8868\u8005\u304c\u3001Optuna\u3092\u3088\u308a\u4e00\u5c64\u4f7f\u3044\u3053\u306a\u3057\u3066\u3044\u305f\u3060\u304f\u305f\u3081\u306e\u6700\u65b0\u6a5f\u80fd\u3084\u30e6\u30fc\u30b9\u30b1\u30fc\u30b9\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002", "description": "\u767a\u8868\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u6d41\u308c\u3092\u4e88\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002\n\n1. \u81ea\u5df1\u7d39\u4ecb\n2. \u767a\u8868\u306e\u30a2\u30b8\u30a7\u30f3\u30c0\n3. \u30cf\u30a4\u30d1\u30fc\u30d1\u30e9\u30e1\u30fc\u30bf\u6700\u9069\u5316\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30afOptuna\u306e\u7d39\u4ecb\n    * Optuna\u306e\u57fa\u672c\u7684\u306a\u4f7f\u3044\u65b9\n    * Optuna\u306e\u5229\u7528\u4e8b\u4f8b\u7d39\u4ecb\n4. Optuna\u306e\u6700\u65b0\u6a5f\u80fd\uff1aHuman-in-the-loop\u6700\u9069\u5316\n    * Optuna\u304c\u3053\u308c\u307e\u3067\u6271\u3046\u3053\u3068\u304c\u3067\u304d\u306a\u304b\u3063\u305f\u30e6\u30fc\u30b9\u30b1\u30fc\u30b9\u306e\u7d39\u4ecb\n    * Optuna\u958b\u767a\u30c1\u30fc\u30e0\u304c\u529b\u3092\u5165\u308c\u3066\u958b\u767a\u3092\u9032\u3081\u3066\u3044\u308b\u6700\u65b0\u6a5f\u80fd\u300cHuman-in-the-loop\u6700\u9069\u5316\u300d\u306e\u7d39\u4ecb\n    * LLM\u3084Stable Diffusion\u306b\u9069\u7528\u3059\u308b\u30c7\u30e2\u306e\u7d39\u4ecb (\u5b9f\u969b\u306b\u52d5\u4f5c\u3057\u3066\u3044\u308b\u69d8\u5b50\u3092\u753b\u9762\u5171\u6709\u3057\u306a\u304c\u3089\u304a\u8a71\u3059\u308b\u4e88\u5b9a\u3067\u3059)\n5. \u305d\u306e\u4ed6\u306e\u6700\u65b0\u6a5f\u80fd\u306e\u7d39\u4ecb\n    * Optuna\u306e\u6700\u65b0\u30ea\u30ea\u30fc\u30b9 v3.2 \u3084\u305d\u308c\u4ee5\u964d\u306e\u30ea\u30ea\u30fc\u30b9\u3067\u5c0e\u5165\u3055\u308c\u305f\u6700\u65b0\u6a5f\u80fd\u3092\u3044\u304f\u3064\u304b\u30d4\u30c3\u30af\u30a2\u30c3\u30d7\u3057\u7d39\u4ecb\u3057\u307e\u3059\u3002\n    * \u306a\u304a\u3001PyCon APAC\u306e\u958b\u50ac\u307e\u3067\u306b2\u3064\u306eOptuna\u30ea\u30ea\u30fc\u30b9\u304c\u4e88\u5b9a\u3055\u308c\u3066\u3044\u308b\u305f\u3081\u3001\u305d\u306e\u6642\u70b9\u3067\u6700\u65b0\u306e\u6a5f\u80fd\u3092\u7d39\u4ecb\u3055\u305b\u3066\u3044\u305f\u3060\u304d\u305f\u3044\u306a\u3068\u601d\u3063\u3066\u3044\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u3001\u3053\u3053\u3067\u7d39\u4ecb\u3059\u308b\u5185\u5bb9\u306f\u4e00\u90e8\u672a\u5b9a\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u3002\n6. \u307e\u3068\u3081\n    * \u672c\u30bb\u30c3\u30b7\u30e7\u30f3\u3067\u304a\u8a71\u3057\u305f\u3053\u3068\u3092\u632f\u308a\u8fd4\u308a\n    * \u307f\u306a\u3055\u307e\u3078\u306e\u304a\u9858\u3044\uff1aOptuna\u304a\u3088\u3073Human-in-the-loop\u6700\u9069\u5316\u3092\u69d8\u3005\u306a\u554f\u984c\u306b\u5fdc\u7528\u3057\u3066\u5229\u7528\u4e8b\u4f8b\u3092\u767a\u4fe1\u3057\u3066\u3044\u305f\u3060\u3051\u308c\u3070\u5e78\u3044\u3067\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "SPPK3H", "name": "Masashi Shibata", "avatar": "https://pretalx.com/media/avatars/SPPK3H_Sz7N6dS.webp", "biography": "\u5b9f\u8df5Django\u8457\u8005 / \u30a8\u30ad\u30b9\u30d1\u30fc\u30c8Python\u30d7\u30ed\u30b0\u30e9\u30df\u30f3\u30b0 \u6539\u5b9a2\u7248 \u304a\u3088\u3073\u6539\u5b9a3\u7248 \u7ffb\u8a33\u8005 / Optuna\u30b3\u30a2\u958b\u767a\u30e1\u30f3\u30d0\u30fc / Optuna Dashboard\u4f5c\u8005 / GitHub: @c-bata", "public_name": "Masashi Shibata", "guid": "c8632449-d1f2-5d13-8e5e-278c897d327a", "url": "https://pretalx.com/pyconapac2023/speaker/SPPK3H/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/MH78PW/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/MH78PW/", "attachments": []}, {"guid": "d8af2bb2-be3c-5cc8-b124-6895c963fe3f", "code": "MBUFSH", "id": 32703, "logo": null, "date": "2023-10-28T16:00:00+09:00", "start": "16:00", "duration": "00:30", "room": "track 4", "slug": "pyconapac2023-32703-python-apache-airflow", "url": "https://pretalx.com/pyconapac2023/talk/MBUFSH/", "title": "Python\u306e\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30a8\u30f3\u30b8\u30f3 Apache Airflow\u3092\u7528\u3044\u305f\u5927\u898f\u6a21\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u69cb\u7bc9\u3068\u6539\u5584", "subtitle": "", "track": "Tips of development with Python", "type": "Regular Talk", "language": "en", "abstract": "\u4f01\u696d\u306e\u6d3b\u52d5\u3092\u3088\u308a\u826f\u304f\u3059\u308b\u305f\u3081\u306b\u3001\u30c7\u30fc\u30bf\u304b\u3089\u4fa1\u5024\u3092\u751f\u307f\u7d9a\u3051\u308b\u305f\u3081\u306b\u30c7\u30fc\u30bf\u6d3b\u7528\u3092\u884c\u3046\u3053\u3068\u304c\u5e83\u304f\u884c\u308f\u308c\u308b\u3088\u3046\u306b\u306a\u3063\u3066\u304d\u307e\u3057\u305f\u3002\n\u672c\u516c\u6f14\u3067\u306fPython\u3092\u4f7f\u3063\u3066\u5927\u898f\u6a21\u306a\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u3092\u69cb\u7bc9\u3057\u3066\u3044\u304f\u305f\u3081\u306e\u8003\u616e\u3059\u3079\u304d\u70b9\u3092\u7d39\u4ecb\u3057\u3001\u3088\u308a\u53ef\u7528\u6027\u306e\u9ad8\u3044\u5b9f\u884c\u74b0\u5883\u3092\u69cb\u7bc9\u3059\u308b\u65b9\u6cd5\u3092\u5171\u6709\u3057\u307e\u3059\u3002\n\u7279\u306bEC\u30b5\u30a4\u30c8\u3067\u306e\u5897\u3048\u7d9a\u3051\u308b\u30c7\u30fc\u30bf\u306b\u5bfe\u3057\u3066Apache Airflow\u306e\u30de\u30cd\u30fc\u30b8\u30c9\u30b5\u30fc\u30d3\u30b9 \u3067\u3042\u308bGoogle Cloud\u306e Cloud Composer\u3092\u4f7f\u3046\u3068\u3001\u3088\u308a\u65e9\u304f\u3001\u3088\u308a\u30ed\u30d0\u30b9\u30c8\u306a\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u304c\u5b9f\u88c5\u3057\u3084\u3059\u304f\u306a\u308b\u3053\u3068\u3092\u5171\u6709\u3057\u307e\u3059\u3002", "description": "\u73fe\u4ee3\u306e\u30d3\u30b8\u30cd\u30b9\u3067\u306f\u3001\u30c7\u30fc\u30bf\u306e\u6d3b\u7528\u304c\u4f01\u696d\u6d3b\u52d5\u306e\u52b9\u7387\u5316\u3084\u65b0\u305f\u306a\u4fa1\u5024\u5275\u9020\u306b\u5bfe\u3059\u308b\u9375\u3068\u5e83\u304f\u8a8d\u8b58\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u30c7\u30fc\u30bf\u306f\u3001\u81a8\u5927\u306a\u60c5\u5831\u91cf\u304b\u3089\u6d1e\u5bdf\u3092\u5f15\u304d\u51fa\u3057\u3001\u6226\u7565\u7684\u610f\u601d\u6c7a\u5b9a\u3092\u652f\u63f4\u3057\u307e\u3059\u3002\u7279\u306b\u3001EC\u30b5\u30a4\u30c8\u306e\u904b\u55b6\u306b\u306f\u30c7\u30fc\u30bf\u91cf\u306e\u5897\u52a0\u306b\u5bfe\u5fdc\u3059\u308b\u305f\u3081\u306b\u3001\u5927\u898f\u6a21\u306a\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306e\u69cb\u7bc9\u304c\u4e0d\u53ef\u6b20\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u3002\n\n\u672c\u516c\u6f14\u3067\u306f\u3001\u5546\u54c1\u60c5\u5831\u306e\u69cb\u7bc9\u3092\u984c\u6750\u306b\u3001\u691c\u7d22\u30b7\u30b9\u30c6\u30e0\u306e\u30de\u30a4\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u3068\u3001\u30c7\u30fc\u30bf\u306e\u8868\u793a\u306b\u95a2\u308f\u308b\u696d\u52d9\u5229\u7528\u306b\u5bfe\u3059\u308b\u30c7\u30fc\u30bf\u52a0\u5de5\u3068API\u306e\u63d0\u4f9b\u3092\u884c\u3063\u305f\u4e8b\u4f8b\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002\u69cb\u7bc9\u3059\u308b\u4e2d\u3067\u3001\u8907\u96d1\u306a\u30c7\u30fc\u30bf\u30d5\u30ed\u30fc\u3092\u7ba1\u7406\u3057\u3001\u4e00\u8cab\u6027\u3092\u4fdd\u3064\u305f\u3081\u306e\u8981\u70b9\u3092\u8a73\u7d30\u306b\u89e3\u8aac\u3057\u3001\u4fe1\u983c\u6027\u304c\u9ad8\u304f\u52b9\u7387\u7684\u306a\u5b9f\u884c\u74b0\u5883\u306e\u8a2d\u8a08\u65b9\u6cd5\u3092\u5171\u6709\u3057\u307e\u3059\u3002\u6a5f\u80fd\u8981\u4ef6/\u975e\u6a5f\u80fd\u8981\u4ef6\u304c\u3042\u308b\u4e2d\u3067\u7740\u76ee\u3057\u3066\u6539\u5584\u3057\u3066\u3044\u3063\u305f\u904e\u7a0b\u3082\u4e8b\u4f8b\u3092\u4ea4\u3048\u3066\u5171\u6709\u3057\u307e\u3059\u3002\n\n\u307e\u305f\u3001\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306fGoogle Cloud\u306eCloud Composer\u3068\u3044\u3046Apache Airflow\u306e\u30de\u30cd\u30fc\u30b8\u30c9\u30b5\u30fc\u30d3\u30b9\u3092\u5229\u7528\u3057\u3066\u69cb\u7bc9\u3057\u307e\u3057\u305f\u3002Airflow\u3092\u7528\u3044\u3066\u30c7\u30fc\u30bf\u51e6\u7406\u306e\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u3092\u3088\u308a\u65e9\u304f\u3001\u3088\u308a\u30ed\u30d0\u30b9\u30c8\u306b\u69cb\u7bc9\u3059\u308b\u65b9\u6cd5\u306b\u3064\u3044\u3066\u3082\u5177\u4f53\u7684\u306b\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n\u672c\u516c\u6f14\u3092\u901a\u3058\u3066\u3001\u30c7\u30fc\u30bf\u6d3b\u7528\u3068\u305d\u306e\u5177\u4f53\u7684\u306a\u6280\u8853\u306b\u3064\u3044\u3066\u6df1\u304f\u7406\u89e3\u3057\u3001\u3054\u81ea\u8eab\u306e\u30d3\u30b8\u30cd\u30b9\u74b0\u5883\u306b\u3069\u306e\u3088\u3046\u306b\u9069\u7528\u3059\u308b\u304b\u3092\u30a4\u30e1\u30fc\u30b8\u3057\u3066\u3044\u305f\u3060\u3051\u308b\u3068\u5e78\u3044\u3067\u3059\u3002\n\n* \u30c7\u30fc\u30bf\u6d3b\u7528\u57fa\u76e4\u3068\u306f\n    * \u30c7\u30fc\u30bf\u6d3b\u7528\u57fa\u76e4\u306e\u7d39\u4ecb\n* \u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306e\u69cb\u7bc9\n    * \u30c7\u30fc\u30bf\u6d3b\u7528\u57fa\u76e4\u3067\u306e\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306e\u69cb\u7bc9\u306a\u3069\u3092\u7d39\u4ecb\n* Apache Airflow\u306e\u7d39\u4ecb\n* \u4e8b\u4f8b\u7d39\u4ecb\n    * \u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u3092\u69cb\u7bc9\u3057\u3066\u6539\u5584\u3057\u3066\u3044\u304f\u65b9\u6cd5\n        * \u4e8b\u4f8b\u3092\u4ea4\u3048\u306a\u304c\u3089 apache airflow\u3067\u306e\u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u69cb\u7bc9\u3068\u6539\u5584\u306e\u6d41\u308c\u3092\u7d39\u4ecb\n    \u3000* Google cloud\u306e\u30de\u30cd\u30fc\u30b8\u30c9\u30b5\u30fc\u30d3\u30b9Cloud Composer \u306e\u7d39\u4ecb\n    * \u30c7\u30fc\u30bf\u30d1\u30a4\u30d7\u30e9\u30a4\u30f3\u306b\u3066\u69cb\u7bc9\u3057\u305f\u30c7\u30fc\u30bf\u306eAPI\u3067\u306e\u516c\u958b\n        * \u30c7\u30fc\u30bf\u6d3b\u7528\u306e\u30c7\u30fc\u30bf\u3092\u30b7\u30b9\u30c6\u30e0\u3067\u6d3b\u304b\u3059\u305f\u3081\u306bAPI\u3068\u3057\u3066\u5171\u6709\u3059\u308b\u3068\u304d\u306e\u30ce\u30a6\u30cf\u30a6\u3092\u7d39\u4ecb\n* \u307e\u3068\u3081", "recording_license": "", "do_not_record": false, "persons": [{"code": "LCRHUR", "name": "Masato Nakamura", "avatar": "https://pretalx.com/media/avatars/LCRHUR_UPeg9xu.webp", "biography": "\u3044\u308f\u3086\u308b\u666e\u901a\u306e\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u30a8\u30f3\u30b8\u30cb\u30a2\u3067\u3059\u3002\u682a\u5f0f\u4f1a\u793eMonotaRO\u306b\u3066E\u30b3\u30de\u30fc\u30b9\u5411\u3051\u6b21\u4e16\u4ee3\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u958b\u767a\u57fa\u76e4\u306e\u958b\u767a, \u904b\u7528\u3092\u884c\u306a\u3063\u3066\u3044\u307e\u3059\u3002\n\u30c7\u30fc\u30bf\u30a4\u30f3\u30d5\u30e9\u3092\u6d3b\u7528\u3059\u308b\u305f\u3081\u306e\u30c7\u30fc\u30bf\u306e\u4f5c\u6210\u3001\u304a\u3088\u3073\u3001\u30c7\u30fc\u30bf\u3092\u751f\u304b\u3057\u305fAPI\u306e\u69cb\u7bc9\u3092\u62c5\u5f53\u3057\u3066\u3044\u307e\u3059\u3002", "public_name": "Masato Nakamura", "guid": "aede93c8-6989-57c7-ad62-238ec0575718", "url": "https://pretalx.com/pyconapac2023/speaker/LCRHUR/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/MBUFSH/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/MBUFSH/", "attachments": []}], "track 5": [{"guid": "d27c78dd-281f-55b7-960b-3d167bcdf578", "code": "3ZKVLJ", "id": 32824, "logo": null, "date": "2023-10-28T11:45:00+09:00", "start": "11:45", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32824-learn-python-by-contributing-to-open-source", "url": "https://pretalx.com/pyconapac2023/talk/3ZKVLJ/", "title": "Learn Python by contributing to open source", "subtitle": "", "track": "Python in education", "type": "15 Minute Talk", "language": "en", "abstract": "Discover the power of learning Python by contributing to open-source projects. Gain practical experience, collaborate with the community, and enhance your coding skills. Unlock the potential of Python while making a positive impact in the world of open source.", "description": "This session explores the educational value of Python by engaging in open-source contributions. Discover how actively participating in open-source projects enhances learning, collaboration, and coding skills. Attendees will gain insights into the educational benefits of contributing to the Python community while making a tangible impact on real-world projects. Explore the synergistic relationship between Python, open source, and education, and empower yourself to become a proficient Python programmer through hands-on involvement in the open-source ecosystem.", "recording_license": "", "do_not_record": false, "persons": [{"code": "HS9WCJ", "name": "Ananya Nayak", "avatar": "https://pretalx.com/media/avatars/HS9WCJ_zD6LZAu.webp", "biography": "Developer | Open Source advocate | DevOps enthusiast", "public_name": "Ananya Nayak", "guid": "73e6affb-83a2-5e69-a42d-56737b62d209", "url": "https://pretalx.com/pyconapac2023/speaker/HS9WCJ/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/3ZKVLJ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/3ZKVLJ/", "attachments": []}, {"guid": "39ed66df-02d5-57bc-8d9c-02d98dfb9b4f", "code": "XAPKCP", "id": 33211, "logo": null, "date": "2023-10-28T12:10:00+09:00", "start": "12:10", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-33211-djangorestframework", "url": "https://pretalx.com/pyconapac2023/talk/XAPKCP/", "title": "DjangoRestFramework\u306e\u30ea\u30d5\u30a1\u30af\u30bf\u30ea\u30f3\u30b0\u3001\u30ec\u30ac\u30b7\u30fc\u306a\u30b3\u30fc\u30c9\u306e\u5bff\u547d\u3092\u5ef6\u3070\u3059\u305f\u3081\u306b", "subtitle": "", "track": "Web programming", "type": "15 Minute Talk", "language": "en", "abstract": "Python\u306e\u30d6\u30fc\u30e0\u304b\u3089\u304b\u306a\u308a\u306e\u5e74\u6708\u304c\u7d4c\u3061\u3001\u8272\u3005\u306a\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u30b3\u30fc\u30c9\u3082\u3069\u3093\u3069\u3093\u8ca0\u306e\u907a\u7523\u304c\u8caf\u307e\u3063\u3066\u3044\u3066\u6765\u3066\u3044\u308b\u3068\u601d\u3044\u307e\u3059\u3002\n\u305d\u3093\u306a\u306a\u304b\u300110\u5e74\u8fd1\u304f\u52d5\u3044\u3066\u3044\u305f\u30e2\u30d0\u30a4\u30eb\u30b5\u30fc\u30d3\u30b9\u306e\u30d0\u30c3\u30af\u30a8\u30f3\u30c9\u3068\u3057\u3066\u4f7f\u308f\u308c\u3066\u304d\u305fDjangoRestFramework\u306e\u5bff\u547d\u3092\u5ef6\u3070\u3059\u305f\u3081\u306b\u3084\u3063\u305f\u65bd\u7b56\u3084\u53d6\u308a\u5165\u308c\u305f\u30ea\u30d5\u30a1\u30af\u30bf\u30ea\u30f3\u30b0\u624b\u6cd5\u306b\u3064\u3044\u3066\u8aac\u660e\u3057\u3066\u3044\u304d\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002", "description": "\u79c1\u304c\u95a2\u308f\u3063\u305f 10\u5e74\u8fd1\u304f\u7a3c\u50cd\u3057\u3066\u3044\u308bDjango\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3092\u6539\u4fee\u3059\u308b\u305f\u3081\u306b\u884c\u3063\u305f\u3053\u3068\u306b\u3064\u3044\u3066\u8a71\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002\n\u3053\u306e\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u3067\u306fPython2\u7cfb\u306e\u9803\u304b\u3089Django\u304c\u4f7f\u308f\u308c\u3066\u304d\u3066Python3\u3078\u306e\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3084Django\u30823\u7cfb\u3078\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3057\u3066\u3044\u304f\u306a\u3069\u9577\u304f\u4f7f\u3048\u3066\u3044\u308b\u30b7\u30b9\u30c6\u30e0\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u3002\n\u3057\u304b\u3057\u3001\u304b\u306a\u308a\u30ec\u30ac\u30b7\u30fc\u306a\u7b87\u6240\u3084\u610f\u56f3\u4e0d\u660e\u306a\u7b87\u6240\u3082\u591a\u304f\u3001\u305d\u3093\u306a\u30ec\u30ac\u30b7\u30fc\u30b3\u30fc\u30c9\u306e\u4e00\u8cab\u6027\u3092\u4fdd\u3061\u306a\u304c\u3089\u5f90\u3005\u306b\u6539\u5584\u3092\u3057\u3066\u3055\u3089\u306b\u4f7f\u3048\u308b\u30b7\u30b9\u30c6\u30e0\u3068\u3057\u3066\u6539\u4fee\u3092\u3057\u3066\u3044\u3063\u305f\u8a71\u3092\u3057\u3088\u3046\u3068\u601d\u3044\u307e\u3059\u3002\n\n### \u2460Fat Controller\u554f\u984c\nDjangoRestFramework\u3067\u3082APIView\u3092\u30e1\u30a4\u30f3\u306b\u4f7f\u3063\u3066\u3044\u305f\u305f\u3081\u3001\u3059\u3079\u3066\u306e\u30d3\u30b8\u30cd\u30b9\u30ed\u30b8\u30c3\u30af\u304cview\u306b\u66f8\u304b\u308c\u3066\u3057\u307e\u3046\u3068\u8a00\u3046\u6b20\u70b9\u304c\u3042\u308a\u307e\u3057\u305f\u3002\n\u305d\u308c\u306b\u5bfe\u3057\u3066\u884c\u3063\u305f\u89e3\u6c7a\u7b56\u3068\u3057\u3066 Service\u5c64\u3092\u5c0e\u5165\u3057\u305f\u8a71\u3092\u3057\u3088\u3046\u3068\u601d\u3044\u307e\u3059\u3002\n\n### \u2461swagger\n\u30e2\u30d0\u30a4\u30eb\u30a8\u30f3\u30b8\u30cb\u30a2\u3068\u306e\u3084\u308a\u3068\u308a\u306fswagger\u3067\u884c\u3063\u3066\u3044\u307e\u3057\u305f\u304c\u3001\u3059\u3079\u3066\u624b\u52d5\u3067\u884c\u3063\u3066\u3044\u305f\u305f\u3081\u3001\u5b9f\u4f53\u3068\u5168\u304f\u5408\u3063\u3066\u3044\u306a\u3044\u3068\u3044\u3046\u554f\u984c\u304c\u767a\u751f\u3057\u3066\u3044\u307e\u3057\u305f\u3002\n\u305d\u306e\u305f\u3081\u3001\u81ea\u52d5\u3067swagger\u3092\u751f\u6210\u3059\u308b\u4ed5\u7d44\u307f\u306e\u5c0e\u5165\u3057\u307e\u3057\u305f\n\n### \u2462request\u306e\u30c1\u30a7\u30c3\u30af\n\u307e\u305fswagger\u306b\u5408\u308f\u305b\u3066request body\u3084\u30af\u30a8\u30ea\u6587\u5b57\u5217\u306e\u30c1\u30a7\u30c3\u30af\u306e\u305f\u3081\u306eSerializer\u3092\u5c0e\u5165\u3057\u305f\u3053\u3068\u3082\u8a71\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\u3002\n\n### \u2463\u30b3\u30fc\u30c9\u306e\u4e00\u8cab\u6027\u3092\u4fdd\u3061\u306a\u304c\u3089\u5909\u3048\u3066\u3044\u304f\u3053\u3068\n\u65e2\u5b58\u306e(\u3084\u3084\u5fae\u5999\u306a)\u30b3\u30fc\u30c9\u3068\u306e\u4e00\u8cab\u6027\u3092\u4fdd\u3061\u306a\u304c\u3089\u5f90\u3005\u306b\u30ea\u30d5\u30a1\u30af\u30bf\u30ea\u30f3\u30b0\u3092\u5165\u308c\u3064\u3064\u65b0\u898f\u306e\u51e6\u7406\u3067\u306f\u53ef\u8aad\u6027\u3068\u30b3\u30e1\u30f3\u30c8\u3092\u610f\u8b58\u3057\u3064\u3064\u76f4\u3057\u3066\u884c\u3063\u305f\u3068\u3044\u3046\u7d4c\u7def\u306e\u8a71\u3082\u3057\u305f\u3044\u3068\u601d\u3044\u307e\u3059\n\n### \u2464\u30c6\u30b9\u30c8\u306b\u3064\u3044\u3066\n\u30b3\u30fc\u30c9\u306e\u5bff\u547d\u3092\u5ef6\u3070\u3059\u305f\u3081\u306e\u30c6\u30b9\u30c8\u30b3\u30fc\u30c9\u3067\u610f\u8b58\u3057\u305f\u3053\u3068\u3001\u30c6\u30b9\u30c8\u5168\u4f53\u306e\u554f\u984c\u70b9\u3068\u6539\u5584\u3057\u305f\u3053\u3068(\u30c6\u30b9\u30c8\u30b1\u30fc\u30b9\u304c\u591a\u3059\u304e\u3066ci\u3067\u6050\u308d\u3057\u3044\u6642\u9593\u304c\u304b\u304b\u308b\u3001subtest\u306e\u5c0e\u5165\u3001\u65e5\u672c\u8a9e\u30c6\u30b9\u30c8\u30b1\u30fc\u30b9\u306e\u5c0e\u5165\u306a\u3069)\n\n### \u2465\u305d\u306e\u4ed6\u7d30\u304b\u3044tips\n\u4e0a\u8a18\u306b\u306f\u5f53\u3066\u306f\u307e\u3089\u306a\u3044\u7d30\u304b\u3044\u6539\u5584(\u30c6\u30b9\u30c8\u306e\u901f\u5ea6\u6539\u5584\u3001pre-commit\u3084black\u3001poetry\u306e\u5c0e\u5165\u306a\u3069)\u306b\u3064\u3044\u3066\u8ff0\u3079\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\u3002", "recording_license": "", "do_not_record": false, "persons": [{"code": "XENVPM", "name": "YUUKI NAKAJIMA", "avatar": "https://pretalx.com/media/avatars/XENVPM_qDMOWb0.webp", "biography": "", "public_name": "YUUKI NAKAJIMA", "guid": "4144546c-7848-5f80-b97c-6b688771b208", "url": "https://pretalx.com/pyconapac2023/speaker/XENVPM/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/XAPKCP/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/XAPKCP/", "attachments": []}, {"guid": "8e46bc8e-1a28-5920-af82-492234f68afc", "code": "VYAE8G", "id": 32846, "logo": null, "date": "2023-10-28T13:30:00+09:00", "start": "13:30", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32846-how-much-data-can-we-cram-into-16g-ram-with-less-budget", "url": "https://pretalx.com/pyconapac2023/talk/VYAE8G/", "title": "How much data can we cram into 16G RAM with less budget?", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "The amount of memory typically used can range from a minimum of 4G to a maximum of 64G or more. Some enterprises use even more memory than this, but in most cases, the amount of memory that can handle large volumes is limited by cost.\nLet's explore different ways to approach the problem of processing large amounts of data in a constrained environment at the lowest cost using Python.", "description": "To maximize data handling within a 16GB memory constraint using Python while minimizing costs, consider the following strategies:\n\n* Sampling data and removing unused data: Working with representative data samples and discarding unnecessary data.\n\n* Chunks and iterators: Processing data in smaller chunks and utilizing iterators to work incrementally.\n\n* Memory-efficient data structures: Choosing data structures optimized for memory usage, such as numpy arrays or pandas dataframes.\n\n* Using the data compression parquet format: Compressing data using the parquet format to reduce memory footprint.\n\n* Parallelization: Leveraging parallel processing techniques to distribute the computational load across multiple cores or machines.\n\n* Using databases: Employing database systems like SQLite or PostgreSQL to store and query large datasets efficiently.\n\n* Distributed processing frameworks Dask, Spark, etc.: Utilizing frameworks like Dask or Spark for distributed processing and handling large-scale data.\n\nEach approach has its own advantages and disadvantages in terms of performance, complexity, and setup. Learn how to choose a strategy that fits your specific use case, data characteristics, and available resources to make the most efficient use of limited memory while keeping costs low.", "recording_license": "", "do_not_record": false, "persons": [{"code": "XUGWWF", "name": "Joeun Park", "avatar": "https://pretalx.com/media/avatars/XUGWWF_j04ccXs.webp", "biography": "She has worked as a backend developer for gaming and advertising companies. She runs the TodayCode YouTube channel on data science. She is also a Microsoft MVP and loves to share and grow with the community. (https://www.youtube.com/todaycode)", "public_name": "Joeun Park", "guid": "598f61a6-95cf-569a-b8a1-69185cc334f9", "url": "https://pretalx.com/pyconapac2023/speaker/XUGWWF/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VYAE8G/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VYAE8G/", "attachments": []}, {"guid": "a6211c0d-6f2c-562e-81ac-6204dfe36bf0", "code": "3AFMSE", "id": 32783, "logo": null, "date": "2023-10-28T13:55:00+09:00", "start": "13:55", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32783-digital-transformationpython", "url": "https://pretalx.com/pyconapac2023/talk/3AFMSE/", "title": "Digital Transformation\u3092Python\u3092\u4f7f\u3063\u3066\u9032\u3081\u3088\u3046\uff01", "subtitle": "", "track": "Others", "type": "15 Minute Talk", "language": "en", "abstract": "\u65e5\u672c\u4f01\u696d\u306f\u3059\u3067\u306b\u30c7\u30b8\u30bf\u30eb\u5316\u306e\u9053\u3092\u9032\u3093\u3067\u304a\u308a\u3001\u793e\u5185\u306b\u306f\u6709\u7528\u306a\u30c7\u30fc\u30bf\u304c\u84c4\u7a4d\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u6b21\u306f\u3053\u308c\u3089\u3092\u793e\u4f1a\u306e\u52d5\u304d\u3068\u7d50\u3073\u3064\u3051\u3001\u52b9\u7387\u5316\u3068\u4fa1\u5024\u3092\u5275\u9020\u3059\u308b\u6bb5\u968e\u3067\u3059\u3002\u672c\u30c8\u30fc\u30af\u3067\u306f\u3001\u3053\u3053\u3067Python\u304c\u5f79\u7acb\u3064\u3053\u3068\u3092\u793a\u3057\u307e\u3059\u3002\n\u793e\u4f1a\u306e\u52d5\u304d\u3092\u793a\u3059\u30c7\u30fc\u30bf\u306f\u3059\u3067\u306b\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u3068\u3057\u3066\u6574\u5099\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u305d\u306e\u4e2d\u306b\u306f\u30d3\u30b8\u30cd\u30b9\u306b\u4f7f\u3044\u3084\u3059\u3044\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u3082\u3042\u308a\u307e\u3059\u3002Python\u306e\u5145\u5b9f\u3057\u305f\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u3092\u6d3b\u7528\u3059\u308c\u3070\u3001\u3053\u308c\u3089\u306e\u30c7\u30fc\u30bf\u3092\u7c21\u5358\u306b\u5206\u6790\u3057\u3001\u4f01\u696d\u4fa1\u5024\u306e\u5275\u51fa\u3092\u59cb\u3081\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002Colab\u3001Panel\u3001plotly\u3001pandas\u306a\u3069\u3092\u99c6\u4f7f\u3057\u3066\u3001Python\u306e\u5206\u6790\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u5f37\u307f\u3092\u6700\u5927\u9650\u306b\u751f\u304b\u3057\u3001\u4f01\u696d\u4fa1\u5024\u5411\u4e0a\u306b\u3064\u306a\u3052\u308b\u3053\u3068\u3092\u63d0\u6848\u3057\u307e\u3059\u3002\n\u5177\u4f53\u7684\u306b\u306f\u3001\u30d3\u30b8\u30cd\u30b9\u306b\u6d3b\u7528\u3057\u3084\u3059\u3044\u30c7\u30fc\u30bf\u30bb\u30c3\u30c8\u306e\u7d39\u4ecb\u3068\u3001\u5b9f\u969b\u306b\u6c17\u8c61\u30c7\u30fc\u30bf\u30fb\u5730\u4e0b\u9244\u306e\u4e57\u8eca\u6570\u30fb\u4eee\u60f3\u58f2\u4e0a\u30c7\u30fc\u30bf\u3092Python\u3067\u5206\u6790\u3057\u3001\u4f01\u696d\u4fa1\u5024\u3092\u5411\u4e0a\u3055\u305b\u308b\u65b9\u6cd5\u306e\u63d0\u6848\u3092\u884c\u3044\u307e\u3059\u3002", "description": "\u4f01\u696d\u304c\u30c7\u30b8\u30bf\u30eb\u5316\u3092\u9032\u3081\u308b\u4e2d\u3067\u3001\u793e\u5185\u30c7\u30fc\u30bf\u306e\u5229\u7528\u306f\u4e00\u822c\u5316\u3057\u3066\u304d\u307e\u3057\u305f\u3002\u6b21\u306e\u30b9\u30c6\u30c3\u30d7\u306f\u3001\u3053\u308c\u3089\u306e\u30c7\u30fc\u30bf\u3092\u793e\u4f1a\u306e\u52d5\u304d\u3068\u7d44\u307f\u5408\u308f\u305b\u308b\u3053\u3068\u3067\u3059\u3002\u3053\u3053\u3067\u91cd\u8981\u3068\u306a\u308b\u306e\u304c\u3001\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u306e\u6d3b\u7528\u3067\u3059\u3002\u3057\u304b\u3057\u3001\u30d3\u30b8\u30cd\u30b9\u306b\u4f7f\u3044\u3084\u3059\u3044\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u306f\u9650\u3089\u308c\u3066\u3044\u307e\u3059\u3002\u305d\u3053\u3067\u5f79\u7acb\u3061\u305d\u3046\u306a\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u306e\u7d39\u4ecb\u3068\u3001Python\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u3092\u7528\u3044\u3066\u3069\u306e\u3088\u3046\u306b\u3057\u3066\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u3092\u4f01\u696d\u4fa1\u5024\u5275\u9020\u306b\u3064\u306a\u3052\u308b\u304b\u3001\u305d\u306e\u65b9\u6cd5\u3068\u6280\u8853\u3092\u63d0\u6848\u3057\u307e\u3059\u3002\n\nPython\u306e\u4f7f\u3044\u65b9\uff1a\n\u3053\u306e\u30d7\u30ec\u30bc\u30f3\u30c6\u30fc\u30b7\u30e7\u30f3\u3067\u306f\u3001Python\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u306e\u69d8\u3005\u306a\u30c4\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u307e\u3059\u3002\n\nGoogle Colab: Python\u306e\u30b3\u30fc\u30c9\u3092\u30d6\u30e9\u30a6\u30b6\u4e0a\u3067\u66f8\u304d\u3001\u5b9f\u884c\u3067\u304d\u308b\u30af\u30e9\u30a6\u30c9\u30d9\u30fc\u30b9\u306eJupyter\u30ce\u30fc\u30c8\u30d6\u30c3\u30af\u74b0\u5883\u3067\u3059\u3002Colab\u3092\u4f7f\u3063\u3066\u30c7\u30fc\u30bf\u5206\u6790\u306e\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u3092\u5171\u6709\u3057\u3001\u8996\u899a\u5316\u3057\u307e\u3059\u3002\n\nPanel: \u30c7\u30fc\u30bf\u306e\u53ef\u8996\u5316\u3068\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306a\u63a2\u7d22\u3092\u53ef\u80fd\u306b\u3059\u308b\u9ad8\u30ec\u30d9\u30eb\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u3001\u30c0\u30c3\u30b7\u30e5\u30dc\u30fc\u30c9\u3084\u30a2\u30d7\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002Panel\u3092\u4f7f\u3063\u3066\u52d5\u7684\u306a\u30c7\u30fc\u30bf\u53ef\u8996\u5316\u3092\u4f5c\u6210\u3057\u3001\u5206\u6790\u7d50\u679c\u3092\u8996\u899a\u7684\u306b\u8868\u73fe\u3057\u307e\u3059\u3002\n\nPlotly: \u9ad8\u5ea6\u306a\u30a4\u30f3\u30bf\u30e9\u30af\u30c6\u30a3\u30d6\u306a\u30c7\u30fc\u30bf\u53ef\u8996\u5316\u3092\u53ef\u80fd\u306b\u3059\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002Plotly\u3092\u7528\u3044\u3066\u3001\u30c7\u30fc\u30bf\u306e\u7279\u5fb4\u3084\u30d1\u30bf\u30fc\u30f3\u3092\u8996\u899a\u7684\u306b\u660e\u78ba\u306b\u3057\u307e\u3059\u3002\n\nPandas: \u30c7\u30fc\u30bf\u306e\u524d\u51e6\u7406\u3068\u63a2\u7d22\u7684\u30c7\u30fc\u30bf\u5206\u6790\u306e\u305f\u3081\u306e\u30c4\u30fc\u30eb\u3067\u3059\u3002Pandas\u3092\u7528\u3044\u3066\u30c7\u30fc\u30bf\u306e\u30af\u30ea\u30fc\u30cb\u30f3\u30b0\u3001\u5909\u63db\u3001\u96c6\u7d04\u3092\u884c\u3044\u307e\u3059\u3002\n\n\u3053\u308c\u3089\u306e\u30c4\u30fc\u30eb\u3092\u7d44\u307f\u5408\u308f\u305b\u3066\u4f7f\u7528\u3059\u308b\u3053\u3068\u3067\u3001\u30c7\u30fc\u30bf\u306e\u524d\u51e6\u7406\u304b\u3089\u53ef\u8996\u5316\u3001\u5206\u6790\u3001\u4e88\u6e2c\u307e\u3067\u306e\u4e00\u9023\u306e\u30c7\u30fc\u30bf\u30b5\u30a4\u30a8\u30f3\u30b9\u306e\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u3092\u5b9f\u73fe\u3057\u307e\u3059\u3002\u5177\u4f53\u7684\u306a\u4f7f\u7528\u65b9\u6cd5\u3068\u30b3\u30fc\u30c9\u4f8b\u3092\u7d39\u4ecb\u3059\u308b\u3053\u3068\u3067\u3001\u30aa\u30fc\u30c7\u30a3\u30a8\u30f3\u30b9\u304c\u3053\u308c\u3089\u306e\u30c4\u30fc\u30eb\u3092\u81ea\u8eab\u306e\u30c7\u30fc\u30bf\u5206\u6790\u30bf\u30b9\u30af\u306b\u3069\u306e\u3088\u3046\u306b\u9069\u7528\u3067\u304d\u308b\u304b\u3092\u7406\u89e3\u3059\u308b\u306e\u3092\u52a9\u3051\u307e\u3059\u3002\n\n\u30aa\u30fc\u30c7\u30a3\u30a8\u30f3\u30b9\u306b\u4f1d\u3048\u305f\u3044\u3053\u3068\uff1a\nPython\u304c\u4f01\u696d\u306e\u30c7\u30b8\u30bf\u30eb\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u63a8\u9032\u3059\u308b\u5f37\u529b\u306a\u30c4\u30fc\u30eb\u3067\u3042\u308b\u3053\u3068\u3092\u7406\u89e3\u3057\u3066\u3082\u3089\u3044\u305f\u3044\u3002\u307e\u305f\u3001Python\u3092\u7528\u3044\u3066\u793e\u5185\u30c7\u30fc\u30bf\u3068\u793e\u4f1a\u306e\u52d5\u304d\u3092\u793a\u3059\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u3092\u7d44\u307f\u5408\u308f\u305b\u308b\u3053\u3068\u3067\u3001\u65b0\u305f\u306a\u30d3\u30b8\u30cd\u30b9\u30a4\u30f3\u30b5\u30a4\u30c8\u3092\u751f\u307f\u51fa\u3057\u3001\u4f01\u696d\u4fa1\u5024\u3092\u5275\u9020\u3059\u308b\u53ef\u80fd\u6027\u3092\u793a\u3057\u307e\u3059\u3002\n\n\u30bf\u30a4\u30e0\u30c6\u30fc\u30d6\u30eb\uff0815\u5206\uff09\uff1a\n\n\u30a4\u30f3\u30c8\u30ed\u30c0\u30af\u30b7\u30e7\u30f3 (2\u5206)\n\u30c7\u30b8\u30bf\u30eb\u30c8\u30e9\u30f3\u30b9\u30d5\u30a9\u30fc\u30e1\u30fc\u30b7\u30e7\u30f3\u3068Python\u306e\u5f79\u5272\u306b\u3064\u3044\u3066\u7c21\u5358\u306b\u8aac\u660e\n\n\u30c7\u30fc\u30bf\u3068Python\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0 (3\u5206)\n\u65e5\u672c\u4f01\u696d\u306e\u30c7\u30b8\u30bf\u30eb\u5316\u3068\u305d\u306e\u4e2d\u3067\u306e\u793e\u5185\u30c7\u30fc\u30bf\u306e\u91cd\u8981\u6027\n\u4f01\u696d\u4fa1\u5024\u306e\u5411\u4e0a\u306b\u4f7f\u3048\u308b\u30aa\u30fc\u30d7\u30f3\u30c7\u30fc\u30bf\u306e\u7d39\u4ecb\nPython\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\uff08Colab\u3001Panel\u3001plotly\u3001pandas\u3001sklearn\uff09\u3068\u305d\u306e\u6d3b\u7528\u65b9\u6cd5\u306b\u3064\u3044\u3066\u6982\u8aac\n\n\u5b9f\u4f8b\u7d39\u4ecb\u3068\u5206\u6790 (6\u5206)\n\u5b9f\u969b\u306e\u6c17\u8c61\u30c7\u30fc\u30bf\u3001\u5730\u4e0b\u9244\u306e\u30c7\u30fc\u30bf\u3001\u4eee\u60f3\u58f2\u4e0a\u30c7\u30fc\u30bf\u3092\u7528\u3044\u305f\u5206\u6790\u306e\u7d39\u4ecb\n\u3053\u308c\u3089\u306e\u30c7\u30fc\u30bf\u3092Python\u306e\u30a8\u30b3\u30b7\u30b9\u30c6\u30e0\u3092\u7528\u3044\u3066\u3069\u306e\u3088\u3046\u306b\u5206\u6790\u3057\u3001\u4fa1\u5024\u3092\u5f15\u304d\u51fa\u3059\u304b\u3092\u5b9f\u6f14\n\n\u30b3\u30ed\u30ca\u798d\u306e\u5f71\u97ff\u306e\u89b3\u5bdf\u3068\u8003\u5bdf (3\u5206)\n\u4e0a\u8a18\u306e\u30c7\u30fc\u30bf\u306b\u898b\u3089\u308c\u308b\u30b3\u30ed\u30ca\u798d\u306e\u5f71\u97ff\u306b\u3064\u3044\u3066\u306e\u8003\u5bdf\n\n\u307e\u3068\u3081\uff081\u5206\uff09\n\u30c8\u30fc\u30af\u5185\u5bb9\u3092\u307e\u3068\u3081\u308b", "recording_license": "", "do_not_record": false, "persons": [{"code": "YULQTU", "name": "hideyuki ogawa", "avatar": "https://pretalx.com/media/avatars/YULQTU_LVq3F24.webp", "biography": "\u4eac\u90fd\u5728\u4f4f\u3002\u5408\u540c\u4f1a\u793e\u9577\u76ee\u7d4c\u55b6\u3002\u30c7\u30fc\u30bf\u5206\u6790\u306e\u305f\u3081\u306b\u30a2\u30e9\u30d5\u30a9\u30fc\u304b\u3089Python\u3092\u66f8\u304d\u59cb\u3081\u3001\u305d\u306e\u5f8c\u30a6\u30a7\u30d6\u30a2\u30d7\u30ea\u3092\u4f5c\u3063\u305f\u308a\u3001\u3044\u308d\u3044\u308dPython\u3092\u4f7f\u3063\u3066\u3084\u3063\u3066\u697d\u3057\u3093\u3067\u3044\u308b\u3002\u5171\u8457\u306bPython\u30a4\u30f3\u30bf\u30e9\u30c6\u30af\u30a3\u30d6\u30fb\u30c7\u30fc\u30bf\u30d3\u30b8\u30e5\u30a2\u30e9\u30a4\u30bc\u30fc\u30b7\u30e7\u30f3\u304c\u3042\u308b\u3002", "public_name": "hideyuki ogawa", "guid": "f812fd1b-10c6-5dcd-ab15-70d10b684762", "url": "https://pretalx.com/pyconapac2023/speaker/YULQTU/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/3AFMSE/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/3AFMSE/", "attachments": []}, {"guid": "24e54eb0-8b18-5a77-8136-c75a0f32783b", "code": "7XYCHB", "id": 32836, "logo": null, "date": "2023-10-28T14:20:00+09:00", "start": "14:20", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32836-pythonawesome", "url": "https://pretalx.com/pyconapac2023/talk/7XYCHB/", "title": "\u60c5\u5831\u53ce\u96c6\u3092\u52b9\u7387\u5316\u3059\u308b\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u306e\u6d3b\u7528\u65b9\u6cd5 - Python\u3067\u306f\u3058\u3081\u308bAwesome\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u4f5c\u308a\u65b9", "subtitle": "", "track": "Machine learning", "type": "15 Minute Talk", "language": "en", "abstract": "\u65b0\u3057\u3044\u6280\u8853\u60c5\u5831\u304c\u6bce\u65e5\u306e\u3088\u3046\u306b\u51fa\u73fe\u3059\u308b\u6628\u4eca\u3001\u3053\u308c\u3089\u306e\u60c5\u5831\u3092\u8ffd\u3044\u304b\u3051\u308b\u3053\u3068\u306f\u6642\u9593\u3084\u4f53\u529b\u3092\u6d88\u8017\u3057\u307e\u3059\u3002\u3057\u304b\u3057\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u306e\u6d3b\u7528\u306b\u3088\u308a\u3001\u3053\u306e\u554f\u984c\u3092\u89e3\u6c7a\u3067\u304d\u307e\u3059\u3002\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u304b\u3089\u60c5\u5831\u3092\u81ea\u52d5\u53ce\u96c6\u3057\u3001\u305d\u306e\u60c5\u5831\u3092\u5206\u985e\u3001\u5fc5\u8981\u306b\u5fdc\u3058\u3066\u7ffb\u8a33\u3057\u307e\u3059\u3002\u305d\u3057\u3066\u305d\u306e\u7d50\u679c\u3092\u8cea\u554f\u5fdc\u7b54\u30e2\u30c7\u30eb\u306b\u5165\u529b\u3059\u308b\u3053\u3068\u3067\u3001\u81ea\u5206\u306e\u95a2\u5fc3\u306b\u5408\u3063\u305f\u60c5\u5831\u3092\u62bd\u51fa\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u3053\u308c\u3089\u306e\u6a5f\u80fd\u306f\u5168\u3066\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u306ePython\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u5229\u7528\u3059\u308b\u3053\u3068\u3067\u5b9f\u73fe\u53ef\u80fd\u3067\u3059\u3002\n\n\u79c1\u81ea\u8eab\u3082ChatGPT\u3084\u65e5\u672c\u8a9eNLP\u306b\u95a2\u3059\u308b\u60c5\u5831\u3092\u81ea\u52d5\u53ce\u96c6\u3057\u3001\u305d\u306e\u7d50\u679c\u3092Awesome\u30ea\u30dd\u30b8\u30c8\u30ea\u3068\u3057\u3066\u4f5c\u6210\u3057\u3001GitHub\u4e0a\u3067\u516c\u958b\u3057\u3066\u3044\u307e\u3059\u3002\u305d\u3053\u3067\u30e6\u30fc\u30b6\u30fc\u304b\u3089\u306e\u610f\u898b\u3092\u53c2\u8003\u306b\u3057\u305f\u60c5\u5831\u306e\u52b9\u7387\u7684\u306a\u6574\u7406\u3084\u63b2\u8f09\u65b9\u6cd5\u3092Tips\u3068\u3057\u3066\u5171\u6709\u3057\u307e\u3059\u3002\u3053\u306e\u30c8\u30fc\u30af\u306b\u53c2\u52a0\u3059\u308b\u3053\u3068\u3067\u300c\u81ea\u52d5\u7684\u306b\u60c5\u5831\u304c\u96c6\u307e\u308bAwesome\u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u4f5c\u308a\u65b9\u300d\u3092\u5b66\u3073\u3001\u3055\u3089\u306b\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u306b\u95a2\u3059\u308b\u77e5\u8b58\u3082\u8eab\u306b\u3064\u3051\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002", "description": "\u767a\u8868\u8cc7\u6599\uff08Speaker Deck\uff09\nhttps://speakerdeck.com/taishii/pycon-apac-2023\n\n\u3010\u30bf\u30a4\u30e0\u30e9\u30a4\u30f3\u3011\n\u30fb\u5c0e\u5165\uff081\u5206\uff09\n- \u81ea\u5df1\u7d39\u4ecb\n- \u672c\u767a\u8868\u306b\u3064\u3044\u3066\n- \u672c\u767a\u8868\u306e\u76ee\u7684\n\n\u30fb\u60c5\u5831\u53ce\u96c6\u306e\u73fe\u72b6\uff083\u5206\uff09\n- \u30a8\u30f3\u30b8\u30cb\u30a2\u304c\u60c5\u5831\u53ce\u96c6\u3092\u884c\u3046\u983b\u5ea6\n- \u60c5\u5831\u904e\u591a\u306b\u3088\u308b\u958b\u767a\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3078\u306e\u5f71\u97ff\n- \u8ab2\u984c\u306e\u6574\u7406\u3001\u89e3\u6c7a\u6848\u306e\u63d0\u6848\n- \u5b9f\u4f8b\uff1a\u65e5\u672c\u8a9eNLP\u306b\u95a2\u3059\u308bAwesome\u30ea\u30dd\u30b8\u30c8\u30ea https://github.com/taishi-i/awesome-japanese-nlp-resources\n- \u5b9f\u4f8b\uff1aChatGPT\u306b\u95a2\u3059\u308bAwesome\u30ea\u30dd\u30b8\u30c8\u30ea https://github.com/taishi-i/awesome-ChatGPT-repositories\n- Awesome \u30ea\u30dd\u30b8\u30c8\u30ea\u3068\u306f\uff1f\n\n\u30fb\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u3092\u6d3b\u7528\u3057\u305f\u60c5\u5831\u53ce\u96c6\u306e\u52b9\u7387\u5316\uff088\u5206\uff09\n- GitHub API \u3092\u6d3b\u7528\u3057\u305f\u30c7\u30fc\u30bf\u53ce\u96c6\n- \u5fc5\u8981\u306a\u60c5\u5831\u3092\u898b\u3064\u3051\u51fa\u3059\u30c6\u30ad\u30b9\u30c8\u5206\u985e\n\t- \u5927\u898f\u6a21\u8a00\u8a9e\u30e2\u30c7\u30eb\u3092\u5229\u7528\u3057\u305f Few-Shot \u5206\u985e\n\t- \u5b66\u7fd2\u30c7\u30fc\u30bf\u3092\u5229\u7528\u3057\u305f\u4e8b\u524d\u5b66\u7fd2\u30e2\u30c7\u30eb\u306e\u30d5\u30a1\u30a4\u30f3\u30c1\u30e5\u30fc\u30cb\u30f3\u30b0\n\t- \u5927\u898f\u6a21\u8a00\u8a9e\u30e2\u30c7\u30eb\u306e\u5165\u529b\u3068\u3059\u308b\u30d7\u30ed\u30f3\u30d7\u30c8\n\t- OpenAI API \u3092\u5229\u7528\u3057\u305f\u30c6\u30ad\u30b9\u30c8\u5206\u985e\n\t- Hugging Face \u306b\u516c\u958b\u3055\u308c\u3066\u3044\u308b\u30e2\u30c7\u30eb\u3092\u5229\u7528\n\t- \u30c6\u30ad\u30b9\u30c8\u5206\u985e\u306e\u7cbe\u5ea6\u691c\u8a3c\n- \u60c5\u5831\u3092\u308f\u304b\u308a\u3084\u3059\u304f\u4f1d\u3048\u308b\u591a\u8a00\u8a9e\u6a5f\u68b0\u7ffb\u8a33\n\t- OpenAI API \u3092\u5229\u7528\u3057\u305f\u591a\u8a00\u8a9e\u6a5f\u68b0\u7ffb\u8a33\n- \uff08\u53c2\u8003\uff09\u52b9\u7387\u7684\u306b\u60c5\u5831\u3092\u63a2\u3057\u51fa\u3059\u691c\u7d22\u30fb\u8cea\u554f\u5fdc\u7b54\n\n\u30fb\u60c5\u5831\u304c\u81ea\u52d5\u7684\u306b\u96c6\u7d04\u3055\u308c\u308b Awesome \u30ea\u30dd\u30b8\u30c8\u30ea\uff082\u5206\uff09\n- Awesome \u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u4f5c\u308a\u65b9\n- \u30e6\u30fc\u30b6\u30fc\u306b\u4fa1\u5024\u306e\u3042\u308b\u60c5\u5831\u306e\u8ffd\u52a0 \n- \u60c5\u5831\u63b2\u8f09\u4f5c\u696d\u306e\u81ea\u52d5\u5316\n- Awesome \u30ea\u30dd\u30b8\u30c8\u30ea\u306e\u5b8c\u6210\n\n\u30fb\u307e\u3068\u3081\uff081\u5206\uff09\n- \u5927\u898f\u6a21\u8a00\u8a9e\u30e2\u30c7\u30eb\u6642\u4ee3\u306e\u60c5\u5831\u53ce\u96c6", "recording_license": "", "do_not_record": false, "persons": [{"code": "EYUWD9", "name": "\u6c60\u7530 \u5927\u5fd7", "avatar": "https://pretalx.com/media/avatars/EYUWD9_COtnREv.webp", "biography": "\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u306b\u95a2\u9023\u3059\u308b\u30bd\u30d5\u30c8\u30a6\u30a7\u30a2\u3092\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u3067\u958b\u767a\u3057\u3066\u3044\u307e\u3059\uff01\n\n\u30a2\u30ab\u30a6\u30f3\u30c8\n- GitHub: https://github.com/taishi-i\n- Twitter: https://twitter.com/taishinlp\n- SpeakerDeck: https://speakerdeck.com/taishii\n\n\u904e\u53bb\u306e PyCon JP \u767a\u8868\u7d4c\u9a13\n- PyCon JP 2018 - NLP\uff08\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\uff09\u521d\u5fc3\u8005\u306e\u305f\u3081\u306e\u5358\u8a9e\u5206\u5272/\u54c1\u8a5e\u30bf\u30b0\u4ed8\u3051\u30c4\u30fc\u30eb\u306e\u7d39\u4ecb\n- PyCon JP 2019 - [Python \u306b\u3088\u308b\u65e5\u672c\u8a9e\u81ea\u7136\u8a00\u8a9e\u51e6\u7406 \u301c\u7cfb\u5217\u30e9\u30d9\u30ea\u30f3\u30b0\u306b\u3088\u308b\u5b9f\u4e16\u754c\u30c6\u30ad\u30b9\u30c8\u5206\u6790\u301c](https://speakerdeck.com/taishii/pycon-jp-2019)\n- PyCon JP 2020 - [\u6700\u5148\u7aef\u81ea\u7136\u8a00\u8a9e\u51e6\u7406\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u6700\u9069\u306a\u9078\u629e\u3068\u6709\u7528\u306a\u5229\u7528\u65b9\u6cd5](https://speakerdeck.com/taishii/pycon-jp-2020)\n- PyCon JP 2022 - [Python \u30e9\u30a4\u30d6\u30e9\u30ea\u958b\u767a\u306b\u304a\u3051\u308b\u5931\u6557\u8ac7 \u301c\u958b\u767a\u8005\u306b\u9078\u3070\u308c\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f5c\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a\u3053\u3068\u301c](https://speakerdeck.com/taishii/pycon-jp-2022)", "public_name": "\u6c60\u7530 \u5927\u5fd7", "guid": "4f07c8cb-d45c-5844-b79d-3cacf6326c5d", "url": "https://pretalx.com/pyconapac2023/speaker/EYUWD9/"}], "links": [{"title": "\u767a\u8868\u30b9\u30e9\u30a4\u30c9\uff08Speaker Deck\uff09", "url": "https://speakerdeck.com/taishii/pycon-apac-2023", "type": "related"}], "feedback_url": "https://pretalx.com/pyconapac2023/talk/7XYCHB/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/7XYCHB/", "attachments": [{"title": "\u767a\u8868\u30b9\u30e9\u30a4\u30c9\uff08pdf\uff09", "url": "/media/pyconapac2023/submissions/7XYCHB/resources/%E6%83%85%E5%A0%B1%E5%8F%8E%E9%9B%86%E3%82%92%E5%8A%B9%E7%8E%87%E5%8C%96%E3%81%99%E3%82%8B%E8%87%AA%E7%84%B6%E8%A8%80%E8%AA%9E%E5%87%A6%E7%90%86%E3%81%AE%E6%B4%BB%E7%94%A8%E6%96%B9%E6%B3%95_nBIub14.pdf", "type": "related"}]}, {"guid": "64da832e-32f5-5ef8-85ad-52d3558fa908", "code": "M9Q8EN", "id": 32230, "logo": null, "date": "2023-10-28T15:20:00+09:00", "start": "15:20", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32230-internals-of-generators", "url": "https://pretalx.com/pyconapac2023/talk/M9Q8EN/", "title": "Internals of Generators", "subtitle": "", "track": "Tips of development with Python", "type": "15 Minute Talk", "language": "en", "abstract": "Generators in Python can be found in many kinds of projects and applications. But how do they work exactly and how are they implemented?", "description": "In this talk, we will try to better understand generators in Python. We'll start from the beginning with iterators and make our way up to generators and how they're being used in applications today. To further cement our understanding, we'll look at how generators are implemented in Python's most popular reference implementation, CPython.", "recording_license": "", "do_not_record": false, "persons": [{"code": "FDH7CT", "name": "Steph Samson", "avatar": "https://pretalx.com/media/avatars/FDH7CT_3THfRnY.webp", "biography": "", "public_name": "Steph Samson", "guid": "05f28600-79a0-5611-9ee7-79c8f482d620", "url": "https://pretalx.com/pyconapac2023/speaker/FDH7CT/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/M9Q8EN/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/M9Q8EN/", "attachments": []}, {"guid": "48a104df-cd5d-5926-9d9b-a32bba7c8b90", "code": "7AXCMU", "id": 31766, "logo": null, "date": "2023-10-28T15:45:00+09:00", "start": "15:45", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-31766-dodging-dependency-confusion-in-a-nutshell", "url": "https://pretalx.com/pyconapac2023/talk/7AXCMU/", "title": "Dodging Dependency Confusion In A Nutshell", "subtitle": "", "track": "Others", "type": "15 Minute Talk", "language": "en", "abstract": "Have you ever experienced that moment, when you try to phonecall a number, and you have a small mistake in one of the digits? That's exactly what happens when you import the wrong package into your code! Unintended answers will be received from the other side. In this talk, we will discover a unique attack vector that hackers exploit to have direct access to your repository, and how to avoid it.", "description": "# What is it about?\nDependency confusion is a new attack vector that was discovered in early 2021 by the security researcher Alex Birsan, where he discovered that multiple big organizations such as Microsoft, Apple, and others, are vulnerable to this sort of software supply chain exploit.\nThe actual vulnerability resides in the fact that the developer makes a mistake in importing one or more of the packages to the source code, in that case, if an attacker has disclosure to the used packages, can search through package indexes (e.g. PyPI) and use that mistake in his favor, upload a malware to the index, which will be later imported to the affected piece of code.\n\n# What's the impact?\nAn attacker will have direct read and write permissions in the code, even worse, can perform other malicious activities, such as dumping the database, deleting files, disclosing sensitive information, and more...\n\n# Small example\nSuppose in a big project, a developer made a small typo and instead of importing the \"requests\" library he imported \"reqests\". Suppose also that this \"reqests\" library is just imported but not used, so the developer won't get any errors after running his code. If the attacker somehow can know about that, he will go to PyPI, and search for [reqests](https://pypi.org/search/?q=reqests), he will find that there's no previously created package with that name, so he will create one on the index, that contains some malicious code, such as a reverse shell or just a simple fetcher that will help him dump everything from the backend of the infected project.\n\n# Outline of the talk\nIn my talk, I will try to explain in simple terms what dependency confusion is, followed by some real-world examples of previously found vulnerabilities, in all different package indexes. This is going it be sort of a security awareness presentation so that developers should pay more attention to what they're including in their code from the internet. I will try to follow these bullet points:\n- introductory example\n- PyPI overview\n- What is a dependency?\n- Typosquatting\n- Dependency confusion\n- Real-world scenarios of the vulnerability\n- Best practices and ways to avoid", "recording_license": "", "do_not_record": false, "persons": [{"code": "DFT78S", "name": "Khalil Lemtaffah", "avatar": "https://pretalx.com/media/avatars/DFT78S_oE9ckyJ.webp", "biography": "Khalil is a cybersecurity MSc student at the E\u00f6tv\u00f6s Lor\u00e1nd University in Budapest, he is using Python in a day-to-day job as a vulnerability management specialist. Khalil is also interested in web application security, where he tries to gain knowledge by playing CTFs (Capture The Flag) with his club members, and in his free time, Khalil hunts for vulnerabilities on bug bounty platforms. He also likes to raise plants, travel the world, and mix music!", "public_name": "Khalil Lemtaffah", "guid": "af2fe54f-746d-5a91-b8c9-11bee2f21ad2", "url": "https://pretalx.com/pyconapac2023/speaker/DFT78S/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/7AXCMU/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/7AXCMU/", "attachments": []}, {"guid": "d74f768d-5e5b-516f-8246-ee565260d121", "code": "VT7ZRQ", "id": 32781, "logo": null, "date": "2023-10-28T16:10:00+09:00", "start": "16:10", "duration": "00:15", "room": "track 5", "slug": "pyconapac2023-32781", "url": "https://pretalx.com/pyconapac2023/talk/VT7ZRQ/", "title": "\u3054\u5f53\u5730\u30b0\u30eb\u30e1\u30de\u30c3\u30d7\u3092\u4f5c\u308d\u3046\u3002", "subtitle": "", "track": "Niche technique", "type": "15 Minute Talk", "language": "en", "abstract": "\u65c5\u884c\u304c\u3057\u3084\u3059\u304f\u306a\u3063\u305f\u306e\u3067\u3001\u5730\u57df\u306eB\u7d1a\u30b0\u30eb\u30e1\u3092\u98df\u3079\u6b69\u304f\u305f\u3081\u306e\u30de\u30c3\u30d7\u4f5c\u308b\u65b9\u6cd5\u3092\u8003\u3048\u3066\u3044\u304d\u307e\u3059\u3002\n\n\u3053\u306e\u30c8\u30fc\u30af\u3067\u306f\u3001\u5730\u57df\u306eB\u7d1a\u30b0\u30eb\u30e1\u306e\u60c5\u5831\u3092\u53d6\u5f97\u3057\u3066\u3001\u30de\u30c3\u30d7\u3092\u4f5c\u308a\u6d3b\u7528\u3059\u308b\u65b9\u6cd5\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\u4f8b\u3068\u3057\u3066\u3001\u79c1\u304c\u4f4f\u3093\u3067\u3044\u308b\u3054\u5f53\u5730\u30b0\u30eb\u30e1\u3092\u4f7f\u3063\u3066\u5b9f\u969b\u306b\u30de\u30c3\u30d7\u3092\u4f5c\u308a\u65c5\u884c\u4e2d\u306b\u5229\u7528\u3067\u304d\u308b\u3082\u306e\u3092\u4f5c\u308a\u307e\u3059\u3002\n\nPython boot camp\u306b\u53c2\u52a0\u3055\u308c\u305f\u65b9\u306e\u6b21\u306e\u30c6\u30fc\u30de\u3068\u3057\u3066\u6271\u3048\u308b\u3088\u3046\u306a\u6d41\u308c\u3092\u60f3\u5b9a\u3057\u3066\u3044\u307e\u3059\u3002", "description": "\u30c8\u30fc\u30af\u306e\u6d41\u308c\u306f\u4ee5\u4e0b\u306e\u901a\u308a\u3068\u306a\u308a\u307e\u3059\u3002\n\n\u203b[\u8ffd\u8a18:2023-09-24]\u5f53\u521d\u4e88\u5b9a\u306e30\u5206\u30c8\u30fc\u30af\u304b\u308915\u5206\u3078\u5909\u66f4\u3068\u306a\u3063\u305f\u305f\u3081\u3001\u6642\u9593\u306b\u4f59\u88d5\u304c\u3042\u3063\u305f\u3089\u6271\u3046\u90e8\u5206\u306f[\u4ed8\u9332]\u3068\u3057\u3066\u3044\u307e\u3059\u3002\n\n### \u3054\u5f53\u5730\u30b0\u30eb\u30e1\u306e\u60c5\u5831\u306f\u3069\u3053\u306b\u3042\u308b\u304b\n\n* \u5730\u57df\u306e\u89b3\u5149\u60c5\u5831\u3092\u63a2\u3059\n* \u305d\u3053\u306e\u60c5\u5831\u306f\u6a5f\u68b0\u53ef\u8aad\u6027\u304c\u3042\u308b\u306e\u304b\u3092\u8003\u3048\u308b\n\n###  \u60c5\u5831\u3092\u53ce\u96c6\u3059\u308b\n* Web\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0\u3067\u53ce\u96c6\u3059\u308b\n* [\u4ed8\u9332]\u753b\u50cf\u8b58\u5225\u3067\u52a0\u5de5\u3092\u8a66\u307f\u308b\n\n### \u30de\u30c3\u30d7\u306e\u5143\u3068\u306a\u308b\u30c7\u30fc\u30bf\u3092\u4f5c\u308b\n* \u60c5\u5831\u3092\u6574\u7406\u3057\u3066\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u308b\n* [\u4ed8\u9332]\u5730\u7406\u60c5\u5831\u3092\u96c6\u3081\u308b\n\n### \u65c5\u884c\u4e2d\u306b\u4f7f\u3046\u305f\u3081\u306e\u30c4\u30fc\u30eb\n\n* \u5de8\u4eba\u306b\u4e57\u308b: Google\u30de\u30a4\u30de\u30c3\u30d7\u3092\u4f7f\u304a\u3046\n* [\u4ed8\u9332]\u30dd\u30fc\u30bf\u30d6\u30eb\u306b\u6271\u3046: \u5370\u5237\u3092\u3059\u308b\n* [\u4ed8\u9332]\u5c02\u7528\u306eWEB\u30a2\u30d7\u30ea\u3092\u4f5c\u308d\u3046\n\n### \u307e\u3068\u3081: \u307f\u3093\u306a\u3067\u3054\u5f53\u5730\u30b0\u30eb\u30e1\u30de\u30c3\u30d7\u3092\u4f5c\u308d\u3046\uff01\n\n\u5229\u7528\u3059\u308b\u6280\u8853\u3068\u95a2\u9023\u3059\u308b\u30b5\u30fc\u30c9\u30d1\u30fc\u30c6\u30a3\u30e9\u30a4\u30d6\u30e9\u30ea\u3001API\u306f\u4ee5\u4e0b\u306b\u306a\u308a\u307e\u3059\u3002\n\n* WEB\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0: requests+beautifulsoup4 / [\u4ed8\u9332]selenium\n* \u30c7\u30fc\u30bf\u5909\u63db: csv\u30e2\u30b8\u30e5\u30fc\u30eb\n* [\u4ed8\u9332]\u753b\u50cf\u8b58\u5225: Google Cloud Vision\n* [\u4ed8\u9332]WEB\u30b5\u30fc\u30d3\u30b9: flet", "recording_license": "", "do_not_record": false, "persons": [{"code": "VT3W8J", "name": "Hiroshi Sano", "avatar": "https://pretalx.com/media/avatars/VT3W8J_hvHWgP6.webp", "biography": "- \u6240\u5c5e: [\u682a\u5f0f\u4f1a\u793e\u4f50\u91ce\u8a2d\u8a08\u4e8b\u52d9\u6240](https://sano-design.info) CEO\n- [PyCon mini Shizuoka](https://pycon-shizu.connpass.com) Stuff\n  - shizuoka. py / [Unagi.py](https://unagi-py.connpass.com) / [Python\u99ff\u6cb3](https://py-suruga.connpass.com)\n- other: Civic Tech, [Startup Weekend Organizer](https://swfuji.doorkeeper.jp)\n- my site: https://hr-sano.net\n- X(Twitter): [@hrs_sano645](https://twitter.com/hrs_sano645)", "public_name": "Hiroshi Sano", "guid": "b6403778-6f78-50b9-944f-5df21d32cdfc", "url": "https://pretalx.com/pyconapac2023/speaker/VT3W8J/"}], "links": [], "feedback_url": "https://pretalx.com/pyconapac2023/talk/VT7ZRQ/feedback/", "origin_url": "https://pretalx.com/pyconapac2023/talk/VT7ZRQ/", "attachments": []}]}}, {"index": 4, "date": "2023-10-29", "day_start": "2023-10-29T04:00:00+09:00", "day_end": "2023-10-30T03:59:00+09:00", "rooms": {}}]}}}