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

#342: Don't Believe Those Old Blogging Myths

Published Mon, Jun 26, 2023, recorded Mon, Jun 26, 2023
Watch this episode on YouTube
Play on YouTube
Watch the live stream replay

About the show

Sponsored by us! Support our work through:

Connect with the hosts

Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Tuesdays at 11am PT. Older video versions available there too.

Brian #1: Plumbum: Shell Combinators and More

  • Suggested by Henry Schreiner last week.
  • (Also, thanks Michael for the awesome search tool on PythonBytes.fm that includes transcripts, so I can find stuff discussed and not just stuff listed in the show notes.)
  • Plumbum is “ a small yet feature-rich library for shell script-like programs in Python. The motto of the library is “Never write shell scripts again”, and thus it attempts to mimic the shell syntax (shell combinators) where it makes sense, while keeping it all Pythonic and cross-platform.”
  • Supports
    • local commands
    • piping
    • redirection
    • working directory changes in a with block. So cool.
    • lots more fun features

Michael #2: Our plan for Python 3.13

  • The big difference is that we have now finished the foundational work that we need:
    • Low impact monitoring (PEP 669) is implemented.
    • The bytecode compiler is a much better state.
    • The interpreter generator is working.
    • Experiments on the register machine are complete.
    • We have a viable approach to create a low-overhead maintainable machine code generator, based on copy-and-patch.
  • We plan three parallelizable pieces of work for 3.13:
    • The tier 2 optimizer
    • Enabling subinterpreters from Python code (PEP 554).
    • Memory management
  • Details on superblocks

Brian #3: Some blogging myths

  • Julia Evans
  • <from Brian: I’m not sure if I’m including this to convince all of you to blog more, or to convince myself. Hopefully both happens.>
  • myths (more info of each in the blog post):
    • you need to be original
    • you need to be an expert
    • posts need to be 100% correct
    • writing boring posts is bad
    • you need to explain every concept
    • page views matter
    • more material is always better
    • everyone should blog
  • I’d add
    • Write posts to help yourself remember something.
    • Write posts to help future prospective employers know what topics you care about.
    • You know when you find a post that is outdated and now wrong, and the code doesn’t work, but the topic is interesting to you. Go ahead and try to write a better post with code that works.

Michael #4: Jupyter AI

  • A generative AI extension for JupyterLab
  • An %%ai magic that turns the Jupyter notebook into a reproducible generative AI playground. This works anywhere the IPython kernel runs (JupyterLab, Jupyter Notebook, Google Colab, VSCode, etc.).
  • A native chat UI in JupyterLab that enables you to work with generative AI as a conversational assistant.
  • Support for a wide range of generative model providers and models (AI21, Anthropic, Cohere, Hugging Face, OpenAI, SageMaker, etc.).
  • Official project from Jupyter
  • Provides code insights
  • Debug failing code
  • Provides a general interface for interaction and experimentation with currently available LLMs
  • Lets you collaborate with peers and an Al in JupyterLab
  • Lets you ask questions about local files
  • Video presentation: David Qiu - Jupyter AI — Bringing Generative AI to Jupyter | PyData Seattle 2023

Extras

Brian:

  • Textual has some fun releases recently
  • Python in VSCode June Release includes revamped test discovery and execution.
    • You have to turn it on though, as the changes are experimental:
          "python.experiments.optInto": [
              "pythonTestAdapter",
          ]
      
    • I just turned it on, so I haven’t formed an opinion yet.

Michael:

Joke: Phishing


Want to go deeper? Check our projects