<?xml version='1.0' encoding='utf-8' ?>
<!-- Made with love by pretalx v2024.1.0. -->
<schedule>
    <generator name="pretalx" version="2024.1.0" />
    <version>0.10</version>
    <conference>
        <title>PyCon Israel 2025</title>
        <acronym>pycon-2025</acronym>
        <start>2025-09-09</start>
        <end>2025-09-10</end>
        <days>2</days>
        <timeslot_duration>00:05</timeslot_duration>
        <base_url>https://cfp.pycon.org.il</base_url>
        
        <time_zone_name>Asia/Jerusalem</time_zone_name>
        
        
        <track name="General" slug="31-general"  color="#3632d6" />
        
        <track name="DB, Big Data, Data Science, AI/ML" slug="32-db-big-data-data-science-aiml"  color="#3ef265" />
        
        <track name="Security" slug="33-security"  color="#e00a0a" />
        
        <track name="Devops/Test Automation" slug="34-devopstest-automation"  color="#e3e73d" />
        
        <track name="Other" slug="35-other"  color="#f0bca5" />
        
    </conference>
    <day index='1' date='2025-09-09' start='2025-09-09T04:00:00+03:00' end='2025-09-10T03:59:00+03:00'>
        <room name='Hall 1' guid='d7975536-5f07-5e18-ba1a-8aca39cd2c1f'>
            <event guid='aaf5d550-0f59-5c95-acdd-97c16b02c3f3' id='1084'>
                <room>Hall 1</room>
                <title>Let Your Pipeline Bloom: Fast Python with Filters, Caches, and Low Memory Footprint</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:00:00+03:00</date>
                <start>11:00</start>
                <duration>00:20</duration>
                <abstract>Speed up your pipelines by doing less! We&#8217;ll explore memory efficient caching, filtering, and take a deep dive into the often-overlooked Bloom filter &#8212; with practical examples to avoid unnecessary IO and computation.</abstract>
                <slug>pycon-2025-1084-let-your-pipeline-bloom-fast-python-with-filters-caches-and-low-memory-footprint</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>Python has become powerful, but data pipelines, workloads, and API servers often suffer from unnecessary IO and redundant computation that slow things down.

In this talk, we&#8217;ll explore two essential techniques to speed up workloads by doing less: caching and filtering&#8212;and how to implement them efficiently, with relatively low memory overhead, along with real-world use cases where these techniques made an impact.

We&#8217;ll also take a closer look at an often overlooked and misunderstood tool: the Bloom filter. You&#8217;ll learn how it works, when it&#8217;s useful (and when it&#8217;s not), and how it helps you maintain a low memory footprint while effectively avoiding unnecessary database queries, API calls, or heavy computation&#8212;before they even happen.

Whether you&apos;re building data pipelines, APIs, or wrangling large datasets, this talk will give you practical insights and Pythonic tools to write smarter, faster, and more memory-conscious code.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/XQLDWE/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/XQLDWE/feedback/</feedback_url>
            </event>
            <event guid='e7398044-5860-5079-a934-bfe43bb1f7c5' id='1107'>
                <room>Hall 1</room>
                <title>Beyond constants: Mastering Python enums</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:30:00+03:00</date>
                <start>11:30</start>
                <duration>00:20</duration>
                <abstract>Explore advanced enum usage in Python: define methods, attach metadata, and create enums dynamically. Learn the benefits and pitfalls of the enum singleton to write more expressive and maintainable code.</abstract>
                <slug>pycon-2025-1107-beyond-constants-mastering-python-enums</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>While working on the open-source hdate library (which I maintain) and on internal tools at Intel, I came across some lesser-known but powerful uses of Python enums.
From attaching extra data and methods to make code more expressive, to dynamically generating enums from configuration files, these patterns can add clarity to your code if used with care.
In this talk, I&#8217;ll share these techniques, their advantages, and the subtle pitfalls to watch out for when using a singleton data structure.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/GDQ3FL/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/GDQ3FL/feedback/</feedback_url>
            </event>
            <event guid='c2b384a9-f01a-521a-9170-df5291df9ba6' id='1138'>
                <room>Hall 1</room>
                <title>Code reloading: challanges, approaches &amp; libraries</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:00:00+03:00</date>
                <start>13:00</start>
                <duration>00:20</duration>
                <abstract>Code reloading is fun! Python&apos;s semantics for `def`, `class` complicate it. There are multiple approaches and multiple libraries; I don&apos;t think any is one-size-fits-all. This talk will teach you how they work to make informed choice for _your_ code.</abstract>
                <slug>pycon-2025-1138-code-reloading-challanges-approaches-libraries</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>Edit-&gt;reload cycle on running software may be more fun &amp; productive than exiting and losing state.
