惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

T
Tailwind CSS Blog
C
CERT Recently Published Vulnerability Notes
P
Proofpoint News Feed
Vercel News
Vercel News
博客园 - 三生石上(FineUI控件)
IT之家
IT之家
Help Net Security
Help Net Security
月光博客
月光博客
N
News and Events Feed by Topic
Cloudbric
Cloudbric
博客园 - 司徒正美
L
LangChain Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tenable Blog
The Register - Security
The Register - Security
The Hacker News
The Hacker News
I
InfoQ
The Last Watchdog
The Last Watchdog
MyScale Blog
MyScale Blog
Schneier on Security
Schneier on Security
WordPress大学
WordPress大学
小众软件
小众软件
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
宝玉的分享
宝玉的分享
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
K
Kaspersky official blog
L
LINUX DO - 热门话题
N
News | PayPal Newsroom
F
Fortinet All Blogs
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
S
Security @ Cisco Blogs
Recorded Future
Recorded Future
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
Google Online Security Blog
Google Online Security Blog
S
Schneier on Security
C
Cisco Blogs
N
News and Events Feed by Topic
V2EX - 技术
V2EX - 技术
Latest news
Latest news
PCI Perspectives
PCI Perspectives
T
The Blog of Author Tim Ferriss
P
Palo Alto Networks Blog
T
Tor Project blog
Project Zero
Project Zero
云风的 BLOG
云风的 BLOG
Webroot Blog
Webroot Blog
Attack and Defense Labs
Attack and Defense Labs
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org

BlogFinder

日常漫步 Vol.24 之漫步前山河 - 雅余 周报 #1-聊聊本周的收获 - Edwin's Blog 我的OpenCode必装插件与Skill Write Something 掌中之物未必在掌握之中 · CRIVU PiliNara,一个更顺手的 PiliPlus 分支 「NekoEcho」:做一个必有回响的猫娘主题博客 2026-05 书影音总结 简化博客主题 - 安迪 你要加油呐 我第一次发布 npm 包 拾花小记#45:中考前的二三事 – 小改学习志 黛西花园5月游 #18 枇杷又熟了的五月月报 一些奇奇怪怪的需求?word仿方正书版的几个小操作 - Xiobb's Blog 0419 御温泉之旅 修复了一些bug,网站基本上趋于稳定了 - 新锐博客 又回到四十年前 如何定义成功 迷鹿屋2026已重新上线 科技冰火两重天+一周回顾 ${title} 热度退了,我反而用得更深了-咕咚同学 我到底该不该换个域名? 随身WIFI折腾记 - 安迪 博客撰写体验提升——hexo pro插件 为什么不用相机把屏幕上的接关密码拍下来? 国清寺与天台山 – Ouroboros ★★★★☆《挽救计划》——久违的经济上行感 - Davidの3号基地 删除右键“打开方式”里多余选项 第三周刊_No.53|一切都会被支付两次 安卓APP通话记录与录音上传踩坑记录 - 子舒的博客 天量下跌 inBox 笔记 2.3.8,把工具栏交给了你-咕咚同学 我把小龙虾搬到了微信-咕咚同学 安好 - 响石潭 Compound Engineering Plugin:让每个工程单元都比上一个更容易 MOSS-TTS Family:开源高质量语音与声音生成模型家族深度解析 Crawl4AI:专为 LLM 设计的开源 Web 爬虫与数据抓取工具 Anthropic Skills:用文件夹教 Claude 专业技能的开源框架 1年的去月球(下) - 梅之夏 欢迎回来。 简单讲讲 ASN.1 与 OID DTV - 直播聚合客户端 5.22-5.27 – 不兴江 还没去过鸭川 – 不兴江 张晶晶同学三刷林志颖 关于我 – 不兴江 爱与嫉妒 – 不兴江 港股被持续做空 备案码花了四百块-咕咚同学 一句话生成封面:我给公众号做了4种风格的AI封面生成技能 「官」方認證 再谈费曼学习法 2026-05-28T00:34:11+08:00 2026-05-28T00:28:45+08:00 离谱的英语学习指南:基于AI的英语进阶系统方法论 iii:零集成架构的后端统一运行时 Claude Code Harness:让 Claude Code 工作有迹可循的工程化框架 Heretic:全自动移除大语言模型审查机制的开源工具 MarkItDown:微软开源的万能文档转 Markdown 利器 Harness:让 Claude Code 秒变多智能体协作工厂 这段时间尽折腾AI Agent了,确实极大地提高了效率 近期动态:两个新站点正式上线啦 误判解除!zhouayuan.com 腾讯安全申诉成功 - 周阿源|玩具设计・插画日常・生活随笔 Ralph:让 AI 编码工具自主循环跑完所有 PRD 任务的量产神器 全都违法 – 个人工作记录 关于zhouayuan.com被误判 “含违规信息” 的说明与申诉记录 - 周阿源|玩具设计・插画日常・生活随笔 小米 MiMo v2.5 Pro 白嫖 最大的人间清醒,兜里有钱,但是不花。 夜晚靓歌(12):于文文现场solo - 王志勇的Blog 今日插画:风扬起的倔强 - 周阿源|玩具设计・插画日常・生活随笔 回门习俗 独立网卡 - 忘记了回忆 500亿入股人工智能企业 从命令行到桌面智能体-咕咚同学 第一性原理读书笔记 行者微评论223-加班の守株待兔-博客|政治与时事-风雨行者 ZOZO开源物理接触求解器:GPU加速的可扩展仿真引擎 OpenStock:开源股票市场交易平台技术深度解析 MoneyPrinterTurbo:基于AI的全自动短视频生成工具深度解析 Claude-Mem:为 Claude Code 构建的持久化记忆压缩系统 Twenty:可代码化定制的企业级开源 CRM 平台技术深度解析 2026-05-26T22:59:17+08:00 企业级开源大模型部署平台 GPUStack 实战教程 1年的去月球(上) - 梅之夏 Sevalla - 静态网站托管服务 不用翻墙、不用注册、不用月费,普通人也能用上 Claude Code 装修灯具要注意⚠️ 黄梅天先锋 - 游子微博 公安备案顺利办结,站点备案全部完成 - 周阿源|玩具设计・插画日常・生活随笔 第三次兑换天猫超市卡了宗宗酱-三维狐少儿编程 Don't think, feel. - Rolen's Blog 人这一辈子,到底图个什么 博客迁移 - Edwin's Blog 情感赛道写作模板 再现本轮行情的典型特征 裁员与平常心-咕咚同学 别让“偷懒”,成为隐私泄露的破绽 片刻 - Jdeal | Life is like a Design.
Build Your Own X:从零实现你最喜欢的技术——程序员进阶的终极资源清单
Cheman · 2026-05-29 · via BlogFinder

