--- title: "codecrafters-io/build-your-own-x: Master programming by recreating your favorite technologies from scratch" type: source tags: [build-your-own-x, byox, codecrafters, github, learn-by-building] sources: [] last_updated: 2026-04-23 --- ## Source File - [[raw/AI/codecrafters-iobuild-your-own-x Master programming by recreating your favorite technologies from scratch.md]] ## Summary(用中文描述) - 核心主题:通过"从零重建"(Build Your Own X)方法学习编程——精选高质量、分步骤指南,手把手教开发者从零实现自己最喜欢的主流技术。 - 问题域:如何系统化地理解复杂系统内部原理,而非停留在表面使用层面;如何找到高质量、可执行的"手把手"教程资源。 - 方法/机制:GitHub 社区协作维护精选教程列表,涵盖 26 个技术领域(C++/Python/Java/JavaScript/Go/Rust 等多语言),每条教程附带源码链接和难度标注。核心理念引用 Richard Feynman:"What I cannot create, I do not understand"。 - 结论/价值:将"被动阅读文档"升级为"主动重建系统",是深度掌握计算机科学核心技术的最有效路径;资源全部免费开源,社区持续贡献新教程。 ## Key Claims(用中文描述) - build-your-own-x 项目通过聚合 26+ 技术领域的分步骤指南,使开发者能够从零重建主流技术,从而实现深度技术理解。 - 分领域教程覆盖 3D Renderer、Augmented Reality、BitTorrent Client、Blockchain/Cryptocurrency、Bot、Command-Line Tool、Database、Docker、Emulator/Virtual Machine、Front-end Framework、Game、Git、Network Stack、Neural Network、Operating System、Physics Engine、Programming Language、Regex Engine、Search Engine、Shell、Template Engine、Text Editor、Visual Recognition System、Voxel Engine、Web Browser、Web Server 等。 - 每条教程配套源码和难度指引,支持 C++/Python/Java/JavaScript/Go/Rust/Haskell/TypeScript 等 15+ 编程语言。 ## Key Quotes > *"What I cannot create, I do not understand — Richard Feynman."* — 项目核心理念,强调动手重建是真正理解技术的不二法门 ## Key Concepts - [[Learn-By-Building]]:通过重建主流技术来学习编程的方法论,区别于被动阅读文档或观看视频,是深度技术理解的最高效路径。 - [[From-Scratch Methodology]]:从零实现系统的学习方法,强调不使用任何外部库或框架,在最小化依赖下理解核心原理。 - [[BYOX-Build-Your-Own-X]]:build-your-own-x 运动,即"自己动手重建 X"的学习社区和方法论。 - [[Codecrafters]]:提供实战编程挑战的在线教育平台,以 build-your-own-x 理念为核心,提供分步骤练习。 ## Key Entities - [[CodeCrafters]]:build-your-own-x 项目的维护方,总部位于旧金山的教育科技创业公司,致力于提供实战编程教育。 - [[DanielStefanovic]]:build-your-own-x 项目的创始人(最初由其发起),GitHub ID: danistefanovic。 - [[RichardFeynman]]:诺贝尔物理学奖得主,其名言"What I cannot create, I do not understand"成为 BYOX 运动的理论基石。 - [[NAND-to-Tetris]]:从与非门到完整计算机的课程,涵盖从硬件到软件栈的完整重建,被 build-your-own-x 收录。 ## Connections - [[Learn-By-Building]] ← inspires ← [[Vibe-Coding]]:Vibe Coding 强调让 AI 结对编程,而 BYOX 强调从零重建,两者互补——BYOX 理解原理,Vibe Coding 高效实现。 - [[CodeCrafters]] ← maintains ← [[Build-Your-Own-X]]:CodeCrafters 不仅维护 GitHub 列表,还提供配套的在线编程挑战平台。 - [[Codecrafters-iobuild-your-own-x]] ← references ← [[NAND-to-Tetris]]:NAND to Tetris 被列为操作系统和编程语言教程的推荐前置资源。 ## Contradictions - 与传统课程式学习冲突: - 冲突点:传统 CS 教育强调理论(算法/数据结构/操作系统理论),BYOX 强调实践(从零重建系统)。 - 当前观点:对于有基础的开发者,BYOX 提供更深刻的技术直觉;理论为 BYOX 提供方向,BYOX 为理论提供落地。 - 对方观点:没有理论基础直接做 BYOX 容易只见树木不见森林,需要先修计算机体系结构/数据结构等基础课程。