PyWeb-IL - Anything about Python in Israel

Monthly meetings about Python in general in Israel. We usually meet in Tel-Aviv-Yafo, but we don't shy away from meetings elsewhere as well.

To register on our events go to our Meetup page.

You are invited to join the mailing list.

To contribute to this page fork this repo.

Speakers and Organizers

Slides are usually in English. Presentations are usually given in Hebrew.

Maintainer of this page is Gabor Szabo.

Presentation proposals

Hosting an event

Upcoming events

2024.11.27 - PyWeb-IL #110: PyWeb November 2024 at Infinidat in Herzeliyya

Date and time: Wednesday, November 27, 2024 at 18:00

Location: Infinidat, Akerstein Tower A 9 Hamenofim Street, Herzeliya Pituach.

  • 18:00 Meeting and mingling
  • Presentation

2024.12.15 - PyWeb-IL #111: PyWeb December 2024 at Bluevine in Tel Aviv

Date and time: Sunday, December 15, 2024 at 18:00

Location: Bluevinew Yigal Alon Street 94 · Tel Aviv

  • 18:00 Meeting and mingling
  • Presentation

next


Past events

2024.09.03 - PyWeb-IL #109: PyWeb September 2024 at Tenable in Tel Aviv

Date and time: Monday, August 7, 2024 at 18:00

Location: Tenable 94 Yigal Alon St., Alon Tower 2, floor 17 · Tel Aviv-Yafo

  • 18:00 Meeting and mingling
  • 18:30 Daniel Balosh: From Sluggish to Speedy: A Developer's Guide to Taming MySQL Performance (40 min)

Based on internal presentation that can be seen here

Django, Flask, and other Python applications accessing MySQL need to prioritize performance to meet business and customer needs. When your MySQL database starts to drag, your users feel the pain. This talk will equip you with the essential tools and strategies to diagnose and tackle common MySQL performance bottlenecks.

We'll go beyond basic query optimization and explore how to analyze live data using powerful techniques like percentile metrics, slow query logs, and pattern matching. Discover common pitfalls like N+1 queries and excessive data retrieval, and learn practical solutions for optimizing your application's interaction with the database.

This session is packed with real-world examples and actionable advice tailored for Django, Flask, and other Python ORM users, empowering you to transform your MySQL database from a sluggish bottleneck to a performance powerhouse.

About Daniel:

I'm a software engineer with over 10 years of experience building reliable systems. I'm currently a Principal Engineer at the CISO office of Eleos Health, where I focus on using technology to improve security and risk management. I care about putting code into production and making a business impact. I believe in a pragmatic approach, starting with the business need, validating it with testing, and then developing a practical solution. You can find my professional background and experience on LinkedIn

slides - Video

  • Break
  • Lightning talks
  • Alon Levy: Marimo - a new python notebook. - Marimo is an open-source reactive notebook for Python — reproducible, git-friendly, executable as a script, and shareable as an app. I'll introduce Marimo from my own usage of it this last 3 months, and show how it can be used for data exploration. I'll show it's unique features resulting from its DAG nature. (10 min) notebook
  • Gal Goldner: DICOM (Digital Imaging and Communications in Medicine) standard, focusing on Python packages that are useful for working with the format and protocol, along with some examples. (10 min)

  • Naum Raviz: A pagination that scales with your data (25 min)

    • What is pagination and why?
    • Offset-based Pagination.
    • Cursor-based Pagination.
    • The ideal solution for pagination

Naum Raviz is a Senior Software engineer at Tenable Attack Path Analysis.

  • Going to a near-by pub to continue the conversation

2024.08.07 - PyWeb-IL #108: PyWeb August 2024 at MobileEye in Tel Aviv

Date and time: Monday, August 7, 2024 at 18:00

Location: MobileEye Mordekhai Anielewicz St 52, Tel Aviv-Yafo

  • 18:00 Meeting and mingling
  • 18:30 Asher Sterkin: Implementing the Composite Design Pattern in Python (25-40 min)

