Posts by Tag

Python

Free-Threaded Python on a Real Workload

8 minute read

You swap python for python3.14t, run the four-thread benchmark that has been sitting in the repo since the no-GIL argument started, and watch it finish in a ...

Demystifying ContextVar in Python

13 minute read

This blog post will demystify ContextVar, a simple way to share values between functions and coroutines in Python. We’ll start with an introduction to Contex...

Understanding the Event Loop in Python

10 minute read

The event loop is a fundamental concept in Python, particularly when dealing with asynchronous programming. It is the core of every asyncio application and p...

Back to top ↑

LLM

Prompt Engineering

17 minute read

Welcome to this blog where I’ll be your guide into the fascinating world of prompt engineering! This emerging field is changing the way we interact with AI s...

Back to top ↑

Developer Tools

Test Selection Breaks Before Your Tests Do

10 minute read

In March, a small internal service at Anthropic hit its memory ceiling “by mid-afternoon on most weekdays.” Not the test runners. Not the queue. The thing th...

Connecting Codex to Google Workspace via MCP

6 minute read

When you work with an AI coding agent like Codex, the real productivity gains come from letting it interact with the systems around your code — not just the ...

Back to top ↑

System Design

10 Cache Concepts Every Programmer Should Know

31 minute read

Caching is a powerful technique that can significantly improve the performance and scalability of applications. This blog post will guide you through the ess...

HTTP/2 vs WebSocket: A Comparative Analysis

13 minute read

This blog post aims to provide a comprehensive comparison between HTTP/2 and WebSocket, two fundamental protocols that power the modern web. We will start by...

Back to top ↑

Software Engineering

Diving into the Node.js Event Loop

39 minute read

In this comprehensive guide, we’ll embark on a journey into the Node.js event loop, a fundamental concept that underpins the asynchronous nature of Node.js. ...

Executor: Worker Pool cho Golang

2 minute read

Mục đích mình tạo ra thư viện này vì các thư viện hiện tại của golang chưa có ai đáp ứng đủ nhu cầu Worker Pool của mình như linh hoạt với cách định nghĩa jo...

Back to top ↑

AI Agents

Test Selection Breaks Before Your Tests Do

10 minute read

In March, a small internal service at Anthropic hit its memory ceiling “by mid-afternoon on most weekdays.” Not the test runners. Not the queue. The thing th...

Introducing My Interactive Web Chatbot

4 minute read

Today, I’m thrilled to introduce you to my new interactive web chatbot and share the fun journey behind its creation. First, a bit about me—your friendly tec...

Back to top ↑

PostgreSQL

Back to top ↑

Node.js

Diving into the Node.js Event Loop

39 minute read

In this comprehensive guide, we’ll embark on a journey into the Node.js event loop, a fundamental concept that underpins the asynchronous nature of Node.js. ...

Back to top ↑

AI

Back to top ↑

API Design

Load testing với Locust và Boomer

9 minute read

Một bước mà chúng ta thường xuyên bỏ qua và coi thường khi xây dựng một service mới đó là load test nó. Load test là một quá trình quan trọng trước khi đưa s...

So sánh grpc gateway với gRPC web

4 minute read

Bạn đang có một service sử dụng gRPC để đảm bảo vấn đề hiệu năng khi giao tiếp. Nhưng rồi một ngày, bạn muốn xây một admin web cho nó nhưng trình duyệt lại k...

Back to top ↑

Security

How to Securely Store Passwords in Databases

18 minute read

In today’s digital age, securing user passwords is more important than ever. This article will guide you through the essentials of password security, ensurin...

Back to top ↑

Testing

Test Selection Breaks Before Your Tests Do

10 minute read

In March, a small internal service at Anthropic hit its memory ceiling “by mid-afternoon on most weekdays.” Not the test runners. Not the queue. The thing th...

Back to top ↑

Distributed Systems

10 Types of Locks with Redis: Pros and Cons

27 minute read

