48 lines
4.2 KiB
Markdown
48 lines
4.2 KiB
Markdown
---
|
||
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 容易只见树木不见森林,需要先修计算机体系结构/数据结构等基础课程。
|