Python Weekly - Python Weekly - Issue 595

View this email in your browser

Python Weekly

Welcome to issue 595 of Python Weekly. Let's get straight to the links this week.
From Our Sponsor 
  One of the commonly used ways to implement mass assignment, a category of vulnerabilities, in Python is the inbuilt setattr() function. Protect your Python libraries with this in-depth look by Snyk at the potential dangers of the setattr function and how to avoid mass assignment vulnerabilities.

News

Bloomberg Launches FOSS Fund to Support Free and Open Source Projects
Bloomberg's OSPO and Corporate Philanthropy teams partnered to enable direct employee engagement to help sustain open source projects critical to our work. The three open source projects chosen as the recipients of the company’s inaugural FOSS Contributor Fund grants are Apache Arrow, Curl and Celery.


Articles, Tutorials and Talks

Now You Have Three Problems
There's a popular programming trope that if the solution to your problem involves parsing text with a regular expression, you now have two problems. Some programmers read this and think to try a different approach. Perhaps you don't actually need a regex. Maybe the problem can be solved with a simple string split or something. However, others might think a bit harder and wonder "what if I did something so audacious that it resulted in three problems?" This post is in the spirit of that!

Raw SQL, SQL Query Builder, or ORM? 
Not sure if you should use Raw SQL, a SQL query builder, or an ORM for your next project? This video explores the pros and cons of each option, allowing you to make an informed decision based on your specific needs. Choosing the wrong technology for your project can be a costly mistake, so it's crucial to understand these tools.

A Gentle Introduction to the Python Match Statement
Learn about how structural pattern matching works in Python and how it can help you write cleaner, more maintainable, and more understandable code.

The ultimate guide to Pandas’ read_csv() function
Here I unravel the mysteries behind the omnipotent and overwhelmingly complicated read_csv() function, including new features added in Pandas 2.0.

Making Python 100x faster with less than 100 lines of Rust
The author shows how to use rust to speed up the Python implementation of the "poly_match" algorithm. by 100x

Using Unpoly with Django
The article provides a tutorial on using Unpoly, a JavaScript library for seamless and fast dynamic web applications, with Django. It covers how to install and configure Unpoly, integrate it with Django views and templates, and use its various features, such as remote forms, partial page updates, and navigation.

Fun with Vector Databases
A post about using Python and FastAPI with vector databases and semantic search.

Python Monorepo: an Example. Part 1: Structure and Tooling
In this post, we describe a design for a Python monorepo: how we structure it; which tools we favor; alternatives that were considered; and some possible improvements.

The different uses of Python type hints

Common pitfalls of GitHub Actions

Improve your Django Code with pre-commit


Interesting Projects, Tools and Libraries

e2b
e2b (english2bits) is an IDE powered by AI agents. Developers describe what they want to build by writing documentation. Then let AI agents with access to tools do the coding work. 

Savant
Python Streaming Video Analytics Framework With Batteries Included.

Auto-GPT
An experimental open-source attempt to make GPT-4 fully autonomous.

Zero
A simple, fast, high performance and low latency Python framework (RPC like) for building microservices or distributed servers.

Girok
A powerful and beautiful CLI scheduler.

openplayground
An LLM playground you can run on your laptop.

taskiq
Distributed task queue with full async support.

nanobind
Tiny and efficient C++/Python bindings.

ReactPy
Reactive user interfaces with pure Python.

cy-root
Python package containing root-finding methods written in Cython.

PyQt-Fluent-Widgets
A fluent design widgets library based on PyQt5.

vocode-python
Vocode is an open source library that makes it easy to build voice-based LLM apps.

FastChat
An open platform for training, serving, and evaluating large language model based chatbots.

tomesd
Speed up Stable Diffusion with this one simple trick!


New Releases

Python in Visual Studio Code – April 2023 Release
This release includes the following announcements:
  • Data Wrangler available for Visual Studio Code Insiders
  • Move symbol refactoring
  • Create Environment button embedded in dependency files
  • Environments API for extension authors
  • Kernel Picker Improvements for Python Environments

Django 4.2 released
Django 4.2 is designated as a long-term support release. It will receive security updates for at least three years after its release. Support for the previous LTS, Django 3.2, will end in April 2024.


Upcoming Events and Webinars

PyData NYC Meetup April 2023
There will be a talk, Intro to Airflow covering everything you need to know to get started with Airflow.

