Python Weekly Newsletter, Pydo. Curated Python news, tutorials, tools and more!
🌐 View in your browser.   |  ✍️ Publish on FAUN   |  🦄 Become a sponsor
 
Allow loading remote contents and showing images to get the best out of this email.
PyDo
 
 
 
 

🎉🔗 Tech Enthusiasts, Assemble! 🔗🎉

Calling all DevOps heroes, Kubernetes sailors, Golang wizards, and Cloud-natives! 🚀
FAUN has Subreddits just waiting for you. Join the community, where sharing is caring, and knowledge is limitless! 🌟


Engage in thought-provoking discussions, share your mighty projects, soak in wisdom from industry gurus, and forge bonds with tech aficionados around the globe! 🌍🔗💬

The realms of knowledge are infinite – let's explore them together! 🚀🔥

 
 
🔗 From the web
 
rednafi.com rednafi.com
 
Python dependency management redux
 
 

One major drawback of Python's ecosystem is the significant variances in workflows for different tasks, including dependency management. Depending on the specific use case, such as web development or data science, the workflow can vary greatly. The author shares their preferred approach, which involves using pip and pip-tools for managing dependencies in applications, and hatch for packaging libraries.

 
 
blog.savant-ai.io blog.savant-ai.io
 
Documenting Native Python Extensions Made With Rust and PyO3
 
 

Python developers can create well-documented native extensions using Rust and PyO3 by leveraging the Sphinx documentation builder and the Napoleon extension. By utilizing Rust's documentation blocks with Sphinx's RST syntax, developers can generate documentation for Rust code that can be seamlessly integrated into the Sphinx documentation. This approach simplifies the process of documenting and publishing Python extensions written in Rust, providing an efficient solution for creating optimized and well-documented code.

 
 
mgorny.pl mgorny.pl
 
Problems faced when downstream testing Python packages
 
 

Downstream testing, performed by software redistributors like Linux distributions, serves a different purpose than upstream testing. While upstream testing ensures the current code works in reference environments, downstream testing verifies that a specific package version functions properly in the intended environment. However, downstream testers often encounter issues with test suites that assume a disposable environment, require outdated package versions, have incompatibilities caused by additional packages, rely on internet resources, demand containers for testing, include fragile tests with timeouts, impose unconditional test dependencies, or conduct package quality checks that may not be critical for downstream purposes.

 
 
benhoyt.com benhoyt.com
 
Designing Pythonic library APIs   ✅
 
 

Principles useful for designing good Python library APIs, including structure, naming, error handling, and type annotations.

 
 
jacobian.org jacobian.org
 
Django Model Fields With Attributes
 
 

A custom Django model field called MarkdownField is created to store a string as the underlying data but exposes additional attributes on model instances. The implementation involves a field class, a Python descriptor, and a final value object. The descriptor overrides attribute access and sets the underlying data, while the value object wraps the actual value and provides extra functionality such as converting Markdown to HTML. This approach allows for sub-attributes on fields and provides clarity when assignments need to be handled.

 
 
www.reviewnb.com www.reviewnb.com
 
Git and Jupyter Notebooks: The Ultimate Guide
 
 

Use git version control with Jupyter Notebook for many advantages, but there are challenges such as reviewing local notebook changes and resolving merge conflicts. Tools like nbdime, JupyterLab Git extension, and ReviewNB can help address these challenges and improve collaboration with Jupyter Notebook and Git.

 
 
sourcery.ai sourcery.ai
 
Generating Code without Generating Technical Debt?
 
 

GPT and other large language models can generate large volumes of code quickly, allowing for faster prototyping and iterative development. However, this can also result in a larger amount of messy code to maintain. There are ways to improve the code generated by these models, such as following best practices, providing specific instructions, and iterating on the generated code to make it better.

 
 

 
⭐ Supporters
 
leanpub.com leanpub.com
 
Exclusive 20% Discount on "Cloud Native Microservices With Kubernetes" - Limited Time Offer!
 
 

We are thrilled to announce a special offer for our widely acclaimed book, "Cloud Native Microservices With Kubernetes - A Comprehensive Guide to Building, Scaling, Deploying, Observing, and Managing Highly-Available Microservices in Kubernetes".

