Hey there, I'm Cat. Here I share quality Python, AI, and general tech content weekly, mostly in English. I also have a Telegram channel as a supplement, where I publish even more diverse content. Feel free to follow!
This issue features 12 articles, 12 open source projects, and 1 audio/video.
The author believes Python has the best preprocessor of any language. The article introduces how to implement custom codecs to extend Python functionality, such as supporting increment/decrement operators, supporting curly braces, and supporting C/C++ code execution.
2、Saving Scrapy Crawl Stats to PostgreSQL with a Custom Extension and SQLAlchemy
Scrapy crawler statistics (like request count, response count, runtime, etc.) can be used to monitor performance. The article introduces how to develop a Scrapy extension that writes logs to a database through SQLAlchemy.
3、It's 2024, Gevent or asyncio Part 1?
Choose Gevent or asyncio? The article tests random database read/write operations under mainstream web frameworks (like Django, FastAPI, Flask, Starlette) and finds that in ORM + MySQL Driver scenarios, Gevent's ecosystem is better than asyncio's ecosystem.
4、Deep Dive into Python Code Obfuscation: Principles and Practice
Code obfuscation is a method to protect/hide source code. The article provides an in-depth introduction to several basic and advanced code obfuscation techniques in Python, including variable/function renaming, string encryption, using metaprogramming, code injection, etc.
5、PEP 752 – Package repository namespaces
This PEP proposes a mechanism that allows organizations to reserve package name prefixes for future uploads, aimed at solving dependency confusion attacks and reducing the occurrence of package name typosquatting.
Introduces some history of the GIL, how it affects Python's C API design and multithreading performance, current technical improvements being implemented, and discusses how to make PEP-684 and PEP-703 work together.
7、How to build a query language in Python
A query language is used to retrieve information from databases or information systems. This tutorial implements a simple lyrics query language. It covers the advantages of query languages, components, syntax design, parsing and execution.
8、Adventures building a spreadsheet engine in Python
The author shares their experience developing a spreadsheet engine, treating the spreadsheet as a graph where cells are nodes, using topological sorting to calculate cell dependencies and evaluation order, implementing formula calculation functionality.
9、Web Automation With n8n, Telegram, Online Forms, and a Bit of Python
n8n is a workflow automation tool that can connect various applications, services, and APIs. The author introduces how they use n8n to orchestrate Python scrapers, Telegram API, and email to achieve automated task processing.
10、Rye and uv: August is Harvest Season for Python Packaging
It's been half a year since the Rye project was handed over to Astral, and the integration between Rye and uv is increasing. The author believes uv will soon become the preferred packaging tool. The article also reviews the development of Python's packaging ecosystem - will the many tools available today soon produce a winner?
11、How to Build Chatbots With LangChain
LangChain provides tools for seamless model integration, context management, and prompt engineering, simplifying the development of conversational chatbots. The article introduces how it works and how to gradually develop a contextual chatbot.
12、Your second GPU algorithm: Quicksort
From Red Hat's official blog GPU programming series, utilizing GPU's parallel processing characteristics to implement a GPU-accelerated quicksort algorithm. The article explains the detailed computational process.
1、dir-assistant: Chat with your current directory's files using a local or API LLM
Chat with all files in your current directory using local or API LLMs, using context-guided retrieval-augmented generation technology.
2、lark-ticket: Enhanced features for Lark tickets
Lark Ticket is a feature in Lark for creating and managing tickets. This project is an extension that adds features like approval form submission checks, API calls when ending, and approval field to API field conversion. (Shared by @请叫我大萌萌)
3、py5book: jupyter book repo for py5
Processing is a Java-based open-source programming language and IDE. py5 is a tool that integrates it with the Python ecosystem, allowing integration with libraries like Jupyter, numpy, matplotlib, and Pillow.
4、audiosample: an optimized numpy-like audio manipulation library
Efficient audio processing tool with low memory usage, using numpy-like syntax, supporting complex audio operations, suitable for data loading and ETL.
Comprehensive collection of RAG techniques, including state-of-the-art RAG enhancements, various technical documentation, practical guides, and regularly updated latest developments. (star 2.4K)
6、labelU: Data annotation toolbox supports image, audio and video data
A comprehensive data annotation platform designed specifically for handling multimodal data, providing a series of advanced annotation tools and efficient workflows, capable of exporting results in multiple data formats.
7、magic-wormhole: get things from one computer to another, safely
Transfer files and directories of any size between computers. The sender generates a one-time passphrase, and the receiver enters it to complete authentication. (star 19.8K) (Bonus: Project presentation from PyCon 2016)
8、sudoku-solver: A visual sudoku solver
A sudoku solving tool implemented using computer vision and machine learning that automatically fills in all answer digits in sudoku blank spaces.
9、OpenBB: Investment Research for Everyone, Everywhere
The first free and fully open-source financial platform, providing access to stocks, options, cryptocurrencies, forex, macroeconomics, fixed income, and more. (star 29.2K)
10、OpenHands: Code Less, Make More
AI collaborates with humans to code, fix bugs, and ship features. Write less code, create more value. (star 30.6K)
11、authentik: The authentication glue you need
Open-source identity authentication and authorization service that provides a comprehensive solution, supporting multi-factor authentication, single sign-on, role-based or attribute-based access control, plugin system, self-hosting, auditing and logging. (star 11.9K)
12、13ft: My own custom 12ft.io replacement
12ft.io is a magical website that removes pop-ups, banners, ads, and paywalls from web pages, letting you browse cleanly. This project is its open-source alternative that can be self-hosted. (star 2.3K)
1、Episode #472 State of Flask and Pallets in 2024
Flask is a mainstream web development framework - how is it developing today? The Pallets organization maintains Flask as well as libraries like Jinja, Click, and Werkzeug - what's the current situation? The podcast guest is David Lord, Flask's lead maintainer, discussing project maintenance and improvements, community activities, and the integration of Flask with Quart.

