Powered by RND
Escucha Python Bytes en la aplicación
Escucha Python Bytes en la aplicación
(6 012)(250 108)
Favoritos
Despertador
Sleep timer

Python Bytes

Podcast Python Bytes
Michael Kennedy and Brian Okken
Python Bytes is a weekly podcast hosted by Michael Kennedy and Brian Okken. The show is a short discussion on the headlines and noteworthy news in the Python, d...
Ver más

Episodios disponibles

5 de 10
  • #410 Entering the Django core
    Topics covered in this episode: Thoughts on Django’s Core futurepool Don't return named tuples in new APIs Ziglang: Migrating from AWS to Self-Hosting Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course Patreon Supporters Connect with the hosts Michael: @[email protected] / @mkennedy.codes Brian: @[email protected] / @brianokken.bsky.social Show: @[email protected] / @pythonbytes.bsky.social 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: Thoughts on Django’s Core Carlton Gibson Great discussion on Django and Core vs Plugins Sustainability with limited people Keeping core small The release cycle eembrace plugins vs endorsing plugins. Michael #2: futurepool via Pat Decker Takes the concept of multiprocessing Pool to the async/await world. Create a pool then delegate the work: async with FuturePool(2) as fp: result = await fp.map(async_pool_fn, range(10)) I would LOVE to see something like this in a broader background asyncio worker pool concept. But that concept doesn’t exist in asyncio in Python and that’s a failing of the framework IMO. Brian #3: Don't return named tuples in new APIs Brett Cannon First off, I’m grateful for any post that talks about APIs and the API is a module, class, or package API and not a Web/REST API. The term API existed long before the internet. “e.g., get_mouse_position() very likely has a two-item tuple of X and Y coordinates of the screen” “it actually makes your API more complex for both you and your users to use. For you, it doubles the data access API surface for your return type as you have to now support index-based and attribute-based data access forever (or until you choose to break your users and change your return type so it doesn't support both approaches)” “… you probably don't want people doing with your return type, like slicing, iterating over all the items …” Alternatives class dataclass dictionary TypedDict SimpleNamespace “My key point in all of this is to prefer readability and ergonomics over brevity in your code. That means avoiding named tuples except where you are expanding to tweaking an existing API where the named tuple improves over the plain tuple that's already being used.” Michael #4: Ziglang: Migrating from AWS to Self-Hosting The Rust Foundation for example, reports that they spent $404,400 on infrastructure costs in 2023. Zig lang has decided to use a single big cloud machine + mirrors Extras Brian: Changing the Python Test community Was started to answer questions for Test & Code listeners years ago. Primarily pytest questions Used to be Slack. Then moved to Podia forum. Now I’m trying to work out a Discord solution that is both sustainable and usable. Michael: PWang Bsky essay Building A Business From Python Expertise - Michael Kennedy on Work Item Podcast Subscribe to package releases, just put .atom on the end of their releases URL, for example: github.com/mikeckennedy/jinja_partials/releases ← add .atom for RSS pytest-bdd 8.0.0 was just released via Jamie Thomson The big feature (in Jamie’s opinion) is the addition of data tables https://github.com/pytest-dev/pytest-bdd/blob/master/CHANGES.rst#800---2024-11-14 Joke: Breaking: JavaScript Developer Commits to Framework for Record-Breaking 3 Weeks
    --------  
    30:42
  • #409 We've moved to Hetzner write-up
    Topics covered in this episode: terminal-tree posting: The API client that lives in your terminal Extra, extra, extra UV does everything or enough that I'm not sure what else it needs to do Extras Joke Watch on YouTube About the show Sponsored by: ScoutAPM - Django Application Performance Monitoring Codeium - Free AI Code Completion & Chat Connect with the hosts Michael: @[email protected] Brian: @[email protected] Show: @[email protected] 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. Michael #1: terminal-tree An experimental filesystem navigator for the terminal, built with Textual Tested in macOS only at this point. Chances are very high it works on Linux. Slightly lower chance (but non-zero) that it works on Windows. Can confirm it works on Linux Brian #2: posting: The API client that lives in your terminal Also uses Textual From Darren Burns Interesting that the installation instructions recommends using uv: uv tool install --python 3.12 posting Very cool. Great docs. Beautiful. keyboard centric, but also usable with a mouse. “Fly through your API workflow with an approachable yet powerful keyboard-centric interface. Run it locally or over SSH on remote machines and containers. Save your requests in a readable and version-control friendly format.” Able to save multiple environments Great colors Allows scripting to run Python code before and after requests to prepare headers, set variables, etc. Michael #3: Extra, extra, extra spaCy course swag give-away, enter for free New essay: Opposite of Cloud Native is? News: We've moved to Hetzner New package: Introducing chameleon-flask package New release: Listmonk Python client TIOBE Update PEP 750 – Template Strings Canary email Left Omnivore, for Pocket, left Pocket for, …, landed on Instapaper Supports direct import from Omnivore and Pocket Though Hoarder is compelling Trying out Zen Browser Wasn’t a fan of Arc (especially now) but the news turned me on to Zen Brian #4: UV does everything or enough that I'm not sure what else it needs to do Jeff Triplett “UV feels like one of those old infomercials where it solves everything, which is where we have landed in the Python world.” “My favorite feature is that UV can now bootstrap a project to run on a machine that does not previously have Python installed, along with installing any packages your application might require.” Partial list (see Jeff’s post for his complete list) uv pip install replaces pip install uv venv replaces python -m venv uv run, uv tool run, and uv tool install replaces pipx uv build - Build your Python package for pypi uv publish - Upload your Python package to pypi, replacing twine and flit publish Extras Brian: Coverage.py originally was just one file Trying out BlueSky brianokken.bsky.social Not because of Taylor Swift, but nice. There are a lot of Python people there. Joke: How programmers sleep
    --------  
    35:07
  • #408 python-preference only-managed 3.13t
    Topics covered in this episode: GitHub action security: zizmor Python is now the top language on GitHub Python 3.13, what didn't make the headlines PyCon US 2025 Extras Joke Watch on YouTube About the show Sponsored by: ScoutAPM - Django Application Performance Monitoring Codeium - Free AI Code Completion & Chat Connect with the hosts Michael: @[email protected] Brian: @[email protected] Show: @[email protected] 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: GitHub action security: zizmor Article: Ned Batchelder zizmor: William Woodruff & others “a new tool to check your GitHub action workflows for security concerns.” Install with cargo or brew, then point it at workflow yml files. It reports security concerns. Michael #2: Python is now the top language on GitHub Thanks to Pat Decker for the heads up. A rapidly growing number of developers worldwide This suggests AI isn’t just helping more people learn to write code or build software faster—it’s also attracting and helping more people become developers. First-time open source contributors continue to show wide-scale interest in AI projects. But we aren’t seeing signs that AI has hurt open source with low-quality contributions. Python is now the most used language on GitHub as global open source activity continues to extend beyond traditional software development. The rise in Python usage correlates with large communities of people joining the open source community from across the STEM world rather than the traditional community of software developers. There’s a continued increase in first-time contributors to open source projects. 1.4 million new developers globally joined open source with a majority contributing to commercially backed and generative AI projects. Notably, we did not see a rise in rejected pull requests. This could indicate that quality remains high despite the influx of new contributors. Brian #3: Python 3.13, what didn't make the headlines Some pretty cool updates to pdb : the command line Python debugger multiline editing code completion pathlib has a bunch of performance updates python -m venv adds a .gitignore file that auto ignores the venv. Michael #4: PyCon US 2025 Site is live with CFP and dates Health code is finally reasonable: “Masks are Encouraged but not Required” PyCon US 2025 Dates Tutorials - May 14-15, 2025 Sponsor Presentations - May 15, 2025 Opening Reception - May 15, 2025 Main Conference and Online - May 16-18, 2025 Job Fair - May 18, 2025 Sprints - May 19-May 22, 2025 Extras Brian: Please publish and share more - Jeff Triplett Michael: pre-commit-uv Just spoke with Sefanie Molin about pre-commit hooks on Talk Python Curse you Omnivore! We have moved to hetzner Typora markdown app free-threaded Python is now available via uv uv self update uv python install --python-preference only-managed 3.13t Joke: Debugging char
    --------  
    31:16
  • #407 Back to the future, destination 3.14
    Topics covered in this episode: Python 3.14.0 alpha 1 is now available uv supports dependency groups dive: A tool for exploring each layer in a docker image pytest-metadata Extras Joke Watch on YouTube About the show Sponsored by us! Support our work through: Our courses at Talk Python Training The Complete pytest Course & Hello, pytest! Patreon Supporters Connect with the hosts Michael: @[email protected] Brian: @[email protected] Show: @[email protected] 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. Michael #1: Python 3.14.0 alpha 1 is now available First of seven planned alpha releases. Many new features for Python 3.14 are still being planned and written. Among the new major new features and changes so far: PEP 649: deferred evaluation of annotations Improved error messages Brian #2: uv supports dependency groups we covered dependency groups in episode 406 as of 0.4.27, uv supports dependency groups docs show how to add dependencies with uv add --group also “The --dev, --only-dev, and --no-dev flags are equivalent to --group dev, --only-group dev, and --no-group dev respectively.” To install a group, uv pip install --group doesn’t work yet. It’s waiting for PyPA to decide on an interface for pip, and uv pip will use that interface. But sync works. $ uv init # create a pyproject.toml $ uv add --group foo pytest $ uv venv # create venv $ uv sync --group foo # will install all dependencies, including group "foo" Michael #3: dive: A tool for exploring each layer in a docker image via Mike Fiedler Features: Show Docker image contents broken down by layer Indicate what's changed in each layer Estimate "image efficiency" Quick build/analysis cycles CI Integration Brian #4: pytest-metadata An incredibly useful plugin for adding, you guessed it, metadata, to your pytest results. Required for pytest-html but also useful on it’s own Adds metadata to text output with --verbose xml output when using --junit-xml, handy for CI systems that support junit.xml Other plugins depend on this and report in other ways, such as pytest-html By default, already grabs Python version Platform info List of installed packages List of installed pytest plugins You can add your own metadata You can access all metadata (and add to it) from tests, fixtures, and hook functions via a metadata fixture. This is in the Top pytest Plugins list, currently #5. Extras Brian: I’ve started filtering deprecated plugins from the pytest plugin list. I’m also going to start reviewing the list and pulling out interesting plugins as the topic of the next season of Test & Code. Michael: Pillow 11 is out pip install deutschland Talk Python has a dedicated blog, please subscribe! Joke: Dog names
    --------  
    28:26
  • #406 What's on Django TV tonight?
    Topics covered in this episode: Open Source Pledge Jeff Triplet's DjangoTV PEP 735 – Dependency Groups in pyproject.toml livereload Extras Joke Watch on YouTube About the show Sponsored by ScoutAPM: pythonbytes.fm/scout Connect with the hosts Michael: @[email protected] Brian: @[email protected] Show: @[email protected] 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: Open Source Pledge Learned about this because of this post Why Django supports the Open Source Pledge Steps Pay Open Source maintainers. Min to participate is 2k/year/dev at your company Self-report annually Publish a blog post outlining your payments Armin’s post about launching Open Source Pledge and mixing money with open source Michael #2: Jeff Triplet's DjangoTV A nice aggregation of lots of Django conference talks Filter by conference Good search as well Brian #3: PEP 735 – Dependency Groups in pyproject.toml Author: Stephen Rosen, Sponsor: Brett Cannon, PEP-Delegate: Paul Moore Accepted. Resolotion Oct 10, 2024 “This PEP specifies a mechanism for storing package requirements in pyproject.toml files such that they are not included in any built distribution of the project.” Allow us to define named groups of dependencies that can be independent of the main project. ex: [dependency-groups] test = ["pytest", "coverage"] docs = ["sphinx", "sphinx-rtd-theme"] typing = ["mypy", "types-requests"] typing-test = [{include-group = "typing"}, {include-group = "test"}, "useful-types"] “might” work like this: pip install --dependency-groups=test,typing but tool venders are able to define how they use groups. Of course. Similar solutions multiple requirements.txt files: requirements_test.txt, requirements_docs.txt, etc. no standard naming convention, not standardized package extras: not gauranteed to be statically defined (TIL) additional to main dependencies, so not independent Michael #4: livereload Example from talkpython.fm: asset_bundler_watcher.py The docs are sparse, so see the gist above Extras Brian: Personal Blogs are no longer personal when AI gets too involved - KJayMiller Mind Your Image Metadata - Stefanie Molin Michael: 14% of our listeners are in Germany, thanks Germany! Prost! Hetzner comes to the US Joke: A programmer’s partner asks them: “Would you go get a loaf of bread from the store? And if they have eggs, get a dozen.” A while later, the programmer returns with 12 loaves of bread and says “They had eggs.” From https://savvyprogrammer.io/software-jokes/
    --------  
    24:53

Más podcasts de Tecnología

Acerca de Python Bytes

Sitio web del podcast

Escucha Python Bytes, Loop Infinito (by Applesfera) y muchos más podcasts de todo el mundo con la aplicación de radio.es

Descarga la app gratuita: radio.es

  • Añadir radios y podcasts a favoritos
  • Transmisión por Wi-Fi y Bluetooth
  • Carplay & Android Auto compatible
  • Muchas otras funciones de la app
Radio
Aplicaciones
Redes sociales
v6.28.0 | © 2007-2024 radio.de GmbH
Generated: 11/20/2024 - 2:22:51 PM