Brought to you by Michael and Brian - take a Talk Python course or get Brian's pytest book

#387: Heralding in a new era of database queries

Published Tue, Jun 11, 2024, recorded Tue, Jun 11, 2024
Watch this episode on YouTube
Play on YouTube
Watch the live stream replay

About the show

Sponsored by ScoutAPM: pythonbytes.fm/scout

Connect with the hosts

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
      • handy on Windows
    • 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:

Michael:

Joke: CSS Cartoons


Want to go deeper? Check our projects