Topics covered in this episode:- Dataherald
- Python's many command-line utilities
- Distroless Python
- functools.cache, cachetools, and cachebox
- Extras
- Joke
Watch on YouTube
About the show
Sponsored by ScoutAPM: pythonbytes.fm/scout
Connect with the hosts
- Michael: @mkennedy@fosstodon.org
- Brian: @brianokken@fosstodon.org
- Show: @pythonbytes@fosstodon.org
Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too.
Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to our friends of the show list, we'll never share it.
Michael #1: Dataherald
- Interact with your SQL database, Natural Language to SQL using LLMs.
- Allows you to set up an API from your database that can answer questions in plain English
- Uses include
- Allow business users to get insights from the data warehouse without going through a data analyst
- Enable Q+A from your production DBs inside your SaaS application
- Create a ChatGPT plug-in from your proprietary data
Brian #2: Python's many command-line utilities
- Trey Hunner
- Too many to list, but here’s some fun ones
- json.tool - nicely format json data
- calendar - print the calendar
- current by default, but you can pass in year and month
- gzip, ftplib, tarfile, and other unixy things
- cProfile & pstats
Michael #3: Distroless Python
- via Patrick Smyth
- What is distroless anyway?
- These are container images without package managers or shells included.
- Debugging these images presents some wrinkles (can't just exec into a shell inside the image), but they're a lot more secure.
- Chainguard, creates low/no CVE distroless images based on our FOSS distroless OS, Wolfi.
- Some Python use-cases:
docker run -it cgr.dev/chainguard/python:latest
# The entrypoint is a Python REPL, since no b/a/sh is included
docker run -it cgr.dev/chainguard/python:latest-dev
# This is their dev version and has pip, bash, apk, etc.
Brian #4: functools.cache, cachetools, and cachebox
- functools cache and lru_cache - built in
- cachetools - “This module provides various memoizing collections and decorators, including variants of the Python Standard Library's @lru_cache function decorator.”
- cachebox - “The fastest caching Python library written in Rust”
Extras
Brian:
- Python 3.12.4 is out
- VSCode has some pytest improvements
Michael:
- Time for a bartender alternative, I’ve switched to Ice.
- Rocket.chat as an alternative to Slack
Joke: CSS Cartoons