Python Weekly - Python Weekly - Issue 648

View this email in your browser

Python Weekly

Welcome to issue 648 of Python Weekly. Let's get straight to the links this week.
News

Fake job interviews target developers with new Python backdoor
A new campaign called "Dev Popper" is targeting software developers with fake job interviews in an attempt to trick them into installing a Python remote access trojan (RAT). The developers are asked to perform tasks supposedly related to the interview, like downloading and running code from GitHub, in an effort to make the entire process appear legitimate.


Articles, Tutorials and Talks

Mojo Lang - Tomorrow's High Performance Python? 
In this episode we explore why Mojo was created, and what it offers to Python programmers and non-Python programmers alike. How is it built for performance, and which performance features matter? What’s its take on functional programming and type systems? And can it marry the high-level programming of Python with the low-level programming of LLVM/MLIR?

Django: An admin extension to prevent state leaking between requests
Here’s a small protection I added to a project a few years ago. I was considering it again since I saw a similar potential bug in a Django middleware.

Local LLM-as-judge evaluation with lm-buddy, Prometheus and llamafile
This post examines how different software components came together to allow LLM-as-judge evaluation without the need for expensive GPUs. All the components were built with and chosen for their user control, open source nature, and interoperability.

How to Build a Crystal Image Search App with Vector Search
A demonstration of how to build an application to store and query data on crystals and precious stones using Astra DB. Built with RAGStack, this web app leverages the CLIP model to provide multi-modal search to retrieve data on all kinds of crystals.

Poor mans autoreload server in single file python on linux
The article describes a simple Python server that provides automatic browser page reload on content change, without requiring any additional setup or configuration. The server acts as a regular file server but also serves WebSocket messages over a specified path to trigger the page reload.

A Beginner’s Guide to Vector Embeddings
In this article, we’ll examine vector embeddings in depth, including the types of vector embeddings, how neural networks create them, how vector embeddings work, and how you can create embeddings for your data.  

How to prevent data leakage in pandas & scikit-learn 
What is data leakage, why is it problematic, and how can you prevent it when working on a supervised Machine Learning problem in Python?

Patching requests for fun and (concurrent) profit
Because life is too short to spam calls to SSL_CTX_load_verify_locations().

Sleepsort: Sorting while sleeping
The post introduces the "sleepsort" algorithm, a quirky sorting method that utilizes thread sleep times to sort integers in ascending order. It provides a playful yet insightful exploration of the algorithm's functionality and limitations.

Stream your voice clone
We'll turn your voice into an infinitely-scalable instrument with Django.

Asyncio Coroutine Object Methods in Python
We can define coroutine methods on custom Python objects. This allows methods on custom Python objects to use async/await syntax, such as awaiting other coroutines and tasks and allows the custom coroutine methods themselves to be awaited within our asyncio programs. In this tutorial, you will discover how to define object methods as coroutines.

TypeIs does what I thought TypeGuard would do in Python
The article discusses the differences between the TypeGuard and TypeIs type annotations in Python. It explains that TypeIs has more intuitive behavior compared to TypeGuard, especially when dealing with union types, and recommends using TypeIs over TypeGuard in most cases.


Interesting Projects, Tools and Libraries

WebLlama
Llama-3 agents that can browse the web by following instructions and talking to you.

LLaMA-Factory
Unify Efficient Fine-Tuning of 100+ LLMs.

tkforge
Drag & drop in Figma to create a Python GUI with ease.

TagStudio
A file and photo management application and system.

torchtitan
A native PyTorch Library for large model training.

LMDeploy
LMDeploy is a toolkit for compressing, deploying, and serving LLMs.

cohere-toolkit
Toolkit is a collection of prebuilt components enabling users to quickly build and deploy RAG applications.

Cognita
RAG (Retrieval Augmented Generation) Framework for building modular, open source applications for production by TrueFoundry

databonsai
Clean & curate your data with LLMs.

tach
A Python tool to enforce a modular, decoupled package architecture.


Upcoming Events and Webinars

Virtual: PyMNtos Python Presentation Night #125
There will be following talks
  • Using Python in Excel and Power BI
  • Deploy a Python API to the Cloud

