DiscoverPython Bytes#440 Can't Register for VibeCon
#440 Can't Register for VibeCon

#440 Can't Register for VibeCon

Update: 2025-07-15
Share

Description

Topics covered in this episode:


Watch on YouTube


About the show



Sponsored by PropelAuth: pythonbytes.fm/propelauth77



Connect with the hosts





Join us on YouTube at pythonbytes.fm/live to be part of the audience. Usually Monday 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.



Brian #1: Switching to direnv, Starship, and uv




  • Last week I mentioned that I’m ready to try direnv again, but secretly, I still had some worries about the process. Thankfully, Trey has a tutorial to walk me past the troublesome parts.


  • direnv - an extension for your shell. It augments existing shells with a new feature that can load and unload environment variables depending on the current directory.


  • Switching from virtualenvwrapper to direnv, Starship, and uv



    - Trey Hunner**




    • Trey has solved a bunch of the problems I had when I tried direnv before




      • Show the virtual environment name in the prompt


      • Place new virtual environments in local .venv instead of in .direnv/python3.12


      • Silence all of the “loading”, “unloading” statements every time you enter a directory


      • Have a script called



        venv


        to create an environment, activate it, create a



        .envrc


        file




        • I’m more used to a create script, so I’ll stick with that name and Trey’s contents


      • A



        workon


        script to be able to switch around to different projects.




        • This is a carry over from “virtualenvwrapper’, but seems cool. I’ll take it.


      • Adding



        uv


        to the mix for creating virtual environments.




        • Interestingly including --seed which, for one, installs pip in the new environment. (Some tools need it, even if you don’t)



    • Starship




      • Trey also has some setup for Starship. But I’ll get through the above first, then MAYBE try Starship again.

      • Some motivation

        • Trey’s setup is pretty simple. Maybe I was trying to get too fancy before

        • Starship config in toml files that can be loaded with direnv and be different for different projects. Neato

        • Also, Trey mentions his dotfiles repo. This is a cool idea that I’ve been meaning to do for a long time.




  • See also:






Michael #2: rqlite - Distributed SQLite DB




  • via themlu, thanks!

  • rqlite is a lightweight, user-friendly, distributed relational database built on SQLite.

  • Built on SQLite, the world’s most popular database

  • Supports full-text search, Vector Search, and JSON documents

  • Access controls and encryption for secure deployments



Michael #3: A Python dict that can report which keys you did not use




  • by Peter Bengtsson

  • Very cool for testing that a dictionary has been used as expected (e.g. all data has been sent out via an API or report).

  • Note: It does NOT track d.get(), but it’s easy to just add it to the class in the post.

  • Maybe someone should polish it up and put it on pypi (that person is not me :) ).



Brian #4: Some Markdown Stuff




  • Textual 4.0.0



    adds Markdown.append which can be used to efficiently stream markdown content




    • The reason for the major bump is due to an interface change to Widget.anchor

    • Refreshing to see a symantic change cause a major version bump.


  • html-to-markdown




    • Converts html to markdown


    • A complete rewrite fork of markdownify


    • Lots of fun features like “streaming support”

      • Curious if it can stream to Textual’s Markdown.append method. hmmm.





Joke: Vibecon is hard to attend

Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

#440 Can't Register for VibeCon

#440 Can't Register for VibeCon

Michael Kennedy and Brian Okken