有感于国内令人发指的CS教育,决定以自学为主。
路线会按照计算机科学与技术的技能树,主要学习四大的比较完整的课程,video没时间看,但reading会仔细看、lab会认真做,对于一些比较有意义、代码量还可以的lab会在博客上记录。
一、 基础知识
- 语言:熟悉1~2门语言(Java/C++/Python…)
Harvard CS50-Introduction to Computer Science // Doing
Stanford CS106A-Programming Methodology // Skip
UC Berkeley CS61A-Structure and Interpretation of Computer Programs // Skip - 系统:熟悉Linux系统,最好能了解下源码;
- 数学基础:概率与统计、线性代数、离散数学、微积分、组合数学……
MIT 6.042J-Mathematics for Computer Science课程视频 // TODO
MIT 18.06-Linear Algebra // TODO
MIT 6.012-Introduction to Probability // TODO
all of statistics // 看情况
组合数学 - 专业课程:数据结构、操作系统、计算机网络、数据库、编译原理、组成原理……
UC Berkeley CS61B-Data Structures视频大作业思路 // TODO 18spring代码测试平台开放
Stanford CS106B-Programming Abstractions // Skip
UC Berkeley CS61C-Great Ideas in Computer Architecture(Machine Structures) // TODO
CMU 15-213-Computer Systems: A Programmer's Perspective作业视频 // TODO
MIT 6.033-Computer System Engineering // 看情况
CMU 15-445/645-Intro to Database Systems视频 // TODO
CMU 15-441/641-Computer Networks // TODO
MIT 6.828-Operating System Engineering学习材料 // TODO
RICE COMP412-Compiler Construction // Skip
Stanford CS143-Compilers视频 // TODO - ……
二、 编码能力
三、 工程能力
- 实习项目:
- 学校大作业:
- 兴趣项目:
- 开源项目:
- ……
四、 特定领域
这些高级课到时候可以对应烟酒生的课挑着上。
- 机器学习:
MIT 6.034-Artificial Intelligence - 计算机图形学:
CMU 15-462/662-Computer Graphics // 选修 - 系统:
- 安全:
高级算法:
MIT 6.046J
Stanford CS261
计算理论:
CMU 15-251
分布式系统:
CMU 15-440
体系结构:
CMU 18-447
Stanford
并行:
CMU 15-418
安全lab
密码学:
MIT
接上视频
人工智能:
UCB CS188
CV:
CS231n
NLP:
CS224n
大数据:
S
函数式编程:
cmu
其余的可以关注mooc - ……
五、 软素质
- 沟通交流
- 比赛获奖、成绩
- ……
六、其它
闲暇之余可以看看一些博客,不过碎片化知识我还是觉得作用很小。
千千
阮一峰
王垠
BYVoid
Matrix67
刘未鹏
Miloyip
陈硕
赵劼