I independently developed an antique auction platform c […]
Category: Technology
AI Coding Agents Are Reshaping Software Development: It's Not Just 'Writing Faster'
Two years ago, AI coding tools were still stuck at "hel […]
WebAssembly on the Backend: Year Three, the Turning Point Approaches
This week, Kimi and Fable 5 grabbed all the headlines. […]
The Silent Revolution in Database Engines: After 40 Years of B+Tree Dominance, New Players Arrive
Have you ever wondered: why does MySQL use B+Tree, Rock […]
In the Days Without Fable 5: What Is the Developer Community Using Instead?
Fable 5 has been banned for nearly two weeks now. The d […]
GraphRAG Is Changing Retrieval-Augmented Generation: When Knowledge Graphs Meet LLMs
Traditional RAG has a fatal flaw: it can answer "point" […]
GraphRAG Is Transforming Retrieval-Augmented Generation: When Knowledge Graphs Meet LLMs
Traditional RAG has a fatal flaw: it can answer "point" […]
Backend Performance Optimization: A Practical Guide to Database Connection Pool Tuning
The connection pool is one of the most overlooked perfo […]
Rust for Java Programmers: A Deep Dive into Ownership
Rust's ownership is the concept that gives Java program […]
Complete Analysis of New Features in Apache Doris 3.0 (2026)
Apache Doris 3.0 officially went GA in April 2026. As t […]
Kubernetes Network Model: The Complete Packet Journey from Pod to Service
Kubernetes' network model is a frequent interview quest […]
Spring Boot 3 + Virtual Threads: Performance Testing and Pitfalls
Java 21's Virtual Threads are the culmination of Projec […]
Why Is ClickHouse 100x Faster Than MySQL? The Principle of Columnar Storage
A common interview question: "Why do OLAP databases use […]
Why Is Redis Fast? Analysis of Single-Threading, IO Multiplexing, and Data Structures
Redis is single-threaded yet can handle 100,000 QPS. Th […]
AGENTS.md: A Project Manual for AI
If you use AI-assisted programming (Copilot, Cursor, Cl […]
MCP Protocol: A Standardized Solution for LLMs to Safely Call External Tools
MCP (Model Context Protocol) is a standard protocol ope […]
MCP Protocol: Standardizing How LLMs Call External Tools
MCP (Model Context Protocol) is an open standard releas […]
Spring Boot + Redis Cache in Practice: From Annotations to Distributed Locks
Caching is the first line of defense for backend perfor […]
Rust Officially Enters the Linux Kernel Mainline — Is the Twilight of C Here?
Linux 6.15 has officially merged the Rust-implemented E […]
MySQL Indexing Principles: Why B+Tree Rules the Database World
A classic interview question: "Why does MySQL use B+Tre […]
gRPC vs REST: When Should You Use gRPC?
Should microservices communicate via REST or gRPC? Core […]
AI Coding Assistant Comparison: How to Choose Between Cursor, Copilot, and Claude Code
There are more and more AI coding assistants on the mar […]
Alibaba's Real-Time Data Warehouse Practice with Doris: 50 Billion Records Daily
I recently came across the real-time data warehouse pra […]
Java 25 Released: Virtual Threads Stable, String Templates Officially GA
Java 25 has been officially released, and several featu […]
Cursor's Valuation Surpasses $10 Billion: AI Coding Tool Redefines the 'IDE'
Cursor's valuation has hit $10 billion. Is a "code edit […]
Kubernetes ConfigMap and Secret: The Right Way to Manage Configuration
ConfigMap and Secret are the two primary tools for mana […]
Getting Started with Real-Time Computing: How to Choose Between Flink and Spark Structured Streaming?
I've been looking into real-time computing resources la […]
System Design Interview: Designing an API Rate Limiter
API rate limiting is a fundamental capability every bac […]
Ollama and Local LLMs: Why More People Are Running AI on Their Laptops
Ollama has surpassed 150,000 stars on GitHub. More and […]
Why Is ConcurrentHashMap Faster Than Hashtable? The Optimization Path from Lock Striping to CAS
Hashtable and ConcurrentHashMap are both thread-safe Ma […]
Design Patterns Interview: 5 Ways to Write Singleton and Factory Pattern in Spring
The role of design patterns in interviews: proving you' […]
Kafka Is No Longer the Only Choice: 2025 Message Queue Selection Guide
Kafka has dominated the message queue space for over a […]
Deep Dive into HashMap Source Code: Red-Black Tree Conversion and Resizing in JDK 8
HashMap is the most frequently asked data structure in […]
Service Mesh 101: What Problem Does Istio Actually Solve?
Service Mesh is the next stage of microservices archite […]
Kafka vs RabbitMQ vs RocketMQ: A Complete Guide to Message Queue Selection for Interviews
Message queue selection is a common interview question. […]
System Design Interview: Designing a Social Media News Feed
The News Feed / Timeline is the core of social media an […]
CAP Theorem Interview Deep Dive: You Can Only Pick Two, But Reality Is More Complex
The CAP theorem is a must-know topic in distributed sys […]
MySQL Sharding Study Notes: From Single Database to Sharding
I've been studying database sharding solutions recently […]
The Philosophy of API Design: Reflections from REST to gRPC to GraphQL
REST, gRPC, and GraphQL each have their strengths, but […]
Spring MVC Request Handling Flow: From DispatcherServlet to View Rendering
The request handling flow of Spring MVC is a classic in […]
A Beginner's Guide to Post-Quantum Cryptography: Will Quantum Computers Break HTTPS?
Quantum computers are still far from practical use, but […]
Spring Bean Lifecycle: What Happens from Instantiation to Destruction?
The Spring Bean lifecycle is a classic interview questi […]
Eight Key Thread Pool Interview Questions: Core Parameters, Rejection Policies, and Tuning Strategies
Thread pools are a high-frequency topic in Java concurr […]
5 Scenarios Where @Transactional Fails: Why Your Transaction Didn't Roll Back?
@Transactional looks great, but there are several situa […]
System Design Interview: Designing an Instant Messaging System (WhatsApp/WeChat)
Designing an instant messaging system like WhatsApp or […]
Neovim Configuration Guide: Is the Terminal Editor Still Worth It in 2025?
After using Neovim for a year, here are my configuratio […]
Redis Cluster Getting Started: Pitfalls from Single-Node to Cluster
I've been learning Redis Cluster recently and set up a […]
MySQL Index Interview Essentials: Why Is the Leftmost Prefix Match the Most Asked Question?
MySQL index interview questions always revolve around t […]
Operating System Interview Essentials: What's the Real Difference Between Processes and Threads?
Processes and threads are the foundation of operating s […]
synchronized vs ReentrantLock: From Interview Questions to Source Code Implementation
What's the difference between synchronized and Reentran […]
Deep Dive into Kubernetes HPA Autoscaling: From CPU to Custom Metrics
HPA (Horizontal Pod Autoscaler) is the core component f […]
JVM Garbage Collection Interview Deep Dive: From CMS to G1 to ZGC
JVM garbage collection is a frequent topic in Java inte […]
SQL Optimization Interview Guide: Practical Insights from EXPLAIN to Index Design
SQL optimization is a frequent topic in backend intervi […]
Getting Started with CDN Edge Computing: What Can Cloudflare Workers and Vercel Edge Do?
Edge computing is the evolution of CDN—not only caching […]
Reading Source Code Is the Best Shortcut to Becoming a Better Programmer
Many people think reading source code is too hard, but […]
Git Workflow Best Practices: From Solo Projects to Team Collaboration
I've been using Git for a long time, but good habits ar […]
Spring Boot Auto-Configuration: What Does @SpringBootApplication Really Do?
Spring Boot's auto-configuration is a frequent intervie […]
System Design Interview Guide: Designing a Short URL Service (TinyURL)
Designing a short URL service is a classic system desig […]
HTTP and HTTPS Interview Guide: Status Codes, Caching, TLS Handshake
The HTTP protocol is a fundamental topic in backend int […]
Doris vs ClickHouse: A Comparative Study of OLAP Databases
I've been studying OLAP databases recently and put toge […]
My Terminal Toolchain: 2025 Development Efficiency Suite
Let me share the terminal tools I use frequently in my […]
MySQL Transaction Isolation Levels Explained for Interviews: How to Distinguish Dirty Reads, Phantom Reads, and Non-Repeatable Reads?
Transaction isolation levels are almost a guaranteed qu […]
PostgreSQL or MySQL? Rethinking Database Selection in 2025
The debate between MySQL and PostgreSQL has never stopp […]
The Three Generations of Distributed Locks: From Redis to Etcd to Lock-Free Design
Distributed locks may seem simple, but they are full of […]
TCP Three-Way Handshake and Four-Way Wave: What Do Interviewers Really Want to Hear?
TCP connection establishment and teardown is a core top […]
Redis High-Frequency Interview Questions: What's the Difference Between Cache Penetration, Avalanche, and Breakdown?
These three terms are almost guaranteed to come up in i […]
Getting Started with Apache Pulsar: What Makes the Next-Generation Message Queue Different?
Apache Pulsar is known as the "next-generation message […]
JVM Memory Model Interview Guide: Heap, Stack, Method Area, and Metaspace
The JVM memory model is the foundation for understandin […]
How I Started Learning Rust as a Java Developer
I recently started learning Rust, and as someone who ha […]
How to Answer Spring IoC and AOP Interview Questions? It's Not Just About Memorizing Concepts
Spring's IoC and AOP are must-know topics in interviews […]
Docker Image Layer Caching: Why COPY Order Affects Build Speed
Docker's image layer caching is a very important yet of […]
Java Collections Framework Interview Guide: ArrayList, LinkedList, HashMap Under the Hood
The Java Collections Framework is a must-know topic in […]
HTTP/3 and QUIC: Why Replace TCP with UDP?
HTTP/3 is gradually gaining adoption, but many people d […]