PyData Denver Meetup April 2023
There will be a talk, Recipe Generator: Web Scraping and ChatGPT.

PyData Warsaw Meetup April 2023
There will be following talks
  • FOLLISCAN: how to automate an ultrasound examination with deep learning?
  • Limitations of content generation with AI (spoiler: the sky's the limit)
Our Other Newsletters
Programmer Weekly - A free weekly newsletter for programmers.

Founder Weekly - A free weekly newsletter for entrepreneurs featuring best curated content, must read articles, how to guides, tips and tricks, resources, events and more.
 
Copyright © 2023 Python Weekly, All rights reserved.
You are receiving our weekly newsletter because you signed up at http://www.PythonWeekly.com.

Our mailing address is:
Python Weekly
Brooklyn
Brooklyn, NY 11209

Add us to your address book


Want to change how you receive these emails?
You can update your preferences or unsubscribe from this list.

Older messages

Python Weekly - Issue 594

Thursday, March 30, 2023

View this email in your browser Python Weekly Welcome to issue 594 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Build developer-first automations with Retool

Python Weekly - Issue 593

Thursday, March 23, 2023

View this email in your browser Python Weekly Welcome to issue 593 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Get Your Weekly Dose of Programming A weekly

Python Weekly - Issue 592

Thursday, March 16, 2023

View this email in your browser Python Weekly Welcome to issue 592 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Get Your Weekly Dose of Programming A weekly

Python Weekly - Issue 591

Thursday, March 9, 2023

View this email in your browser Python Weekly Welcome to issue 591 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Snyk is hosting a hands-on, virtual workshop to

Python Weekly - Issue 590

Thursday, March 2, 2023

View this email in your browser Python Weekly Welcome to issue 590 of Python Weekly. Let's get straight to the links this week. From Our Sponsor Build business software 10x faster with Retool

You Might Also Like

Data Science Weekly - Issue 581

Thursday, January 9, 2025

Curated news, articles and jobs related to Data Science, AI, & Machine Learning ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

💻 Issue 444 - Check Out My New CV as a Full Stack .NET Developer!

Thursday, January 9, 2025

This week's Awesome .NET Weekly Read this email on the Web The Awesome .NET Weekly Issue » 444 Release Date Jan 09, 2025 Your weekly report of the most popular .NET news, articles and projects

💎 Issue 451 - Useful things you can do with Rails console

Thursday, January 9, 2025

This week's Awesome Ruby Newsletter Read this email on the Web The Awesome Ruby Newsletter Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Ruby news, articles and

💻 Issue 451 - The best way to iterate over a large array without blocking the main thread

Thursday, January 9, 2025

This week's Awesome JavaScript Weekly Read this email on the Web The Awesome JavaScript Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular JavaScript news, articles

📱 Issue 445 - 🚀 Your Go-To List of 25 Swift Tools and Libraries for Any Project

Thursday, January 9, 2025

This week's Awesome iOS Weekly Read this email on the Web The Awesome iOS Weekly Issue » 445 Release Date Jan 09, 2025 Your weekly report of the most popular iOS news, articles and projects Popular

💻 Issue 369 - 17 Tips from a Senior React Developer

Thursday, January 9, 2025

This week's Awesome React Weekly Read this email on the Web The Awesome React Weekly Issue » 369 Release Date Jan 09, 2025 Your weekly report of the most popular React news, articles and projects

💻 Issue 451 - Mastering Express.js: A Deep Dive

Thursday, January 9, 2025

This week's Awesome Node.js Weekly Read this email on the Web The Awesome Node.js Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Node.js news, articles and

📱 Issue 448 - The Swift Runtime: Your Silent Partner

Thursday, January 9, 2025

This week's Awesome Swift Weekly Read this email on the Web The Awesome Swift Weekly Issue » 448 Release Date Jan 09, 2025 Your weekly report of the most popular Swift news, articles and projects

💻 Issue 446 - Great things about Rust that aren't just performance

Thursday, January 9, 2025

This week's Awesome Rust Weekly Read this email on the Web The Awesome Rust Weekly Issue » 446 Release Date Jan 09, 2025 Your weekly report of the most popular Rust news, articles and projects

JSK Daily for Jan 9, 2025

Thursday, January 9, 2025

JSK Daily for Jan 9, 2025 View this email in your browser A community curated daily e-mail of JavaScript news Advanced Query Building Techniques in Angular: Queries with Different Connectors The Query