Python&apos;s semantics for `class` and `def`creating a new object are not as friendly to reloading as Smalltalk/Lisp/Ruby which patch in-place.  Reloading is still very possible, with multiple approaches and libraries but I believe you better understand the issues and implementation tradeoffs.
- What `importlib.reload()` does and does not.
- Copied references: `from ... import ...`, instances, callbacks &amp; closures, etc.
- =&gt; Recording what-imported-what dependency graph.
- =&gt; Patching classes/functions in-place vs. Updating references? Limitations.
- A secret weapon: `gc.get_referrers()`
- What IPython&apos;s `%autoreload`, `jurigged`, `limeade` do?
- Renames/deletions.  Problem of intent.  =&gt; jurigged AST diffing?!
- Top-level code, singletons, derived values.  =&gt; Hard. Idempotent `try: except NameError:` style.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/FWYYZB/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/FWYYZB/feedback/</feedback_url>
            </event>
            <event guid='e39c0c68-82d3-5cb0-a253-f9a169066272' id='1175'>
                <room>Hall 1</room>
                <title>Decorators in Python: Powerful Patterns &amp; Practical Uses</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:30:00+03:00</date>
                <start>13:30</start>
                <duration>00:20</duration>
                <abstract>Decorators are one of the most powerful and expressive features in Python, yet they can be confusing for many developers. In this talk, we&#8217;ll demystify decorators by exploring how they work, how to write them, and how to use them effectively.</abstract>
                <slug>pycon-2025-1175-decorators-in-python-powerful-patterns-practical-uses</slug>
                <track></track>
                <logo>/media/pycon-2025/submissions/UGA3L3/decorators_in_python_banner_jKqakEs.jpg</logo>
                    
                <language>en</language>
                <description>This talk is designed for intermediate Python developers who want to take their skills to the next level by mastering one of Python&#8217;s most versatile features: decorators.

We&#8217;ll begin by revisiting the concept of functions as first-class objects, which sets the foundation for understanding how decorators operate. From there, we&#8217;ll walk through writing simple decorators, then progress to more advanced topics such as:
+ Decorators with arguments
+ Stacking multiple decorators
+ Class-based decorators
+ Decorators applied to methods and classes

Real-world examples will highlight how decorators are used in real-world applications, such as web development, logging, access control, and benchmarking.

Attendees will leave this talk with a clear mental model of decorators, the ability to confidently implement them, and inspiration to apply them in their own projects. This talk will also provide best practices and tips for keeping decorator logic clean, testable, and maintainable.

This talk can be delivered in Hebrew (my mother tongue) and English.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/UGA3L3/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/UGA3L3/feedback/</feedback_url>
            </event>
            <event guid='24a4d0b3-b921-53c5-86bc-5d9f57082595' id='1121'>
                <room>Hall 1</room>
                <title>Durable Python: Running Reliable Workflows on Unreliable Infrastructure</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T14:00:00+03:00</date>
                <start>14:00</start>
                <duration>00:20</duration>
                <abstract>Servers crash, containers restart, and services fail. This talk introduces Durable Python: a way to make workflows survive infrastructure failures, crucial for distributed systems, using AST tricks and durable execution platforms.</abstract>
                <slug>pycon-2025-1121-durable-python-running-reliable-workflows-on-unreliable-infrastructure</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>Modern Python workflows are more distributed than ever: orchestrating APIs, cloud services, microservices, and databases across environments where infrastructure is not always reliable.
 When a server crashes, a container restarts, or a service call fails mid-process, traditional Python scripts often must restart from scratch, risking duplicated work, data inconsistencies, or lost progress.

Durable Python changes this. It introduces a model where workflow state is preserved, and execution can automatically resume from the point of failure, without manual recovery, complex retry logic, or redundant operations.
This talk will cover:
Why infrastructure failures are inevitable &#8212; and why Python needs built-in durability to handle them.


The core principles of durable execution: state persistence, fault recovery, and reliable orchestration.

Practical examples and patterns for introducing durability into real-world Python automations, including CI pipelines, DevOps processes, microservice orchestration, and long-running AI agents.

How Durable Python works under the hood &#8212; leveraging durable execution platforms, transforming Python&apos;s AST, converting non-deterministic calls into trackable activities (like automatic checkpoints), and orchestrating everything seamlessly.


We&#8217;ll also live-demo a long-running Python workflow, simulate real infrastructure failures, and show the process resuming exactly where it left off &#8212; without re-executing completed steps or losing state.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/WCEA77/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/WCEA77/feedback/</feedback_url>
            </event>
            <event guid='dda617e5-b6aa-5db0-a27c-04dce34b58f4' id='1128'>
                <room>Hall 1</room>
                <title>Lazy-Freeze: Another Look at Hashing and Immutability</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:00:00+03:00</date>
                <start>15:00</start>
                <duration>00:20</duration>
                <abstract>A new technique is presented where objects turn immutable upon first hash calculation. This approach enables convenient mutability up until the object is used as a dict-key or set-item, without compromising on safety beyond that point.</abstract>
                <slug>pycon-2025-1128-lazy-freeze-another-look-at-hashing-and-immutability</slug>
                <track></track>
                <logo>/media/pycon-2025/submissions/AEZ3NY/robot1_5SeBjsX.png</logo>
                    
                <language>en</language>
                <description>Python&apos;s hash-based collections rely on an implicit contract: once an object is used as a dictionary key or added to a set, its hash value (and thereby contents) should never change. Yet Python&apos;s design encourages mutable user-defined classes without enforcing immutability when hashing occurs - leading to subtle bugs when objects modify their state after being hashed.