一、项目概述

codecrafters-io/build-your-own-x 是 GitHub 上 star 数最高的自学资源清单之一(170k+ stars),由 CodeCrafters 团队维护。项目主旨非常明确:

What I cannot create, I do not understand — Richard Feynman.

这份清单不做泛泛而谈,而是精选出一步步手把手教你从零实现某项技术的教程——不是「用 API」,而是「造轮子」。

覆盖的技术方向(30+ 个):

3D 渲染器、AI 模型、增强现实、BitTorrent 客户端、区块链/加密货币、Bot、命令行工具、数据库、Docker、模拟器/虚拟机、前端框架、游戏、Git、内存分配器、网络协议栈、神经网络、操作系统、物理引擎、处理器、编程语言、正则表达式引擎、搜索引擎、Shell、模板引擎、文本编辑器、视觉识别、Voxel 引擎、Web 浏览器、Web 服务器,以及大量未分类的综合项目。

二、技术原理与设计哲学

为什么「造轮子」有效?

这个项目背后的核心理念是:真正理解一个技术的最好方式,就是自己实现它

以「Build your own Database」方向为例,清单收录了:

每个方向都遵循同样的逻辑:先理解数据结构,再实现核心算法,最后组装成可用系统

项目选型与覆盖面分析

方向代表教程语言覆盖
编程语言Crafting Interpreters, mal - Make a LispC/Java/JS/Python/Rust/Haskell 等 15+ 种
操作系统OS From 0 to 1, Writing an OS in RustC/Rust/Assembly
数据库Let’s Build a Simple Database, Build Your Own RedisC/Go/Python
神经网络Neural Networks: Zero to Hero (Karpathy)Python
正则表达式引擎Regular Expression Matching Can Be Simple And FastC/Go/Python/JS
Web 服务器Let’s Build A Web Server (Ruslan Spivak 系列)Python/Node.js/C#
DockerBuild Your Own Container Using Less than 100 Lines of GoGo/Python/Shell