PyData NYC Meetup May 2024
There will be following talks
  • Modular AI Systems with Feature, Training, Inference Pipelines on Hopsworks - a LLMOps Tutorial
  • Introduction to Modal

PyData London Meetup May 2024
There will be following talks
  • Microsoft Fabric for Python Data Developers
  • Desert Island Docker: Python Edition
  • Why You Should Be Afraid of Pickles
  • ASCII Art with Python 

PyData Manchester Meetup May 2024
There will be following talks
  • Using data science to get personal health insights from smart wearables
  • Has Python found its Mojo? A New language for ML and AI 

PyData Rome Meetup May 2024
There will be following talks
  • Computer Vision IRL: from the idea to the on-premise deployment
  • Geospatial Data Integration with Jupyter Notebook and OS software
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 © 2024 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 647

Thursday, April 25, 2024

View this email in your browser Python Weekly Welcome to issue 647 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 646

Saturday, April 13, 2024

View this email in your browser Python Weekly Welcome to issue 646 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 645

Thursday, April 4, 2024

View this email in your browser Python Weekly Welcome to issue 645 of Python Weekly. Let's get straight to the links this week. News Typosquatting Campaign Targets Python Developers Phylum's

Python Weekly - Issue 644

Thursday, March 28, 2024

View this email in your browser Python Weekly Welcome to issue 644 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 643

Thursday, March 21, 2024

View this email in your browser Python Weekly Welcome to issue 643 of Python Weekly. Let's get straight to the links this week. Articles, Tutorials and Talks How to use PostgreSQL for (military)

You Might Also Like

Tuesday Triage #200 and giveaway

Tuesday, May 14, 2024

Your weekly crème de la crème of the Internet is here! The 200th edition featuring annual subscriptions giveaway, thoughts on nearly four years of ... ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

🎮 How AI Tools Are Changing Game Development — Grab a Pixel 8a Instead of Waiting for Pixel 9

Tuesday, May 14, 2024

Also: Sharing Your Google Maps Trip Progress, and More! How-To Geek Logo May 14, 2024 Did You Know In a bid to keep the ingredients secret, WD-40 was never patented. 🤖 The New GPT It's Tuesday!

Meta shuts down Workplace

Tuesday, May 14, 2024

Plus: Everything that happened at Google I/O and AWS CEO steps down View this email online in your browser By Christine Hall Tuesday, May 14, 2024 Hello, and welcome back to TechCrunch PM. The team

Flattening Lists of Lists, Python 3.13, Sets, and More

Tuesday, May 14, 2024

Flattening a List of Lists in Python #629 – MAY 14, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo Flattening a List of Lists in Python In this video course, you'll learn how to flatten a list

Daily Coding Problem: Problem #1441 [Easy]

Tuesday, May 14, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. UTF-8 is a character encoding that maps each symbol to one, two, three, or four

Noonification: 3 Quick Ways to Optimize RecyclerView

Tuesday, May 14, 2024

Top Tech Content sent at Noon! Get Algolia: AI Search that understands How are you, @newsletterest1? 🪐 What's happening in tech today, May 14, 2024? The HackerNoon Newsletter brings the HackerNoon

Using 97 fewer cores thanks to PGO

Tuesday, May 14, 2024

Plus an HNSW indexed vector store library, a new Go game hits the Steam store, and is 'ok' ok?. | #​507 — May 14, 2024 Unsub | Web Version Together with Stytch logo Go Weekly Reclaiming CPU for

Ranked | The Top 6 Economies by Share of Global GDP (1980-2024) 📈

Tuesday, May 14, 2024

Gain a unique perspective on the world's economic order from this graphic showing percentage share of global GDP over time. View Online | Subscribe Presented by: Data that drives the

Free online event this Thursday: Getting ahead with time series data

Tuesday, May 14, 2024

Free Online Event Do you know how your competitors use time series data to get ahead? Join us on Thursday, May 16 at 10am PT/1pm ET for a free, hour-long online fireside chat called “Unleash the Full

Here's the deal

Tuesday, May 14, 2024

We wanted you to be among the first to know about our plans to relaunch the Gigantic training courses that Product Collective now powers! Here's the deal: From May 20th - May 31st, anybody that