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.
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.
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.
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.
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.
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.
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).
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.
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.
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.