This talk introduces the &quot;Lazy-Freeze&quot; pattern: a technique where objects automatically transition from mutable to immutable upon their first hash calculation. Unlike the traditional approach which requires immutable construction, Lazy-Freeze allows objects to begin their lifecycle with convenient mutability, then seamlessly lock their state when stability becomes critical.

We&apos;ll introduce an implementation mainly using Python&apos;s __hash__ and __setattr__ magic methods, discuss examples and performance implications, and explore some sharp corners.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/AEZ3NY/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/AEZ3NY/feedback/</feedback_url>
            </event>
            <event guid='ffe198db-2f4f-5a03-be2a-96b9584cde7a' id='1188'>
                <room>Hall 1</room>
                <title>Beyond the GIL: Python&#8217;s Journey to Free Threading</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:30:00+03:00</date>
                <start>15:30</start>
                <duration>00:20</duration>
                <abstract>Explore Python&#8217;s groundbreaking shift beyond the Global Interpreter Lock (GIL). Understand the design tradeoffs, challenges, and performance impacts of running Python without the GIL.</abstract>
                <slug>pycon-2025-1188-beyond-the-gil-python-s-journey-to-free-threading</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>The Global Interpreter Lock (GIL) has been a key part of Python&apos;s design, simplifying memory management but limiting parallelism in multi-threaded programs. Recent changes now allow Python to run without the GIL, unlocking true parallelism.

In this talk, we&apos;ll explore the implications of this shift: the internal changes to Python, the tradeoffs made for thread safety and performance, and the challenges overcome in the process. We&#8217;ll compare execution with and without the GIL through examples and benchmarks, and discuss the potential impact on Python developers and the ecosystem.

Whether you&#8217;re interested in Python&#8217;s internals, concurrency, or its evolving design, this session will provide a concise and practical overview of one of Python&#8217;s most significant updates.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/DTFFQE/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/DTFFQE/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Main Hall (30)' guid='3cb4aff3-8572-5c6f-a340-047fb01022c4'>
            <event guid='2c02eafa-9c83-5349-b10d-1d6f37519676' id='1198'>
                <room>Main Hall (30)</room>
                <title>Agents, Autonomy, and the Edge of Illusion</title>
                <subtitle></subtitle>
                <type>Keynote</type>
                <date>2025-09-09T10:00:00+03:00</date>
                <start>10:00</start>
                <duration>00:45</duration>
                <abstract>see description</abstract>
                <slug>pycon-2025-1198-agents-autonomy-and-the-edge-of-illusion</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>AI agents can plan, act, and adapt, or at least, they appear to.  Under the hood, they remain fragile systems built on prediction rather than true understanding.
This talk explores what LLM agents are really capable of today, where they break, and how to design around their limits. Through real-world failure patterns and success stories, we&#8217;ll unpack the myths, highlight common traps, and share practical tools and evaluation techniques for building agents that are genuinely useful.
Finally, we&#8217;ll look ahead to how these systems may evolve, and what you can do right now to stay ahead as agent-powered development becomes the norm.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/CR9B8C/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/CR9B8C/feedback/</feedback_url>
            </event>
            <event guid='247699a4-8909-5d16-a7b2-099c94299ce5' id='1163'>
                <room>Main Hall (30)</room>
                <title>How (NOT) to use Cryptography in your code.</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:00:00+03:00</date>
                <start>11:00</start>
                <duration>00:20</duration>
                <abstract>Securing application is often done using cryptography, but if you don&apos;t do it right, it may be broken and you wouldn&apos;t even know it.  Learn the common cryptographic mistakes in Python and how to fix them using safe practices.</abstract>
                <slug>pycon-2025-1163-how-not-to-use-cryptography-in-your-code-</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>Implementing cryptography is like handling a loaded weapon &#8212; powerful, but dangerous in the wrong hands. In this talk, we&#8217;ll explore how to properly implement cryptography in Python, using real-world examples of code that led to serious security vulnerabilities. From insecure random number generation and broken key management to misusing cryptographic primitives and rolling your own protocols, we&#8217;ll walk through the most common (and often subtle) mistakes developers make. We&#8217;ll also cover the correct approaches using modern Python libraries. If you need to use cryptography in your code for secure communication, encrypting data at rest, or just curious to understand the meaning of the inputs to the cryptographic function, this session will equip you with the knowledge to do cryptography right &#8212; or at least know when to call in an expert.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/PGEA3F/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/PGEA3F/feedback/</feedback_url>
            </event>
            <event guid='e437f131-19eb-5b74-bc68-925a7f651ed1' id='1195'>
                <room>Main Hall (30)</room>
                <title>Giving Voice to a Raven: Audio Analysis and Servo Control with Python</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:30:00+03:00</date>
                <start>11:30</start>
                <duration>00:20</duration>
                <abstract>What if sound could drive movement? This talk introduces a Python-based program I developed that transforms audio into motion patterns - built for animatronics, optimized for embedded devices, and demonstrated through a raven named Samuel.</abstract>
                <slug>pycon-2025-1195-giving-voice-to-a-raven-audio-analysis-and-servo-control-with-python</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>How do you get an animatronic raven to speak like a real one - complete with emotion, variation, and natural presence? In this talk, we&apos;ll explore how I built a Python-powered audio analysis system that brings Samuel, my interactive animatronic raven, to life. The goal wasn&#8217;t just to react to sound, but to create believable, nuanced motion driven by real audio data.

