Tech Articles

cover of post: Mastering Python Async IO with FastAPI

Mastering Python Async IO with FastAPI

Dec 27, 2024

Asynchronous I/O is implemented at the bottom layer using "coroutines" and "event loops". "Coroutines" ensure that when the thread encounters marked I/O operations during execution, it doesn't have to wait for the I/O to complete but can pause and let the thread execute other tasks without blocking. "Event loops" use the I/O multiplexing technology, constantly cycling to monitor I/O events. When a certain I/O event is completed, the corresponding callback is triggered, allowing the coroutine to continue execution.

By Emily Parker#python
cover of post: The Secret Behind FastAPI’s Speed

The Secret Behind FastAPI’s Speed

Dec 26, 2024

What’s the secret sauce behind FastAPI’s speed? Why does it leave others eating its digital dust?

By Ethan Miller#Engineering
cover of post: Is Flask Dead? Is FastAPI the Future?

Is Flask Dead? Is FastAPI the Future?

Dec 25, 2024

The article mainly discusses the current situation and development of Flask and FastAPI in the Python framework field. By comparing the adoption of new projects, the number of GitHub stars, and the proportion in official surveys, it shows that FastAPI's popularity has risen and exceeded that of Flask. Looking back at the development of web frameworks, although Flask once had advantages, it is limited by issues like plugin maintenance. FastAPI stands out with its asynchronous design, Pydantic data validation, and ASGI support. It also explains the decline of Flask's popularity from aspects such as community activity and discussion frequency. Finally, it introduces the advantages of the Leapcell platform suitable for deploying both.

By Daniel Hayes#python
cover of post: WTH Is Synthetic Testing?

WTH Is Synthetic Testing?

Dec 24, 2024

A brief and friendly introduction to synthetic testing.

By Olivia Novak#Testing
cover of post: Deep Dive into Microsoft MarkItDown

Deep Dive into Microsoft MarkItDown

Dec 23, 2024

This is a deep dive into MarkItDown, exploring its features, architecture, limitations, and integration methods. It highlights how MarkItDown converts diverse file types into Markdown, and its extensible modular design. Practical examples, and API hosting guides are also covered.

By Min-jun Kim#Python
cover of post: Why Playwright is Dominating Browser Automation: A Deep Dive

Why Playwright is Dominating Browser Automation: A Deep Dive

Dec 21, 2024

Playwright is a modern browser automation framework that supports JavaScript, Python, C#, and Java, offering seamless interaction with major browsers such as Chrome, Edge, Firefox, and Safari. Unlike Selenium, which requires separate drivers for each browser, Playwright simplifies the process by eliminating the need for browser drivers. Its features include headless mode, concurrency support, iframe handling, and multi-tab operation, making it a versatile tool for automation tasks. Playwright also excels in debugging with built-in capabilities, automatic waiting, and integrated screenshot/recording tools. It is known for its ease of use, minimal configuration, and simple DOM manipulation. While its community is still maturing compared to Selenium’s, Playwright has quickly become a popular choice for web automation due to its efficiency and developer-friendly design. With its emphasis on scalability, performance, and compatibility across different environments, Playwright is an excellent tool for both beginners and advanced users looking to automate browser tasks effectively.

By Wenhao Wang#playwright
cover of post: Will Your Marketing Email End Up in Spam? We Built a Tool to Find Out

Will Your Marketing Email End Up in Spam? We Built a Tool to Find Out

Dec 18, 2024

This article discusses how to use Apache SpamAssassin, an open-source spam detection tool, to evaluate email spam scores and deploy it as an API for seamless integration into workflows.

By Grace Collins#Marketing
cover of post: WSGI vs ASGI: The Crucial Decision Shaping Your Web App’s Future in 2025

WSGI vs ASGI: The Crucial Decision Shaping Your Web App’s Future in 2025

Dec 14, 2024

Asynchronous Server Gateway Interface (ASGI) and Web Server Gateway Interface (WSGI) are two Python protocols designed to bridge web servers and applications. WSGI is synchronous and ideal for traditional HTTP-based apps like blogs or corporate websites, with long-standing support in frameworks like Django and Flask. It is simple, stable, and widely used but struggles with high-concurrency or real-time communication.ASGI, introduced with Python's async/await features, is asynchronous, non-blocking, and supports modern protocols like WebSocket and HTTP/2. It is built for high-performance, real-time applications, such as chat apps and live data services, and is used in frameworks like FastAPI.

By Ethan Miller#python