The Composite Design Pattern is a powerful tool for treating collections and their individual elements uniformly. It's especially useful for tree-like data structures, such as file systems, cloud stack resources, or any system composed of smaller parts. In this talk, I will demonstrate a generic implementation of this pattern in Python, showcasing a practical use case where it proved indispensable. This implementation serves as a great introduction to advanced Python metaprogramming.

The presentation is based on my Medium article: Generic Composite in Python and my talk at the Pyjamas 2022 conference.

It might be longer if there is interest in Python metaprogramming. We also can connect the discussion of Design Patterns to the current LLM and co-pilots hype.

  • Break
  • Uri Mogilevsky Shay and Menachem Kluft: Accelerating Parquet file filters via row groups (30 min). You probably heard about the Apache Parquet file format, but how much do you really know about it? In this presentation you'll hear how Parquet is used in Mobileye to solve complex problems in the world of data.

  • Going to a near-by pub to continue the conversation

2024.07.08 - PyWeb-IL #107: Pyweb July 2024 at Datarails in Tel Aviv

Date and time: Monday, July 8, 2024 at 18:00

Location: Datarails 152 Derech Menachem Begin, floor 10.

  • 18:00 Meeting and mingling
  • 18:30 Presentation
  • Shai Berger: Careful What You Search For! - or, how to make a computation 20,000 times faster (45 min)

Use of regular expressions for searching and parsing text is very common, but it can be dangerous. Innocent-looking searches may turn out to be very slow on specially-crafted inputs, and if such inputs can be provided by users, that is called a REDoS vulnerability. This talk is about the causes of such slowness, possible fixes and prevention. A Hebrew version of the talk Shai gave in DjangoCon Europe 2024.

  • Break
  • Presentation
  • Idan Gazit: Copilot Workspace: what it is, how it works, why it matters (30 min)

2024.05.19 - PyWeb-IL #106: May 2024 at ZenCity in Tel Aviv

Date and time: Monday, May 19, 2024 at 18:00

Location: ZenCity, Carlebach St 20 · Tel Aviv-Yafo

How Zencity grown from a single client in southern Israel to serving more than 130 million citizens On three continents - from the data perspective. We’ll talk about how we’ve started and the initial choices you need to make. And how we’re working on scaling a product from a single-digit number of clients to our current scale. About what happens when eventually the original setup doesn’t work anymore, new requirements appear, and the landscape changes. We’ll candidly discuss our stopgap measures and some of our missteps and wrong choices. We hope our experience will help others in their path.

In this talk we will see a new way of testing web frameworks which gives us the ability to treat endpoints as they where a simple functions, with this ability, we can catch simple exceptions and outputs without the web framework layer which gives us simplicity and observability. We will go over a case study of Django web framework. using this package

See also GitHub Pages and GitHub of Ori.

Author of Python Brain Teasers.

I'll present several pieces of Python code and will ask the audience to guess the output of each one. After each piece of code I'll show the output and explain why it is that way.

2024.03.18 - PyWeb-IL #105: Dataclasses and hacking 'import'

Date and time: Monday, March 18, 2024 at 18:00

Location: Infinidat, Akerstein Tower A 9 Hamenofim Street, Herzeliya Pituach.

  • Rick Pelleg - Introducing Infinidat (10 minutes)
  • Elad Silberring: Python dataclasses (20 mins)
  • Elad Silberring: War stories (10 mins)
  • Liad Oz - Hacking 'import' (30 minutes) We'll be taking a look at how python 'imports' work behind the scenes and how PYTHONPATH and sys.path affect it. Then learn how to hook into the 'import' logic and show practical (and ridiculous) applications of them.

2023.09.11 - PyWeb-IL #104: CI/CD and Dash

Date and time: Monday, September 11, 2023 at 18:00

Location: Mobileye Tel Aviv, Mordekhai Anielewicz St 52 · Tel Aviv-Yafo

  • Aur Saraf: Read Code Every Day Slides
  • Roman Olshanskiy and David Katz: Rapid Development of Big Data Analytics Apps using Dash (40 mins) Slides

2023.05.01 - PyWeb-IL #103: Pandas and OpenEdX

Date and time: Monday, May 1, 2023 at 18:00

Location: "Jerusalem" room at AWS, 28th floor, Azrieli Sarona, Derech Menachem Begin 121