In this blog post, we will explore the fascinating world of distributed locking mechanisms using Redis. We’ll start with a compelling discussion on why distr...

Back to top ↑

Observability

Navigating Pitfalls in Datadog Tracing

10 minute read

Ready to conquer the world of servers with Datadog? This guide is your treasure map. It’s going to help you dodge sneaky pitfalls like hostname detection mon...

Back to top ↑

Performance

Free-Threaded Python on a Real Workload

8 minute read

You swap python for python3.14t, run the four-thread benchmark that has been sitting in the repo since the no-GIL argument started, and watch it finish in a ...

Back to top ↑

Databases

Prepared Statement Deep Dive

2 minute read

Để tối ưu hiệu năng của hệ thống, có rất nhiều cách để thực hiện nhưng hiệu quả nhất vẫn là tối ưu các câu truy vấn database. Một trong số này đó là sử dụng ...

Back to top ↑

Temporal

Temporal vs Airflow: A Comparative Analysis

12 minute read

In this blog post, we will delve into a comparative analysis of two popular workflow orchestration platforms, Temporal and Airflow. By understanding their ba...

Back to top ↑

Database Migration

Back to top ↑

Serverless

Back to top ↑

Web Development

Back to top ↑

Autoscaling

Back to top ↑

WebRTC

Building a Conference Audio Call System

7 minute read

Imagine you’re chatting with friends over a group call. You hear everyone’s voices blending together smoothly, without your own voice echoing back at you. Pr...

Back to top ↑

Data Engineering

Temporal vs Airflow: A Comparative Analysis

12 minute read

In this blog post, we will delve into a comparative analysis of two popular workflow orchestration platforms, Temporal and Airflow. By understanding their ba...

Nhật ký làm quen với Streaming Data

5 minute read

Chào mọi người, không biết mọi người đã trải qua tính cảnh như mình chưa. Trước đây, mình là Software Engineer tại một công ty fintech và chuyên xây dựng hệ ...

Back to top ↑

Docker

Back to top ↑

Kubernetes

Back to top ↑

Pandas

Back to top ↑

Event-Driven Architecture

Nhật ký làm quen với Streaming Data

5 minute read

Chào mọi người, không biết mọi người đã trải qua tính cảnh như mình chưa. Trước đây, mình là Software Engineer tại một công ty fintech và chuyên xây dựng hệ ...

Back to top ↑

TypeScript

Back to top ↑

ClickHouse

Back to top ↑

Change Data Capture

Back to top ↑

NATS

Back to top ↑

distributed messaging

Back to top ↑

Java

Back to top ↑

Go

Executor: Worker Pool cho Golang

2 minute read

Mục đích mình tạo ra thư viện này vì các thư viện hiện tại của golang chưa có ai đáp ứng đủ nhu cầu Worker Pool của mình như linh hoạt với cách định nghĩa jo...

Back to top ↑

Kafka

Nhật ký làm quen với Streaming Data

5 minute read

Chào mọi người, không biết mọi người đã trải qua tính cảnh như mình chưa. Trước đây, mình là Software Engineer tại một công ty fintech và chuyên xây dựng hệ ...

Back to top ↑

Caching

10 Cache Concepts Every Programmer Should Know

31 minute read

Caching is a powerful technique that can significantly improve the performance and scalability of applications. This blog post will guide you through the ess...

Back to top ↑

JavaScript

Back to top ↑

Redis

10 Types of Locks with Redis: Pros and Cons

27 minute read

In this blog post, we will explore the fascinating world of distributed locking mechanisms using Redis. We’ll start with a compelling discussion on why distr...

Back to top ↑

Concurrency

Back to top ↑

Real-Time

Back to top ↑

MCP

Connecting Codex to Google Workspace via MCP

6 minute read

When you work with an AI coding agent like Codex, the real productivity gains come from letting it interact with the systems around your code — not just the ...

Back to top ↑

OLAP

Back to top ↑

Data Store

Back to top ↑

Infrastructure

Back to top ↑

Telecom

Back to top ↑