Starting today and running until July 31st, we're offering an exclusive 20% discount off the regular price!

To take advantage of this offer, simply use this coupon link .

Don't miss this opportunity. Remember, the offer is only valid until July 31st. Grab your copy now and unlock the full potential of cloud-native microservices with Kubernetes!

We look forward to empowering your journey in the world of cloud computing!

Happy learning!
FAUN Team

 
 
👉 Spread the word and help developers find you by promoting your projects on FAUN. Get in touch for more information.
 
ℹ️ News
 
pyfound.blogspot.com pyfound.blogspot.com
 
The 2023 PSF Board Election is Open!
 
 

The Python Software Foundation (PSF) is conducting its Board of Directors Election from June 20 to June 30, 2023. Members who qualify can vote by following the instructions provided in the email sent by "OpaVote Voting Link <noreply@opavote.com>".

 
 
pyfound.blogspot.com pyfound.blogspot.com
 
Announcing the 2023 PSF Board Election Results!
 
 

This year's PSF board election was highly engaging, with five new board members being elected. The election process was particularly eventful as it dealt with challenges posed by the global pandemic, but ultimately, the participation and support from the Python community made it a successful and representative event.

 
 
pythoninsider.blogspot.com pythoninsider.blogspot.com
 
Python Insider: Python 3.12.0 beta 3 released
 
 

Python 3.10 beta 3 has been released and is now in the beta phase, with a goal of minimal code and ABI changes. This release includes new features, performance improvements, and deprecations.

 
 
 
🛍️ Swag Store
 
 
ByteVibe New Arrivals: Desk Mats
 
❤️ 20% exclusive discount for FAUNers on all products (+free shipping included) when you use the code "THANKSFAUN".
 
💬 Discussions
 
twitter.com twitter.com
 
Did you know that the backend of MetaThreads is built with Python 3.10?
 
 
It's running on Instagram's Cinder fork that includes a JIT, lazy-loaded modules, pre-compiled static modules, and a bunch of other interesting tweaks against vanilla Python 3.10.
 
 
 
⚙️ Tools
 
github.com github.com
 
ParthJadhav/Tkinter-Designer
 
 

An easy and fast way to create a Python GUI

 
 
github.com github.com
 
django-waffle/django-waffle
 
 

A feature flipper for Django

 
 
github.com github.com
 
gorilla-llm/gorilla-cli
 
 

LLMs for your CLI

 
 
github.com github.com
 
embedchain/embedchain
 
 

Framework to easily create LLM powered bots over any dataset.

 
 
👉 Spread the word and help developers find and follow your Open Source project by promoting it on FAUN. Get in touch for more information.
 
🤔 Did you know?
 
 

The Apollo 11 guidance computer, which helped land humans on the moon, had less processing power than a modern-day smartphone.

 
 
😂 Meme of the week
 
 
 
 
❤️ Thanks for reading
 
 
👋 Keep in touch and follow us on social media:
- 💼LinkedIn
- 📝Medium
- 🐦Twitter
- 👥Facebook
- 📸Instagram

👌 Was this newsletter helpful?
We'd really appreciate it if you could forward it to your friends! You can also donate to help us keep this newsletter going.

🙏 Never miss an issue!
To receive our future emails in your inbox, don't forget to add community@faun.dev to your contacts.

ℹ️ Have a question or feedback?
Feel free to reply to this email. We'd love to hear from you!

🤩 Want to sponsor our newsletter?
Reach out to us at sponsors@faun.dev and we'll get back to you as soon as possible.
 

PyDo #381: Did You Know that the Backend of Meta Threads is Built with Python 3.10?
Legend: ✅ = Editor's Choice / ♻️ = Old but Gold / ⭐ = Promoted / 🔰 = Beginner Friendly

You received this email because you are subscribed to FAUN.
🐾 FAUN is a world wide community of developers 👣 We help developers learn and grow by keeping them up with what matters.

You can manage your subscription options here (recommended) or use the old way here (legacy). If you have any problem, read this or reply to this email.

Important: We are gradually migrating to a new system. If you don't create an account on FAUN (here), you will stop receiving our weekly newsletter.