The challenge: to translate raven vocalizations into natural beak movements, without manually scripting the motion for each sound file. I needed a system that could analyze audio and generate movement instructions automatically - flexible, scalable, and Python-driven.

Using libraries like librosa, numpy, and matplotlib, I built a system that analyzes raven sounds, detects vocal energy peaks, and generates servo-ready movement instructions. To guide development, I created visual graphs of the audio - including RMS energy, volume, and frequency - to better understand how sound translated into motion. The program also generates multiple movement maps per sound clip, selecting one at random at runtime to avoid repetitive, robotic behavior.

We&apos;ll dive into:
 - Audio signal analysis with librosa (RMS, STFT, clustering).
 - Generating servo-ready binary movement patterns from raw audio.
 - Designing variability through randomized motion mapping.
 - Visualizing sound energy.
 - Controlling servos in real time using Python and Raspberry Pi.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/WZDPTD/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/WZDPTD/feedback/</feedback_url>
            </event>
            <event guid='644f7103-cfdd-501d-95e6-fc664b2b4474' id='1106'>
                <room>Main Hall (30)</room>
                <title>asyncio Exposed: Beyond the Happy Path</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:00:00+03:00</date>
                <start>13:00</start>
                <duration>00:20</duration>
                <abstract>We all use asyncio, but not everyone truly understand what happens behind the await. 

In this talk, we&#8217;ll dive into advanced patterns, real-world pitfalls, and debugging strategies for developers who want to move beyond the basics.</abstract>
                <slug>pycon-2025-1106-asyncio-exposed-beyond-the-happy-path</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>We all use asyncio - but let&#8217;s be real: how many of us actually understand what&#8217;s happening behind the scenes when we await something?

The moment you step off the happy path - into timeouts, cancellations, and juggling dozens of async tasks - things get a little chaotic, fast.

This talk is a deep dive into the corners of asyncio most of us don&#8217;t look at until something breaks.
We&#8217;ll unpack what really happens behind await, how to manage task lifecycles and what to do when your app just&#8230;stops.
We&#8217;ll explore advanced patterns, sneaky bugs, and practical tools to help you trace and debug what your async code is actually doing.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/WDCXQM/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/WDCXQM/feedback/</feedback_url>
            </event>
            <event guid='c059b615-57d1-5c8f-9fbc-508b5428e835' id='1135'>
                <room>Main Hall (30)</room>
                <title>Python in the Embedded Computing World</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:30:00+03:00</date>
                <start>13:30</start>
                <duration>00:20</duration>
                <abstract>Python is a very popular language in the server and in the desktop, but we can also enjoy its benefits in the embedded computing world. We will cover some unique challenges we&apos;re facing when implementing Python in an embedded product.</abstract>
                <slug>pycon-2025-1135-python-in-the-embedded-computing-world</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>Using Python in embedded products brings all the goodness of the Python ecosystem into the development process, which results in faster development cycle and the use of the huge Python ecosystem. However, embedded computing devices are different in some respects from server or desktop applications. In this talk, I&apos;ll cover some of the challenges I was facing while developing a Python-based embedded device in the last years. Among them are:
