List of videos

chDB: The Blazing Fast SQL Engine for Data Science — Auxten Wang
[EuroPython 2024 — South Hall 2A on 2024-07-12] chDB: The Blazing Fast SQL Engine for Data Science by Auxten Wang https://ep2024.europython.eu/session/chdb-the-blazing-fast-sql-engine-for-data-science chDB, powered by the robust ClickHouse engine, is a high-performance in-process SQL engine designed for the Python data ecosystem. It supports direct interaction with databases like MySQL, PostgreSQL, SQLite, and MongoDB; streaming platforms such as Kafka; and key-value stores like Redis. With extensive support for various data sources and formats, chDB is highly adaptable to different data environments. It seamlessly integrates with structured formats like CSV and JSON as well as complex binary formats such as Parquet, Avro, and Arrow, enabling efficient data manipulation and analysis. The engine is ANSI SQL compliant, ensuring broad compatibility with existing SQL codebases and facilitating easy integration into diverse data pipelines. This comprehensive SQL support includes complex querying capabilities, enhancing the engine's utility in sophisticated data analysis tasks. chDB is particularly designed to accommodate the rapid prototyping of applications, allowing developers to transition smoothly and quickly from development to production environments with minimal adjustments. With its deep integration into Python, chDB interacts directly with popular Python libraries such as Pandas, NumPy, and others, streamlining the data science workflow. This integration enables direct data manipulation within Python scripts and notebooks, drastically reducing the need for data movement and conversion, thus accelerating the data analytics process. For organizations and developers leveraging Python, chDB offers an unmatched combination of performance, flexibility, and ease of use, making it an invaluable tool for building efficient, scalable, and robust data-driven applications. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Start strong! — Honza Král
[EuroPython 2024 — South Hall 2A on 2024-07-12] Start strong! by Honza Král https://ep2024.europython.eu/session/start-strong Starting new python projects should be fun, but often we get bogged down in the details and spend several weeks fine tuning our setup; Not to mention the unproductive time spent on discussions like: * oh, you are using `ruff`? I just use `black`! * how do you set up your dev environment? * what version of `superFramework` are you running? * can you please update your PR, the tests don't pass. Let's put a stop to it! We will go through a collection of tools and techniques you can use to set up your new project for success. What to look for and how to make sure you can hit the ground running. Covered tools/techniques: Linting, testing, CI, dependency management, editor config, and some more... --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Neurodiversity in the IT industry. Why do YOU need to know more about it? — Amelia Walter-Dzikowska
[EuroPython 2024 — South Hall 2A on 2024-07-12] Neurodiversity in the IT industry. Why do YOU need to know more about it? by Amelia Walter-Dzikowska https://ep2024.europython.eu/session/neurodiversity-in-the-it-industry-why-do-you-need-to-know-more-about-it Imagine discovering that your brain is equipped in a rare, niche operation system. No wonder the standard software does not suit your hardware and you keep encountering difficult situations… Once you discover it is just software incompatibility and you update the right app versions, the world starts being more comfortable! Unfortunately, few apps only have adapted versions. It is estimated that neuroatypical people constitute even up to 15-20% of the population. According to “the geek syndrome hypothesis” - autism, but also ADHD are likely to be common in people working in the IT industry. Neurodivergent people have a chance to become wonderful specialists and bring variety to the team thanks to a slightly different perception, special interests or ability to hyperfocus. Their presence can help introduce better practices such as clear communication and transparency. On the other hand, they are at risk of having various troubles in the world adapted to the neurotypical folk. The author will present the current state of science on neurodiversity, the challenges faced by neurodivergent IT specialists and possible improvements to make the workplace more inclusive for everyone. As a neurodivergent advocate, an IT professional and a biologist with scientific mindset, she will combine her own life and career experience as a neuroatypical person with psychological knowledge which will create a unique perspective. The goal is to prove that neuroatypical people constitute a large part of the IT community and that even small actions can help meet their needs - and not only make their life easier, but also add more creativity to IT teams! --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
From Diamonds to Mixins: Demystifying Multiple Inheritance in Python — Ariel Ortiz
[EuroPython 2024 — South Hall 2A on 2024-07-12] From Diamonds to Mixins: Demystifying Multiple Inheritance in Python by Ariel Ortiz https://ep2024.europython.eu/session/from-diamonds-to-mixins-demystifying-multiple-inheritance-in-python Most Python programmers are probably aware that Python supports multiple inheritance. However, few are likely to be aware of its implications and inner workings. This talk aims to shed light on this commonly overlooked topic. In the first part of the talk we will start by reviewing the “diamond problem,” where a class inherits from two classes that have a common ancestor, and contrast how this issue is handled in Python compared to other object oriented languages. Next, we will discuss the Method Resolution Order (MRO) to see how Python determines the sequence in which classes are considered when searching for a method or attribute. We will also review the use of the `super()` function that allows a subclass to call a method from its superclass in a way that adheres to the MRO. During the second part of the talk, we will explore real-world scenarios related to the benefits, problems, and alternatives of using multiple inheritance in our programs. We will dedicate some time to examining the concept of a _mixin_ and how to implement it effectively in Python. Finally, we will delve into the _Interface Segregation Principle_ and explore collaboration and composition as mechanisms for avoiding the pitfalls of inheritance in general. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Insights and Experiences of Packaging Python Binary Extensions — Goran Jelic-Cizmek
[EuroPython 2024 — South Hall 2B on 2024-07-12] Insights and Experiences of Packaging Python Binary Extensions by Goran Jelic-Cizmek https://ep2024.europython.eu/session/insights-and-experiences-of-packaging-python-binary-extensions In the domain of scientific and high-performance computing (HPC), software packages are primarily written in compiled languages such as C, C++, and Fortran, complemented by end-user APIs implemented in Python. Such packages frequently incorporate CPU-specific code (e.g. SIMD extensions) and utilise GPU-specific programming models, such as OpenMP and CUDA, to achieve enhanced performance. Despite the recent proliferation of build backends for creating pure Python packages, the distribution of Python packages containing binary extensions poses a unique set of challenges and currently lacks a standardised solution. In this talk, I will share insights and experiences gained from building portable and performant Python wheels for a set of computational neuroscience projects, aiming for compatibility and usage across a diverse of compute platforms, from desktop to large compute clusters. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Automatic trusted publishing with PyPI — Facundo Tuesca
[EuroPython 2024 — South Hall 2B on 2024-07-12] Automatic trusted publishing with PyPI by Facundo Tuesca https://ep2024.europython.eu/session/automatic-trusted-publishing-with-pypi PyPI added support for “Trusted Publishing” last year, allowing package maintainers to create releases directly from their GitHub Actions pipelines without having to worry about token management. Trusted Publishing removes long-lived API tokens from the equation, removing a threat vector for supply chain attacks. In this talk, we’ll go through the details of how this works, how maintainers can easily take advantage of it with minimal changes to their existing setup, and the ongoing effort in the last 12 months to add support for publishers other than GitHub, such as GitLab, Google, and ActiveState. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
It’s happening: TUF joins PyPI (Warehouse) — Kairo de Araujo, Lukas Pühringer
[EuroPython 2024 — South Hall 2B on 2024-07-12] It’s happening: TUF joins PyPI (Warehouse) by Kairo de Araujo, Lukas Pühringer https://ep2024.europython.eu/session/its-happening-tuf-joins-pypi-warehouse The Update Framework (TUF) has been a prime reference for secure package delivery and updates for many years. Despite its popularity, integrating with existing package managers remains challenging. PEP 458 is a very good example of some of the related challenges. Authored a decade ago, it aims to protect the freshness, consistency, and integrity of packages in the Python Packaging Index (PyPI) and provide compromise resilience. Even though these goals remain largely unaddressed, PEP 458 has not made its way into production yet! With Repository Service For TUF (RSTUF), a new tool has emerged, which makes implementing and maintaining a TUF-powered package repository a black box to the repository maintainers and which has become mature enough to kick off an incremental integration in Warehouse and RubyGems. In this talk, Kairo, RSTUF's tech lead, and Lukas, TUF project maintainer, will show how RSTUF has evolved and allowed us to take a big leap towards adopting TUF in Warehouse and elsewhere. Primers on TUF, PEP 458, and Warehouse will be included. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
Navigating Tech Leadership: Challenges and Strategies — Çağıl Uluşahin Sönmez
[EuroPython 2024 — South Hall 2B on 2024-07-12] Navigating Tech Leadership: Challenges and Strategies by Çağıl Uluşahin Sönmez https://ep2024.europython.eu/session/navigating-tech-leadership-challenges-and-strategies Join us for a discussion on navigating tech leadership roles in the dynamic world of technology. In this talk, we will explore the essence of managerial roles in the tech industry, examining the unique challenges faced by leaders at different levels. We'll discuss the critical decision every developer must make regarding balancing or giving up hands-on expertise with management responsibilities, as well as the challenges of transitioning from a primarily technical role to a managerial position. Additionally, we'll explore the challenges that managees may face when led by managers and tech leads who may lack management training or experience. We'll also discuss strategies for fostering a more inclusive and supportive engineering culture overall. Let's talk about management in tech from the perspective of a tech lead that identifies as a woman. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch
The Imposter Staff Engineer’s Journey to Leadership — Manivannan Selvaraj
[EuroPython 2024 — South Hall 2B on 2024-07-12] The Imposter Staff Engineer’s Journey to Leadership by Manivannan Selvaraj https://ep2024.europython.eu/session/the-imposter-staff-engineers-journey-to-leadership I, an undercover Imposter Syndrome sufferer, masquerade as a Staff Software Engineer amid an army of coding geniuses. Imagine you're playing a video game where you're pretending to be a powerful leader, but deep down, you're convinced you're not really good enough. That's my daily life as a staff software engineer leading a team, except it's not a game, and the 'quit' button doesn't work. In this talk, I'll tell you about my hilarious misadventures and unexpected triumphs in the rollercoaster ride of being a staff software engineer and how my team still manages to create cool things despite my 'imposter' moments. --- This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License: https://creativecommons.org/licenses/by-nc-sa/4.0/
Watch