计算机教育中缺失的一课
这门课学什么
这门短课讲程序员天天用、学校却不教的工具。内容包括 Shell、命令行环境、编辑器、调试与性能分析、Git、打包发布,2026 年版加入 AI 辅助编程和代码质量。每讲有讲义和视频。
内容摘要
这门课讲程序员每天都用、但很少有课专门教的工具。它是 MIT 寒假(IAP)期间的短课,由 Anish Athalye、Jon Gjengset 和 Jose Javier Gonzalez Ortiz 开设。2026 版是继 2019 年和 2020 年之后的第 3 版。这一版没有单独的 AI 讲次,而是把 AI 工具的用法融入每一讲。
9 讲按开发流程排列。第 1–3 讲讲 shell、命令行环境、编辑器和开发环境。第 4–6 讲讲调试与性能分析、Git 版本控制、打包和发布代码。第 7–9 讲讲智能体编程(agentic coding)、写代码以外的协作习惯,以及代码质量。
每讲有完整的讲义和练习题,没有考试和评分。练习要求你在自己的电脑上动手,比如写 shell 脚本、配置编辑器、练习 Git 操作。课程主页还保留了往年讲过的专题,比如数据整理、安全与密码学、备份和自动化。
学完以后,你能在终端里高效工作,能用脚本把重复操作自动化,能用调试器和性能分析器定位问题,能用 Git 管理分支和解决冲突。你也能判断什么时候把任务交给 AI 编程智能体,以及怎样检查它的输出。
讲课节奏快,以现场演示为主。讲义写得完整,不看视频也能自学。社区已经把讲义翻译成 20 种语言,其中包括简体中文。
为什么值得学
它补上了计算机教育的真实缺口,在全球广泛传播。社区已把讲义译成多种语言,包括中文。
课程信息
- 学校
- 麻省理工(MIT)
- 讲师
- Anish Athalye、Jon Gjengset、Jose Javier Gonzalez Ortiz
- 学期
- IAP 2026
- 平台
- 课程官网
- 费用
- 免费
- 难度
- 入门
- 学时
- 9 讲
- 先修
- 无
- 材料
- 视频、讲义
- 许可证
- CC BY-NC-SA
课程大纲 · 共 9 节
大纲依据:IAP 2026 课程主页讲次列表(9 讲)(查看原始页面 ↗)
- 1课程概述与 shell 入门Course Overview + Introduction to the Shell
介绍课程动机,讲 shell 是什么、怎样在文件系统中导航,以及 bash 语言的基础。
- 2命令行环境Command-line Environment
讲命令行参数、输入输出流、环境变量、返回码和信号,以及 SSH 远程登录、终端复用器和 shell 定制。
- 3开发环境与工具Development Environment and Tools
讲 Vim 的模式化编辑和语言服务器配置,以及 AI 补全、行内对话和编程智能体。
- 4调试与性能分析Debugging and Profiling
讲日志、调试器、系统调用追踪和内存检查工具,再讲计时、CPU 和内存性能分析,以及基准测试。
- 5版本控制与 GitVersion Control and Git
先讲 Git 的快照和引用数据模型,再讲暂存区、分支合并、远程仓库和撤销操作。
- 6打包与发布代码Packaging and Shipping Code
讲依赖与环境管理、打包、版本发布、可复现性、虚拟机和容器,以及配置和服务编排。
- 7智能体编程Agentic Coding
讲 AI 模型和编程智能体的工作原理、隐私问题、适用场景,以及使用时要警惕的问题。
- 8代码之外Beyond the Code
讲写给他人看的文档、团队协作、给开源项目贡献和代码审查,以及使用 AI 时的礼仪。
- 9代码质量Code Quality
讲格式化、静态检查、测试与覆盖率、pre-commit 钩子、持续集成和持续部署,以及正则表达式。