人人都能学编程
English 开始学习

编程教程

17 门课、119 篇免费教程,从第一行 Python 一直讲到系统设计。每一篇都先用大白话讲直觉,再给准确的定义(附英文原句),一行一行带你读能运行的例子,点出新手最常犯的错,最后用小测验检查自己。

想动手?每一篇都有对应的互动课:例子可以直接改、直接运行,练习题在浏览器里提交马上判题。

入门

零基础从这里开始。

核心技能

每个工程师都要用到。
SQL 与数据库6 课 · 约 8 小时

向真正的数据库提问、连接多张表、安全地修改数据,再设计出不会出错的表。

  1. SELECT 与 WHERE
  2. 排序与截取
  3. 分组与统计
  4. 连接表
  5. 修改数据与事务
  6. 键、约束与索引
Linux 与命令行6 课 · 约 8 小时

像工程师一样操作服务器:文件、搜索、管道、权限、服务和脚本,全在安全的练习终端里。

  1. 文件与文件夹
  2. 读与搜
  3. 管道与重定向
  4. 权限与 sudo
  5. 进程与服务
  6. shell 脚本
Git 与 GitHub6 课 · 约 6 小时

提交、分支、合并、解冲突、推送与拉取,按团队的方式来,全在安全的练习仓库里。

  1. 提交
  2. 查看与撤销修改
  3. 分支与合并
  4. 合并冲突
  5. 远程仓库:推送与拉取
  6. .gitignore 与 pull request
数据结构与算法8 课 · 约 16 小时

面试题背后的套路:复杂度、双指针、哈希表、栈、二分、递归、图和动态规划,每个都带速度测试。

  1. 大 O:数步数
  2. 双指针与滑动窗口
  3. 哈希表与集合
  4. 栈与队列
  5. 二分查找
  6. 递归与归并排序
  7. 图:BFS 与 DFS
  8. 动态规划
操作系统6 课 · 约 8 小时

调度、竞态与锁、虚拟内存、缓存、死锁和文件系统,每个都做成能运行的小模拟。

  1. 进程与调度
  2. 线程、竞态与锁
  3. 虚拟内存与分页
  4. 页面置换与 LRU
  5. 死锁
  6. 文件系统

方向进阶

选你想做的方向。
后端开发6 课 · 约 10 小时

路由、JSON API、数据库、登录与权限、中间件和 API 设计,全部用普通 Python 实现。

  1. 路由
  2. JSON API 与校验
  3. 在代码里用数据库
  4. 会话、401 与 403
  5. 中间件与错误处理
  6. API 设计与分页
软件测试5 课 · 约 7 小时

写能抓住真 bug 的测试:边界情况、测试替身、表格、性质测试和测试先行。

  1. 你的第一批测试
  2. 边界情况
  3. 测试替身与依赖注入
  4. 表格与性质测试
  5. TDD 与回归测试
DevOps:容器、CI 与 Kubernetes5 课 · 约 10 小时

用 Docker 打包应用,用 Compose 运行整套服务,用 GitHub Actions 测试和部署,再放到 Kubernetes 上运行。

  1. 容器与 Dockerfile
  2. 层、缓存与小镜像
  3. Docker Compose
  4. 用 GitHub Actions 做 CI
  5. Kubernetes 基础
云与可靠性5 课 · 约 8 小时

Terraform、权限、自动扩缩容和 SLO:搭建云上的基础设施,并让它保持健康。

  1. Terraform 基础
  2. 计划与状态
  3. IAM 与最小权限
  4. 自动扩缩容
  5. SLO 与错误预算
人工智能基础6 课 · 约 9 小时

数据、回归、梯度下降、近邻、可靠的评估和检索:全部用 Python 从零写起。

  1. 数据、特征和标签
  2. 线性回归与损失
  3. 梯度下降
  4. k 近邻
  5. 衡量一个模型
  6. 嵌入与检索
系统设计5 课 · 约 8 小时

先估算负载,再做缓存、分片、限流和队列:这些是稳定系统的基本构件,每一个都亲手写代码、跑测试。

  1. 粗略估算
  2. 缓存
  3. 负载均衡与一致性哈希
  4. 限流
  5. 队列、重试与幂等