All the talks would be given in Hebrew.

  • Miki Tebeka: Faster Pandas: Make your Pandas code run faster and consume less memory (45 mins) Slides
  • Roi Shillo: CampusIL Architecture: Deploying Enterprise-grade Django-based architecture for National Learning Environment based on OpenEdX (45 mins)

This meetup is generously hosted by Amazon Web Services.

2023.03.13 - PyWeb-IL #102: VisiData and test architecture

Location: Swimm, Daniel Frisch St 3, 6th floor, Tel Aviv-Yafo

  • Ram Rachum: VisiData: A Vim-like tool for data science in the terminal (35 mins) slides
  • Aur Saraf: Test architecture can make or break your project (45 mins) slides

  • This meetup is generously hosted by Swimm.

2023.01.02 - PyWeb-IL #101: Variable scope and HTML over the wire

Location: Swimm, Daniel Frisch St 3, 6th floor, Tel Aviv-Yafo

  • Miki Tebeka: Variable scope & closure (45 min) slides
  • Meir Kriheli: HTML over the wire (45 mins) slides

  • This meetup is generously hosted by Swimm.

2022.11.14 - PyWeb-IL #100: Chrome extensions and CDC

Location: Swimm, Frisch 3 Tel Aviv, 6th floor

  • About Swimm (10 mins)
  • Elad Silberring: Creating a Chrome browser extension (25 mins) - slides
  • Alon Nisser: Change Data Capture (CDC) for advanced integration (30 mins) - slides

  • This meetup is generously hosted by Swimm.

2022.09.12 - PyWeb-IL #99: PostgreSQL and Git internals

Location: Swimm, Frisch 5 Tel Aviv, 6th floor

  • About Swimm (10 mins)
  • Amir More: Cultural Learnings of PostgreSQL for Make Benefit Glorious Company Product (40 mins) Slides
  • Aur Saraf: Git is a great design (45 mins) Slides

  • This meetup is generously hosted by Swimm.

2022.07.04 - PyWeb-IL #98: Vulnerabilities and PostgreSQL

  • About Viz.AI (10 mins)
  • Adam Gold: How I found and fixed a vulnerability in Python (40 mins) slides
  • Miki Tebeka: python -m (30 mins) slides

2022.05.02 - PyWeb-IL #97: Federated Learning and Regular Expressions

  • Tal Einat: Federated Learning: A promising new method for privacy-preserving ML (AI) modelling Slides Video
  • Aur Saraf: Stand Back! I Know Regular Expressions (50 mins) Slides Video

2022.03.07 - PyWeb-IL #96: PostgreSQL and property-based testing

2022.01.03 - PyWeb-IL #95: async.io and Pytest

  • Eyal Balla: Python async.io [async.io] - From zero to hero (40 mins) Slides Video
  • Amir More: Postgresql in Theory and Practice. (50 mins) Slides Video (English)

2021.11.01 - PyWeb-IL #94: Method chaining and Kubernetes

  • Tal Einat: Method chaining in Python (30 mins) Video
  • Alon Nisser: Kubernetes CPU- Requests, limits and noisy neighbors (30 mins) Slides Video

2021.09.13 - PyWeb-IL #93: PostgreSQL indices and epistemology

  • Haki Benita: Unlocking the full potential of PostgreSQL indexes in Django (40 mins) Slides
  • Alon Nisser: Epistemology - reflections on what is a truthful representation of reality in the software world (30 mins) Slides

2021.07.05 - PyWeb-IL #92: Caching and Spark

  • Alon Nisser: Using Spark with python: some tips and patterns (30 mins) slides video
  • Aur Saraf: The Two Hard Things In Computer Science (45 mins) slides video

2021.05.10 - #91: Rust and string formatting

PyCon IL 2021 (2-3 May)

2021.03.01 - #90: WebRTC and simulations

  • Miki Tebeka: Simulations for the Mathematically Challenged (40 mins) slides video
  • Benny Daon: WebRTC - Real time communications for the web (30 mins) Slides - App video

2021.01.04 - #89:

2020.11.02 - #88:

  • Shai Berger: The design and development of Choices in Django 3.0 (30 mins) Slides Video
  • Ram Rachum: GridRoyale, a life simulation for exploring social dynamics Slides Video
  • Miki Tebeka: Embedding and Calling Python with 0 Serialization and ε Memory (40 min) Slides Video

2020.09.07 - #87:

2020.07.06 - #86: Bauhaus and class optimization

2020.01.06 - #85: Blackbox testing, coding conventions, simulations

2019.12.15 - Django 3.0 release party

2019.11.04 - #84: Environment Setup, CPython on GitHub, and music

2019.09.02 - #83: Config parsers, Airflow and Serverless

2019.07.04 - #82: Productionization, Serialization, and post-Guido Governation

2019.06.02-06 PyCon IL 2019

2019.05.28 - Fixtures and Test Doubles in Pytest - Workshop

2019.05.06 - #81: DevPi, TypeScript, post-Guido

  • Benny Daon: devpi, your very own cheeseshop (30 mins) Slides Video
  • Keren Kenzi: Intro to Typescript (30 mins) Slides Video
  • Ram Rachum: PySnooper, PuDB, and a PEP idea (20 mins) Project Video

2019.03.04 - #80: Airflow, Productionization, setup.py

2019.01.07 - #79 - Dropbox: RabbitMQ, Sigterm, and Vim

2018.12.10 - #78

2018.09.03 - #77

2018.07.02 - #76

2018.05.23 - Mocking in Python as a testing tool - Workshop

2018.05.07 - #75 - Git, NoORM, Microservices

2018.03.05 - #74

2018.02.05 - #73

2018.01.16 - Python Pair Programming with TDD Workshop

  • Gabor Szabo

2018.01.01 - #72

2017.12.19 - Python testing workshop

2017.12.04 - #71

2017.11.20 - Your First Open Source contribution

2017.11.06 - #70

2017.10.02 - #69

2017.09.04 - #68

2017.08.07 - #67

vimrc of Miki Tebeka

2017.07.03 - #66

2017.06.11-14 - PyCon Israel

2017.06.05 - #65

2017.05.08 - #64

2017.04.03 - #63

2017.03.06 - #62

2017.02.06 #61

2017.01.02 #60

2016.12.05 #59

2016.11.07 - #58

2016.10.10 - #57

2016.09.05 - #56

2016.08.01 - #55

2016.07.04 - #54

2016.06.06 - #53

2016.05.02-03 - PyCon Israel

2016.04.04 - #52

2016.03.07 - #51

2016.02.01 - #50

  • Alon Nisser: Automate CLI apps with BATS (10 mins)
  • Nir Cohen: ld - reinstating Linux Distribution identification and information gathering in Python (15 mins)
  • Ori Hoch: Django-oscar e-commerce framework - review and deep-dive (~45 mins)

2016.01.04 - #49

2015.11.02 - #48

2015.10.12 - #47

2015.07.06 - #46

2015.06.01 - #45

  • Alon Nisser: Introduction to bash parallel (25 mins)
  • Amir Rachum: pep257.py - a linter for docstring conventions (5-10 mins)
  • Zohar Arad: SaltStack (45 mins)

2015.05.04 - #44

2015.04.13 - #43

2015.02.02 - #42

2015.01.05 - #41

  • Pablo Klijnjan: Intro to XIV
  • Amit Nabarro: SQL vs NOSQL in Django applications - Considerations, design and implementation decisions. The talk would include a hands-on workshop showing some examples working with MongoDB
  • Zohar Arad: Going beyond MongoDB for your NoSQL purposes - There are quite a few new (read - next gen.) NoSQL DBs that fit use-cases usually filled by MongoDB, but with better scaling capabilities and less headaches (or different ones). So, the point is not to diss Mongo, but to show viable alternatives. Some examples are - ArangoDB, RethinkDB, FoundationDB, HyperDex and Elastic Search (there are many more but these come to mind at the moment).

2014.12.01 - #40

Lightning talks: * Udi Bauman: Winning examples of declarative programming * Yehonatan Daniv: Django REST-assured , on GitHub demo

2014.11.03 - #39

2014.10.06 - #38