- What Python can and can&apos;t do in an embedded system
- Cross compiling of Python and its modules
- Controlling dependencies
- Understanding system constraints
- Micropython and it use cases</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/8QKMYP/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/8QKMYP/feedback/</feedback_url>
            </event>
            <event guid='404f0d0b-eba6-5b8f-b1e7-71333c5595e8' id='1184'>
                <room>Main Hall (30)</room>
                <title>Breaking Python&#8217;s Speed Limits with FFI and asyncio</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T14:00:00+03:00</date>
                <start>14:00</start>
                <duration>00:20</duration>
                <abstract>Want to build faster Python apps without ditching Python? This talk shares how we supercharged a Python Valkey/Redis client by combining the power of asyncio with native speed via FFI.</abstract>
                <slug>pycon-2025-1184-breaking-python-s-speed-limits-with-ffi-and-asyncio</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>We&#8217;ll begin by discussing a common challenge in Python apps&#8212;how to achieve high performance, particularly for I/O-heavy or async workloads, without abandoning the ecosystem. Then, we&#8217;ll dive into how we built key parts of a Valkey client to take advantage of asyncio powerful concurrency model while using FFI to offload key performance-sensitive tasks to native code. We&#8217;ll show profiling before and after, walk through code samples, and share lessons on safely mixing Python with lower-level languages. Finally, we&apos;ll explore how these patterns can generalize to other async Python projects.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/7RPQL9/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/7RPQL9/feedback/</feedback_url>
            </event>
            <event guid='ba411d27-0cd6-5959-9b87-e5c5777c537a' id='1148'>
                <room>Main Hall (30)</room>
                <title>How to get Foreign Keys Horribly Wrong in Django</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:00:00+03:00</date>
                <start>15:00</start>
                <duration>00:20</duration>
                <abstract>In this talk I present some lesser known gotchas and implicit behaviors of Foreign Keys in Django. We&apos;ll talk on what you need to pay attention to when defining FKs, how to change FKs w/o bringing your system to a halt and how to optimize for space,</abstract>
                <slug>pycon-2025-1148-1-how-to-get-foreign-keys-horribly-wrong-in-django</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>Not many know this, but Foreign Keys in Django has a lot more then meets the eye! In this talk we&apos;ll build a small Django app together and tackle many issues related to Foreign Keys in the process. We&apos;ll talk about indexes, safe migrations, concurrency and performance. We&apos;ll also explore some of Django&apos;s implicit behaviors and discuss when and how we can do better!</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/WQGCWC/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/WQGCWC/feedback/</feedback_url>
            </event>
            <event guid='1048a962-4edc-59eb-bf02-777b94c83734' id='1169'>
                <room>Main Hall (30)</room>
                <title>I made all of my Python tooling super-fast without rewriting in Rust</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:30:00+03:00</date>
                <start>15:30</start>
                <duration>00:20</duration>
                <abstract>Lots of Python dev tooling is written in Python, such as black and mypy. But these tools are not as fast as I&apos;d like for a streamlined workflow. I created a generic way to make all of my existing tooling much faster.</abstract>
                <slug>pycon-2025-1169-i-made-all-of-my-python-tooling-super-fast-without-rewriting-in-rust</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>I use git pre-commit hooks for code formatting and linting rules. When making many small commits, and sometimes when rebasing branches, I found that these pre-commit hooks were slowing me down. I&apos;ve learned that these kind of annoyances must be removed in order to promote what I consider a positive behavior (making many small commits) rather than discouraging it. So down the rabbit hole I went!

In this talk I&apos;ll describe:
* My journey for fast Python dev tooling, including surprising twists such as parsing open-source licenses with Golang;
* How I came to build something new, generic and quite unique;
* Potential future applications of this tech and general approach.

Join me for an unusual technical story - I promise you&apos;ll learn something new!</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/ERFHVU/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/ERFHVU/feedback/</feedback_url>
            </event>
            <event guid='94eb6f22-3087-5419-b6c0-d3a58b944246' id='1199'>
                <room>Main Hall (30)</room>
                <title>Lightning Talks</title>
                <subtitle></subtitle>
                <type>Lightning Talks Session</type>
                <date>2025-09-09T16:00:00+03:00</date>
                <start>16:00</start>
                <duration>00:45</duration>
                <abstract>A rapid series of 5-minute talks where each speaker shares one clear idea, keeping it short, focused, and engaging.</abstract>
                <slug>pycon-2025-1199-lightning-talks</slug>
                <track></track>
                
                    
                <language>en</language>
                <description>**The Ben Bot &#8211; Using Python &amp; AI to Clone Myself for Seamless Knowledge Transfer**
*Ben Zagagy*
With Python and LLMs, I automated docs, diagrams, and planning - turning years of knowledge into a smooth, scalable handover so my successor could step in easily.

-----

