Featured image of post Why git stash every branch switch? What is Git Worktree? Differences between Git Worktree and Git Branch? How to build a high-efficiency multi-threaded workflow with Git Worktree?

Why git stash every branch switch? What is Git Worktree? Differences between Git Worktree and Git Branch? How to build a high-efficiency multi-threaded workflow with Git Worktree?

Developing a new feature but hit by an urgent bug? Stop hiding code with git stash! Introducing Git Worktree core concepts, differences from Git Branch, practical directory setup, and AI Agent best practices.

Featured image of post Why does a deleted .zshrc environment variable still take effect? Why doesn't source ~/.zshrc clear old variables? Why does reopening terminal windows keep environment variables? How to completely clear environment variables in IDE built-in terminals and Terminal apps?

Why does a deleted .zshrc environment variable still take effect? Why doesn't source ~/.zshrc clear old variables? Why does reopening terminal windows keep environment variables? How to completely clear environment variables in IDE built-in terminals and Terminal apps?

When environment variables deleted from .zshrc remain active, it is often due to residual memory or parent process inheritance. Learn how to clear persistent environment variables using unset, restarting IDE/terminal apps, and checking launchctl.

Featured image of post What's the Difference Between Manifest, Report, and Finding? What Do Data Hierarchy Terms Mean in Software Architecture? Why Structure API Design This Way? How Do Metadata, Artifact, and Payload Differ!

What's the Difference Between Manifest, Report, and Finding? What Do Data Hierarchy Terms Mean in Software Architecture? Why Structure API Design This Way? How Do Metadata, Artifact, and Payload Differ!

Understand the hierarchical relationships between Manifest, Report, Finding, and Evidence in software architecture and API design. Master data hierarchy benefits via a health check analogy and explore real-world cases of Metadata, Artifact, and Payload.

Featured image of post What Is JSONL Format? How Does JSONL Differ from JSON and CSV? Why AI Fine-Tuning Requires JSONL!

What Is JSONL Format? How Does JSONL Differ from JSON and CSV? Why AI Fine-Tuning Requires JSONL!

JSONL (JSON Lines) is a data format with one JSON object per line. Learn the core differences between JSONL, JSON, and CSV, explore its lightning-fast advantages in AI fine-tuning and streaming big data, and master 5 strict formatting rules and defensive parsing techniques.

Featured image of post What is the Survival Guide from Vibe Coding to 'AI Agent Engineering'? The Ultimate Value of 'AI Agent Engineering' and 'Understanding' that Cannot Be Outsourced! What We Should Really Invest in is Our 'Understanding of Underlying Principles' and 'Product Taste'.

What is the Survival Guide from Vibe Coding to 'AI Agent Engineering'? The Ultimate Value of 'AI Agent Engineering' and 'Understanding' that Cannot Be Outsourced! What We Should Really Invest in is Our 'Understanding of Underlying Principles' and 'Product Taste'.

AI grandmaster Andrej Karpathy reveals software development entering the Software 3.0 era. In the shift from Vibe Coding to Agentic Engineering, human engineers reflect on the irreplaceable value of understanding and taste in the era of outsourcing.

Featured image of post Don't Be Fooled by SQLite's Casualness! What Are the Dynamic Type Pitfalls? Why Is ALTER TABLE Half-Baked? How to Build a Defensive Programming Architecture in Node.js for Painless Schema Upgrades?

Don't Be Fooled by SQLite's Casualness! What Are the Dynamic Type Pitfalls? Why Is ALTER TABLE Half-Baked? How to Build a Defensive Programming Architecture in Node.js for Painless Schema Upgrades?

SQLite adopts a dynamic, weak type system; shoving a string into an INTEGER column surprisingly won't throw an error. Understand SQLite's Type Affinity pitfalls, the impact of lacking native Boolean and Date types, ALTER TABLE limitations, the 'four-step recreate & move' safe upgrade strategy, and how to build defensive programming architectures with tools like TypeScript, Zod, and Prisma.

Featured image of post Stop Using PostgreSQL for Everything! What Are SQLite's Embedded Architecture and Zero-Config Advantages? Where Are SQLite's Limits? When Should You Choose SQLite, and When PostgreSQL?

Stop Using PostgreSQL for Everything! What Are SQLite's Embedded Architecture and Zero-Config Advantages? Where Are SQLite's Limits? When Should You Choose SQLite, and When PostgreSQL?

SQLite is the world's most widely deployed embedded database engine, featuring a single file, zero configuration, and no server installation. Understand the core architectural differences between SQLite and PostgreSQL, their respective use cases, and SQLite's limits (concurrent write locking, no cross-server capability, lack of permission management).

Featured image of post How to Choose Open Source Packages for Business Software? A Guide to License Risk Mitigation and Architecture from MIT, BSD to Apache 2.0

How to Choose Open Source Packages for Business Software? A Guide to License Risk Mitigation and Architecture from MIT, BSD to Apache 2.0

How to choose open-source licenses when developing business software? This article provides an in-depth analysis of the differences between MIT, BSD, Apache 2.0, and GPL, with a special focus on the importance of patent protection. It also offers architect-level defense strategies (such as the Adapter Pattern) to help you avoid open-source pitfalls.

Featured image of post Storing Currency in Databases: Should You Use DECIMAL or BIGINT?

Storing Currency in Databases: Should You Use DECIMAL or BIGINT?

When developing a payment system, what field type should you use for currency? This article explains why you should absolutely never use FLOAT, and how to choose between DECIMAL and BIGINT for a zero-error, high-performance currency storage system.

Featured image of post What's the Difference Between MIT, ISC, Apache, and GPL? A Guide to Avoiding License Pitfalls in Vibe Coding

What's the Difference Between MIT, ISC, Apache, and GPL? A Guide to Avoiding License Pitfalls in Vibe Coding

Always hesitating about which open-source license to choose? This straightforward guide explains the differences between MIT, ISC, Apache 2.0, and the infectious GPL, LGPL, and AGPL, as well as how to avoid license conflicts.