UPCOMING MEETINGS

Thu, Aug 08 2024 at 06:00 PM at Slalom Build

Package and Share Your Python Code Like a Pro
(30 Minutes)
By: Paul Zuradzki
Experience Level: Novice

Have you ever struggled with making your Python scripts reproducible? Do you want another project to be able to use your code without forcing users to copy your files? 

Ever get stumped by these errors:
```
ImportError: No module named MyPackage
ImportError: attempted relative import with no known parent package
```

If yes, then this talk is for you!

We will talk about
- Python module search path basics
- Learn to make a pip-installable package with automated code quality tools. Introducing `pyproject.toml` and `setup.py`.
- Installing a Python package from zip, GitHub, or PyPI
- Introduce a minimal GitHub Actions workflow file and pre-commits. 
- Introduce code quality tools for linting, formatting, type checking, and testing (pytest, black, mypy, ruff). We won't go into the details of each, but we will show how to run these tools in a automated fashion.

The truth about objects
(25 Minutes)
By: Naomi Ceder
Experience Level: Intermediate
Slides Link

“Everything in Python is an object.” This is a profound truth about Python, but what does it mean? Is literally EVERYTHING an object? And what is an object anyway? Are objects the same as instances of a class? How do classes and types really work in Python? And what do metaclasses have to do with anything?

In fact, the answers to these questions are probably not what you think they are - Python’s approach to objects is different from most other languages in sometimes surprising ways.

This talk will use simple live coded examples to explore how objects work in Python and clear up several common misconceptions and misunderstandings about how objects and instances, classes and types, and metaclasses all work together.

Be warned - you are likely to be surprised when you learn the truth about objects in Python.