**You Can Build Python Code with Bazel (and Why You Might Actually Want To)**
*Ohad Ravid*
Python&apos;s tooling is improving, but scaling projects remains challenging. See how Bazel helps you build faster and ship with confidence.
Presentatoin will appear in Ohad&apos;s [Blog](https://ohadravid.github.io/)

-----

**Zen and the Art of Breaking Chatbots**
*Aviv Vromen*
A tale of a chatbot who lost its way, and what the Zen of Python has to say about it
Presentation to be posted in [Aviv&apos;s LinkedIn](http://linkedin.com/in/avivv)

-----

**The Optimization Paradox: When &quot;Good Enough&quot; Beats Perfect**
*Sharon Rones-Makmal*
See links in [Sharon&apos;s Link Tree](https://linktr.ee/sharon_rm_pycon_2025)

-----

**Write Less Code**
*Dor Schwartz*
Python&apos;s nature makes boilerplating easy. Learn how to do more with less

-----

**A day in the life of a variable: when x met y  A Python love story**
*Moty Zer Kavod &amp; Ashley Stendel* 
Zipped then unpacked together with no prior familiarity - x and y go on a journey together. happily ever after?

-----

Organized by [*G&#225;bor Szab&#243;*](https://szabgab.com/) and [*Udi Oron*](https://www.linkedin.com/in/udioron)</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/9QU3YQ/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/9QU3YQ/feedback/</feedback_url>
            </event>
            
        </room>
        <room name='Hall 7' guid='8c1e3b84-e71b-5423-9da0-5e73f826a4a5'>
            <event guid='69e57aab-738b-50c8-a365-a576472e1170' id='1144'>
                <room>Hall 7</room>
                <title>Efficiently Fine-Tuning Small Language Models with Python in 2025</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:00:00+03:00</date>
                <start>11:00</start>
                <duration>00:20</duration>
                <abstract>Small language models (SLMs) can outperform larger models on domain-specific tasks. This talk shows how Python tools enable state-of-the-art results with lightweight models, even on modest hardware.</abstract>
                <slug>pycon-2025-1144-efficiently-fine-tuning-small-language-models-with-python-in-2025</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>This 20&#8209;minute session balances practical code snippets with strategic insights. We&#8217;ll look at:
- Why teams are shifting from large, general-purpose LLMs to small, specialized ones
- The key ingredients for efficient fine-tuning: QLoRA and high-quality datasets
- How Python tools like Axolotl, PEFT, Accelerate, and HuggingFace Transformers make fine-tuning accessible and reproducible
- A real-world case study: fine-tuning LLaMA&#8209;1B to outperform GPT&#8209;4 on a classification task

By the end, you&#8217;ll understand where fine-tuned SLMs fit in the landscape of AI development, how they can deliver cost&#8209;effective accuracy, and what steps you can take to bring them into your own projects.

No prior ML expertise is required&#8212;just Python familiarity and curiosity about building smarter, faster, and more private AI systems.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/89XQZ7/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/89XQZ7/feedback/</feedback_url>
            </event>
            <event guid='0e71f106-e083-5f57-8451-2dbeebf01e53' id='1080'>
                <room>Hall 7</room>
                <title>Blazing Fast Data Processing in Your Browser with Python &amp; WebAssembly</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T11:30:00+03:00</date>
                <start>11:30</start>
                <duration>00:20</duration>
                <abstract>Tired of slow web apps with big data? Learn how Python &amp; WebAssembly dramatically speed up browser data tasks. See a live demo: processing a large CSV client-side with Python (via Pyodide) &amp; Pandas/NumPy. Witness a performance comparison and more.</abstract>
                <slug>pycon-2025-1080-blazing-fast-data-processing-in-your-browser-with-python-webassembly</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>Discover a game-changing approach to web performance! Learn how to leverage Python (compiled to WebAssembly) to process large datasets directly in the browser with incredible speed. We&apos;ll walk through a practical use case involving CSV data and compare the performance gains against standard JavaScript implementations. Get ready to unlock new possibilities for data-intensive web applications.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/UXYNBQ/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/UXYNBQ/feedback/</feedback_url>
            </event>
            <event guid='4457ea06-3842-5f10-81a4-5edbbd49bf54' id='1190'>
                <room>Hall 7</room>
                <title>How I Failed to Build My WhatsApp Agent - But Learned to Love the Challenge</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:00:00+03:00</date>
                <start>13:00</start>
                <duration>00:20</duration>
                <abstract>I tried to build a WhatsApp agent to find my friends&#8217; buried recommendations and tips - and failed spectacularly. But I learned more than I expected. This talk shares the journey, the tools, and why side projects are the best way to grow.</abstract>
                <slug>pycon-2025-1190-how-i-failed-to-build-my-whatsapp-agent-but-learned-to-love-the-challenge</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>I was frustrated. All I wanted was to find my friends&#8217; trusted recommendation for where to travel with the kids next weekend &#8211; buried somewhere in months of casual chatter in our local WhatsApp group. Google didn&#8217;t help, ChatGPT didn&#8217;t know, and re-asking the group felt silly. I needed something smarter &#8211; an agent that could surface what my people had already shared, no matter when or how casually they&#8217;d mentioned it.
That simple desire turned into a late-night obsession &#8211; a personal Python project that blended everything I knew about data science with the messy, unfamiliar world I was eager to explore: backend logic, interfaces, system design and bending tools until they (mostly) did what I needed. Because let&#8217;s face it, it&#8217;s never just about embeddings and clever semantic search algorithms, right? In trying to build the perfect WhatsApp agent, I discovered something even more valuable: how passion projects can surprise us, stretch us, and quietly reshape what we think we&#8217;re capable of.
In this talk, I&#8217;ll share my personal project journey &#8211; what I built, what broke, what it taught me, and why sometimes failure is the best teacher. You&#8217;ll leave with practical tools and fresh inspiration to start your own side project, the one born from your everyday frustration and can solve a real problem you care about.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/PFHHHW/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/PFHHHW/feedback/</feedback_url>
            </event>
            <event guid='063f07d6-037b-59f7-81d3-c8a0c0e98a55' id='1127'>
                <room>Hall 7</room>
                <title>Learning How to Learn in the AI Era (Using Agents as a Use Case)</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T13:30:00+03:00</date>
                <start>13:30</start>
                <duration>00:20</duration>
                <abstract>Today, the key skill isn&#8217;t mastering every line of code - it&#8217;s keeping up. This talk shows how understanding core concepts, using AI tools, and writing effective prompts can accelerate learning and development in a fast-moving AI landscape.</abstract>
                <slug>pycon-2025-1127-learning-how-to-learn-in-the-ai-era-using-agents-as-a-use-case-</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>In today&apos;s fast-evolving AI landscape, one of the biggest challenges isn&apos;t just learning what to build&#8212;but how to learn to build. In this talk, we&apos;ll share our journey of learning how to learn in the world of AI, focusing on understanding the right concepts before jumping into implementation.

We&#8217;ll explore how focusing on learning theory and concepts, combining using AI tools and a few good prompts - can help developers navigate the growing AI ecosystem more effectively.

Using Agents as our main use case, we&apos;ll walk through how we took an early prototype written in a simple notebook and scaled it into a production-grade code, based on LangChain&#8217;s LangGraph framework, wrapping it all up with a ready-made UI using Streamlit &#8211; all done fast and simple using Cursor.

Whether you&apos;re just starting your AI journey or trying to bring structure to your experimental projects, this talk will give you a clear view of the critical skills and concepts that can help you scale your ideas&#8212;with agents as a practical and exciting example.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/BZXFBL/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/BZXFBL/feedback/</feedback_url>
            </event>
            <event guid='b94e22f7-9203-596f-865e-6549cd9b4d58' id='1185'>
                <room>Hall 7</room>
                <title>Wash, Dry, Analyze: Turning Dishwasher Logs into Clean Data</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T14:00:00+03:00</date>
                <start>14:00</start>
                <duration>00:20</duration>
                <abstract>Using simple, &#8220;old-school&#8221; logging, I recorded my dishwasher&#8217;s energy and water use, then leveraged Python and pandas to clean, analyze, and visualize real-world data. A beginner-friendly dive into experiment design and data analysis.</abstract>
                <slug>pycon-2025-1185-wash-dry-analyze-turning-dishwasher-logs-into-clean-data</slug>
                <track></track>
                <logo>/media/pycon-2025/submissions/A3H7FS/diswasher_chart_SVUu9jA.png</logo>
                    
                <language>en</language>
                <description>## Wash, Dry, Analyze: Turning Dishwasher Logs into Clean Data

**Abstract:**  
I set up a **controlled experiment** on my dishwasher to uncover what&#8217;s really happening with **energy and water use**&#8212;because designing experiments is half the fun, and **Python** makes the rest a breeze. In this session I&#8217;ll show how I:

- **Designed test cycles** and integrated `power and flow` sensors
- Used **pandas** to `import`, _clean, and flag anomalies_ in CSV logs  
- Applied descriptive stats (**mean**, **median**, **outliers**) to evaluate **energy**, **water**, and **cost**  
- Created clear, reproducible visualizations with **matplotlib**

The dishwasher was just an excuse to **dive into pandas**, and this talk is perfect for **beginners** eager to start their own data adventures.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/A3H7FS/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/A3H7FS/feedback/</feedback_url>
            </event>
            <event guid='6d8ced64-cc32-56a6-8a16-6076884f2c7e' id='1078'>
                <room>Hall 7</room>
                <title>Private LLMs and RAG Pipelines in Python</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:00:00+03:00</date>
                <start>15:00</start>
                <duration>00:20</duration>
                <abstract>This talk will show how to set up a private LLM + RAG system using Python in an &quot;air-gaped&quot; environment. We&#8217;ll cover choosing efficient open-source models, setting up local vector databases, and optimizing retrieval in resource-limited environments.</abstract>
                <slug>pycon-2025-1078-private-llms-and-rag-pipelines-in-python</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>When our team wanted to use LLMs with RAG, we quickly hit a wall&#8212;sending sensitive data to the cloud wasn&#8217;t an option. Whether it&apos;s business secrets, medical records, or legal documents, some data simply can&#8217;t leave a secure network. So, we had to build our own private AI pipeline.

In this talk, I&#8217;ll share how we set up a fully private LLM + RAG system using Python. We&#8217;ll dive into choosing efficient open-source models, setting up local vector databases, and making retrieval work in a resource-limited environment. Along the way, we&#8217;ll discuss trade-offs, optimizations, and how to squeeze the most out of smaller models without sacrificing too much intelligence.

By the end, you&#8217;ll have a clear road map for building your own secure AI pipeline&#8212;no cloud required!</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/LWQMBZ/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/LWQMBZ/feedback/</feedback_url>
            </event>
            <event guid='87773507-2778-5cb2-a98d-821766b10819' id='1139'>
                <room>Hall 7</room>
                <title>WTF Are Embeddings? A software engineer&#8217;s take</title>
                <subtitle></subtitle>
                <type>Regular Talk</type>
                <date>2025-09-09T15:30:00+03:00</date>
                <start>15:30</start>
                <duration>00:20</duration>
                <abstract>Embeddings power AI tools like search and chatbots &#8212; but what are they really? This talk explains embeddings in simple terms using Python, with real examples, humor, and no ML background required.</abstract>
                <slug>pycon-2025-1139-wtf-are-embeddings-a-software-engineer-s-take</slug>
                <track></track>
                <logo>/media/pycon-2025/submissions/MMGU97/Screenshot_from_2025-05-02_17-48-08_CVqGAsJ.png</logo>
                    
                <language>en</language>
                <description>Embeddings are behind the magic of modern AI &#8212; powering search, recommendations, and those eerily accurate chatbots. But what are they, really? In this talk, Liza &#8212; a regular software engineer, not a data science PhD &#8212; breaks it down in plain English using real examples, bad charts, and trusty science-y Python tools. If you&#8217;ve ever wondered how words, products, or even bananas become vectors in high-dimensional space, this is your crash course.</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/MMGU97/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/MMGU97/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    <day index='2' date='2025-09-10' start='2025-09-10T04:00:00+03:00' end='2025-09-11T03:59:00+03:00'>
        <room name='Reichman' guid='c8b8b8d4-8d9b-5a53-bc90-42e707e71b83'>
            <event guid='eee93533-2b89-54ed-8e63-e71fa4f583ac' id='1124'>
                <room>Reichman</room>
                <title>Let&apos;s Build an API Test Agent!</title>
                <subtitle></subtitle>
                <type>3-hour workshop</type>
                <date>2025-09-10T09:30:00+03:00</date>
                <start>09:30</start>
                <duration>03:00</duration>
                <abstract>In this hands-on workshop, you&apos;ll build an AI-powered API Test Agent from scratch. You&apos;ll learn about the making of an agent, and get some upgrades on your testing skills.</abstract>
                <slug>pycon-2025-1124-let-s-build-an-api-test-agent-</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>Everybody&apos;s talking about agents. Let&apos;s stop talking and build one! And while we&apos;re at it, make it useful! 

In this hands-on workshop, you&apos;ll move beyond the buzz and build an AI-powered API Test Agent from scratch.

Our agent does a few things, with the aid of LLMs:

- Generate ideas for test cases for a list of APIs
- Prioritize which test cases to run first
- Generate the test code
- Run the tests
- Validate the response
- Report the results
 
By the end, you won&#8217;t just walk away with the knowledge of how to build an agent, you&apos;ll have seriously leveled-up your API testing skills. 

So, let&apos;s build your first agent, shall we?

The workshop is held in psychology building at reichman University in room 101</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/89QRU7/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/89QRU7/feedback/</feedback_url>
            </event>
            <event guid='d759c10c-7f80-52c4-a792-705019212501' id='1193'>
                <room>Reichman</room>
                <title>Testing Masterclass</title>
                <subtitle></subtitle>
                <type>3-hour workshop</type>
                <date>2025-09-10T13:30:00+03:00</date>
                <start>13:30</start>
                <duration>03:00</duration>
                <abstract>A very deep dive, keyboard-first, into the details of different approaches to ensure our code does what we think it does.</abstract>
                <slug>pycon-2025-1193-testing-masterclass</slug>
                <track></track>
                
                    
                <language>he</language>
                <description>Part I - xUnit tests
- lets write a test
- choosing good test cases
  - simple
  - independent
  - carve the problem space at the joints
  - hug the seams
- advanced features:
  - setup/teardown/fixture
  - parametrization
  - mocks
- putting it to practice
- war stories and design exercises
- things that are hard to test: UI, nondeterministic code

Part II - testing prompts with statistical tests (evaluations)
- lets use an LLM to process a freeform request
- how to think about &quot;correctness&quot;
- train/test split
- quality measures:
  - deterministic measurements
  - accuracy curve, false positives and false negatives
  - human as judge
  - strong LLM as judge
  - using a weak LLM to approximate confidence
- production monitoring

Part III - other approaches
- BDD
- FIT
- golden/snapshot testing
- exercise: tailoring a testing approach for a deterministic chatbot
- my own contribution to the field: bless tests
  - the basic technique
  - designing good harnesses
  - advanced blessing techniques
  - using it in a team
  - lessons learned applying it in the field
  - exercise: testing a complex algorithm with the blesstest library
- final design exercise

The workshop is held in psychology building at reichman University in room 101</description>
                <recording>
                    <license></license>
                    <optout>false</optout>
                </recording>
                <links></links>
                <attachments></attachments>

                <url>https://cfp.pycon.org.il/pycon-2025/talk/3R7GCG/</url>
                <feedback_url>https://cfp.pycon.org.il/pycon-2025/talk/3R7GCG/feedback/</feedback_url>
            </event>
            
        </room>
        
    </day>
    
</schedule>