三、安装与快速开始

这不是一个需要「安装」的软件项目,而是一个资源索引。使用方式非常简单:

  1. 直接访问 GitHub 仓库github.com/codecrafters-io/build-your-own-x
  2. 找到你感兴趣的方向,点击对应语言的教程链接
  3. 跟着教程写代码——大多数教程都是「边读边写」风格,建议同步动手

如果你喜欢中文阅读体验,社区也有非官方的中文衍生项目,可以搜索 build-your-own-x-zh 等关键词。

推荐入门路径(由易到难):

编程语言(mal Lisp)→ Shell → 正则表达式引擎 → Git → 数据库 → 操作系统 → 神经网络

四、使用方法与实战建议

如何最大化利用这份清单?

1. 选一个你「用过但不懂」的技术

比如你每天都在用 Git,但不知道内部原理 → 选 Build your own Git 方向,跟着 ugitwyag 一步步实现,你会彻底理解 blob、tree、commit 对象。

2. 用「测试驱动」方式跟着写

Build your own Database 为例,先写一个失败的测试(比如「插入一行数据后能读出来」),再实现功能代码,和教程给出的参考实现对照。

3. 把实现结果发到博客或 GitHub

这是巩固理解的最佳方式。codecrafters.io 的创始人也鼓励大家把「从零实现」的过程写成博客——这本身就是这份清单存在的意义之一。

实战示例:用 500 行 Python 实现一个 Lisp 解释器

选自 lispy(Peter Norvig 的经典教程):

def parse(program):
    "Read a Scheme expression from a string."
    return read_from_tokens(tokenize(program))

def standard_env():
    "An environment with some Scheme standard procedures."
    import math, operator as op
    env = Env()
    env.update(vars(math))  # sin, cos, sqrt, pi, ...
    env.update({
        '+':op.add, '-':op.sub, '*':op.mul, '/':op.truediv,
        '>':op.gt, '<':op.lt, '>=':op.ge, '<=':op.le, '=':op.eq,
        'abs':abs, 'append':op.add, 'apply':lambda proc, args: proc(*args),
    })
    return env

50 行核心代码就能跑一个可用的 Scheme 解释器——这就是「造轮子」的魔力。

五、常见问题与解决方案

Q:教程太多,不知道选哪个方向入门? → 建议从 Build your own Programming Language(mal Lisp)或 Build your own Shell 开始,这两个方向门槛最低、反馈最快。

Q:跟着教程写完了,但感觉还是不理解? → 正常。建议再「盲写」一遍,不参考教程,只参考自己的第一篇代码。如果写不出来,说明某些环节还没真正理解。

Q:有些教程链接打不开或失效了? → 可以在仓库的 Issues 页面提交 PR 或报告失效链接,维护者响应很及时。

Q:有没有更结构化的学习路径,而不是零散的教程? → 推荐结合 CodeCrafters 的付费课程(有免费试用),它把「Build your own X」做成了交互式、测试驱动的挑战。

Q:我只用 Python/JavaScript,能看懂其他语言的教程吗? → 大部分教程的核心逻辑是语言无关的。C 语言的数据库教程,用 Python 重新实现一遍,效果反而更好(因为你需要自己思考翻译过程)。

六、总结

build-your-own-x 不只是一份链接清单,它代表了一种工程师成长的核心方法论理解 = 实现

这份清单最打动人的地方在于:它把「高深莫测」的技术(操作系统、数据库、神经网络)拆解成了「普通人跟着写就能做出来」的教程。无论你是想夯实底层基础,还是想在面试中脱颖而出,或者只是纯粹享受「我搞清楚了」的快感——这里都有适合你的入口。

项目地址:https://github.com/codecrafters-io/build-your-own-x 维护者:CodeCrafters, Inc. | 开源协议:CC0(公有领域)