PAST MEETINGS

Thu, Dec 18 2025 at 06:00 PM at American Planning Association (APA)

What's new in the OWASP Top 10 for 2025
(5 Minutes)
By: Weezel
Experience Level: Novice

The 2025 OWASP Top Ten release candidate came out on November 6.  Let's look at what's changed since 2021.

 

 

What's new in Python this year
(15 Minutes)
By: Phil Robare
Experience Level: Intermediate

I read the release notes to you don't have to.  A quick tour of changes that have gone into Python this year.  Some significant, most of which are invisible until you need them.

Effective Data Visualization
(5 Minutes)
By: David Giard
Experience Level: Novice
Slides Link

We spend much of our time collecting and analyzing data. That data is only useful if it can be displayed in a meaningful, understandable way.

Yale professor Edward Tufte presented many ideas on how to effectively present data to an audience or end user.

In this session, I will explain some of Tufte's most important guidelines about data visualization and how you can apply those guidelines to your own data. You will learn what to include, what to remove, and what to avoid in your charts, graphs, maps and other images that represent data.

LibreLane and Open Silicon
(10 Minutes)
By: Andrew Wingate
Experience Level: Novice

Python runs on chips. Python can be used to help make chips. 
A little on making chips, open silicon, and the state of the industry. 

Cropping Multiple Lens film photos with OpenCV
(5 Minutes)
By: Josh Martin
Experience Level: Intermediate

Hello,

I love film cameras. Especially multiple lens film cameras that take photos all at once or in a sequence. The true pain is getting my scans back from the film lab I use and a set of photos being put into one photo because of how the cameras take the photos in the first place.

In this talk I will show how to perfectly crop a set of images into multiple images even if the vary in size.

38 Python enthusiasts attended this meeting.


Thu, Nov 13 2025 at 06:00 PM at Slalom Build

Reading surprising data with pandas
(10 Minutes)
By: Jonathan J. Helmus

We will examine how pandas can be used to read data files with different formats. There will be some surprising results!

Ultron in Your Codebase: How to Stop AI from Becoming the Villain
(30 Minutes)
By: Daksh Guard
Experience Level: Intermediate

AI coding assistants are now generating more code in three days than developers previously wrote in three years, fundamentally transforming how software gets built. 

Yet our research shows 48-62% of AI-generated code contains security vulnerabilities, with these PRs being rejected 3x more often than human-written code despite their speed.

Just as Tony Stark's attempt to create a peacekeeping AI resulted in Ultron nearly destroying the world, giving AI unrestricted access to our codebases without proper constraints leads to cascading failures in production systems.

Through analyzing 1000+ AI pull requests, we've developed a six-stone framework that determines exactly when AI should draft code (Jarvis mode), when it needs human review (Vision mode), and when it should never touch the code at all (preventing Ultron mode).

45 Python enthusiasts attended this meeting.


Thu, Oct 09 2025 at 06:00 PM at American Planning Association (APA)

Life Without pip install
(10 Minutes)
By: Aly Sivji
Experience Level: Novice
Slides Link

In this lightning talk, I will demonstrate how to import packages that have not been installed in a virtual environment.

Automating Large-Scale CD Archiving with Python, Docker, and Observability
(30 Minutes)
By: Max McCann
Experience Level: Intermediate

Ripping and archiving thousands of music CDs for personal use can be a daunting task—especially when you care about safety, automation, and system reliability. In this talk, I’ll share how I built a secure workflow using Python, shell scripts, and Docker to ingest and organize a large CD collection into a Plex server. I’ll demo the Nimbie disc autoloader (“the hopper”), explain how containerization helps isolate untrusted media, and show how I monitor throughput and reliability using Datadog metrics. This session focuses on the technical challenges of automation, security, and observability in large-scale media archiving.

49 Python enthusiasts attended this meeting.


Thu, Sep 11 2025 at 06:00 PM at Avant

Concurrency and Parallelism in Modern Python
(20 Minutes)
By: Jeremy Shefer
Experience Level: Advanced
Slides Link

I want to start broadly about what concurrency is, how it's implemented on the hardware level and what concurrency paradigms are available out there on various programming languages. I will then zoom into what's available in modern python. Hopefully this will give people a good understanding of the current concurrency landscape in python and how and why it came to be.

Method Binding in Python
(25 Minutes)
By: Andrew Wingate
Experience Level: Intermediate

In this talk, we’ll explore method binding in Python. What really happens when you put a function inside a class? At first glance, it may look like just another function, but Python transforms it into a method by automatically handling the binding between the function and the class instance. 
We'll explore notions of self, some __methods__, and a little of what Python does under the hood. 

44 Python enthusiasts attended this meeting.


Thu, Aug 14 2025 at 06:00 PM at Tegus (by AlphaSense)

Express Yourself! Conveying Information with Exceptions
(20 Minutes)
By: Heather White (eevelweezel)
Experience Level: Novice

When properly used, exceptions are a powerful tool for conveying information.  Let's take a look at how better exception management can help us avoid some common antipatterns.

Expressive: a new library for compiling symbolic expressions into fast NumPy functions
(20 Minutes)
By: Russell Fordyce
Experience Level: Intermediate

Introducing a new library which can compile symbolic expressions into fast NumPy functions - I hope it can help widen the bridge between mathematicians and programmers

A SymPy expression or string is accepted along with sample data, then directly used or converted into a loop over the first dimension of those arrays, and finally compiled with Numba's ahead-of-time mode using the types from the data and exposed through the object's `__call__()`

The given sample data can also be used to internally verify the results match in Python, SymPy (substitution), and the compiled function

Extra features (such as support for summations) and arbitrary helper functions can become embedded and made available too

Expressive can also parse indexed names like x[i-1] to refer to arbitrary offsets of the input arrays and also members of the result array (which can be provided filled or with seed values or generated dynamically)

Proposed Agenda
* Expressive overview
* How fast is this thing?
* Use cases
* Other cool stuff this can do
* Configuration system
* What's next?

39 Python enthusiasts attended this meeting.