前言
约 2995 字大约 10 分钟
2025-02-19
您好,亲爱的朋友。这是一本和计算机、项目建设、开放公共服务、大学生活等相关的手册,由一些老师、同学以及朋友共同编写,也是我们对整个大学生涯的一个纪念。
这同时也是一份献给重医学弟学妹们的礼物。如果这本书能对你们的本科生涯有哪怕一丝一毫的帮助,都是对我们极大的鼓励和慰藉。
如果你觉得我们写得还不错,请在Github上给我们点一个大大的star,这是对我们最大的鼓励。
项导文档目前包括了以下部分,如果你有其他好的建议,或者想加入贡献者的行列,欢迎邮件 PGuide Studio 阅读贡献指南,在下方评论区提问:
- 😊课程笔记
- 😊自学心得
- 😊在线问答
我们已经帮你踩过很多坑啦,就等你来走了!
- 💡 包含项目创意说明
- 💡 具体实现教程
- 💡 团队协作经验
想做项目却不知从何下手?快来看这里~>
- 🌟 零基础入门路径
- 🌟 热门方向学习路线
- 🌟 精选学习资源推荐及下载
自学找不到方向?这本指南就是你的导航!
- ✅ DeepSeek免费用
- ✅ 常用软件下载
- ✅ 生活服务入口
指尖上的便利校园生活一键开启,点击直达
- ❓ 如何平衡学习与社团?
- ❓ 选课怎样不踩雷?
- ❓ 老师们的一些建议
新人疑问一站式解答!
优质资源直连通道,共建学习生态圈~
- 🌐 合作组织官网
- 🌐 开源项目社区
- 🌐 技术交流论坛
点击探索更多合作伙伴,构建你的资源网络!
为什么写这本书
在查找各种资料的时候,尤其是计算机类的,我时常会因为资源获取的麻烦(要么是百度网盘,要么是微信关注公众号)、CSDN等平台的收费、文档的时效性等等问题而感到苦恼,而我在这种苦恼中度过了课程最多的大一。
这一切的转机发生在发生在大二的时候,我无意中看到了CS-DIY 这本书,当时的内容已经相当丰富,基本覆盖了计科、智能系、软工系的绝大多数课程。起初,我抱着怀疑的态度阅读了其中比较简单的一篇-CS61A ,哇,那时候我才感受到原来Python或者说编程可以这么简单而有趣。
下面这段话是复制的Yinmin Zhong的,也算是我的心里话:
我一口气 3 个星期上完了这门课,它让我第一次感觉到原来 CS 可以学得如此充实而有趣,原来这世上竟有如此精华的课程。为避免有崇洋媚外之嫌,我单纯从一个学生的视角来讲讲自学 CS61A 的体验:
- 独立搭建的课程网站: 一个网站将所有课程资源整合一体,条理分明的课程 schedule、所有 slides, homework, discussion的文件链接、详细明确的课程给分说明、历年的考试题与答案。这样一个网站抛开美观程度不谈,既方便学生,也让资源公正透明。
- 课程教授亲自编写的教材:CS61A 这门课的开课老师将 MIT 的经典教材 Structure and Interpretation of Computer Programs (SICP) 用Python这门语言进行改编(原教材基于 Scheme 语言),保证了课堂内容与教材内容的一致性,同时补充了更多细节,可以说诚意满满。而且全书开源,可以直接线上阅读。
- 丰富到让人眼花缭乱的课程作业:14 个 lab 巩固随堂知识点,10 个 homework,还有 4 个代码量均上千行的 project。与大家熟悉的 OJ 和 Word 文档式的作业不同,所有作业均有完善的代码框架,保姆级的作业说明。每个 Project 都有详尽的 handout 文档、全自动的评分脚本。
- CS61A 甚至专门开发了一个自动化的作业提交评分系统(据说还发了论文)。当然,有人会说“一个 project 几千行代码大部分都是助教帮你写好的,你还能学到啥?”。此言差矣,作为一个刚刚接触计算机,连安装 Python 都磕磕绊绊的小白来说,这样完善的代码框架既可以让你专注于巩固课堂上学习到的核心知识点,又能有“我才学了一个月就能做一个小游戏了!”的成就感,还能有机会阅读学习别人高质量的代码,从而为自己所用。我觉得在低年级,这种代码框架可以说百利而无一害。就是苦了老师和助教,因为开发这样的作业可想而知需要相当大的时间投入和多年的迭代积累。
- 每周 Discussion 讨论课:助教会讲解知识难点和考试例题,习题全部用 LaTeX 撰写,相当规范并且会给出详细的解答,让学生及时查漏补缺巩固知识点。这样的课程,你完全不需要任何计算机的基础,你只需要努力、认真、花时间就够了。此前那种有劲没处使的感觉,那种付出再多时间却得不到回报的感觉,从此烟消云散。这太适合我了,我从此爱上了自学。试想如果有人能把艰深的知识点嚼碎嚼烂,用生动直白的方式呈现给你,还有那么多听起来就很 fancy,种类繁多的 project 来巩固你的理论知识,你会觉得他们真的是在倾尽全力想方设法地让你完全掌握这门课,你会觉得不学好它简直是对这些课程建设者的侮辱。如果你觉得我在夸大其词,那么不妨从 CS61A 开始,因为它是我的梦开始的地方。
- 这样的课程,你完全不需要任何计算机的基础,你只需要努力、认真、花时间就够了。此前那种有劲没处使的感觉,那种付出再多时间却得不到回报的感觉,从此烟消云散。这太适合我了,我从此爱上了自学。
- 试想如果有人能把艰深的知识点嚼碎嚼烂,用生动直白的方式呈现给你,还有那么多听起来就很 fancy,种类繁多的 project 来巩固你的理论知识,你会觉得他们真的是在倾尽全力想方设法地让你完全掌握这门课,你会觉得不学好它简直是对这些课程建设者的侮辱。
- 如果你觉得我在夸大其词,那么不妨从 CS61A 开始,因为它是我的梦开始的地方。
大二这一年,我参加了许多比赛,也收获了一些奖项。但一种无名的空虚感侵蚀着我,望着一张张冰冷的“奖状”,我不禁反思:这是我想要的大学生活吗?这些对我真的有帮助吗?
的确,名义上这些代表我,或者说我的团队在过去做出的努力,在各种面试中也起到了一定作用。但我也清楚地知道,这些身外之物说明不了什么,想要真正成长,我需要实际的、系统性的解决问题的能力,并且将这些如CSDIY一样无偿地分享给其他人。
于是,在大三上,我整理了所有参加过的比赛、学习过的知识,将其放入了语雀文档站里。最初,我找到了几位熟悉的老师交流了下想法,他们都十分支持这种做法。有一位老师非常担心写这个会占用我们的时间,认为对我们成长没太大用处,表示在现在这个信息十分容易获取的时代意义不大,发了长达200秒的语音劝我们慎重考虑。
但我内心十分清楚计算机类学科的特殊性,正是因为信息爆炸,现在获取到所需要的资料变得更为困难,尤其是生成式人工智能盛行的今天,对于稍微困难点的问题,我们需要花费更多时间来鉴别资料的时效性、可用性、真实性等,很多无意义的时间便浪费在了上面。再者,我们十分需要一个交流的平台,来减少信息的极度不对等性。
在更多地与同学、老师、朋友们交流后,我决定开始建设项导文档站,现在项导文档包含的内容已相对丰富。当然,作为一个还未毕业的本科生,我深感自己没有能力也没有权利去宣扬这种方式,古人荀子《劝学》中所述说明有人积极的同时也有人消极,我只是希望这份资料能让那些同样有自学之心和毅力朋友可以少走些弯路,收获更丰富、更多样、更满足的学习体验。
你也想加入到贡献者的行列
一个人的力量终究是有限的,项导文档欢迎各位加入建设,目前我们针对同学们的情况编写了部分文档,涵盖的内容可能不齐全或存在可优化之处。如果有大佬想在其他领域分享自己的自学经历与资源,或有项目想要分享的,欢迎加入文档建设。请参考贡献指南或也欢迎和我电子邮件联系。
关于为什么自行开发与维护
项导文档之前在语雀也有存档,随着用户体量的增大,也暴露出一些问题:
- 内容审核严格:语雀会对发布到互联网的团队文档进行严格审核,一旦检测到敏感词就会风控,极为不便;
- 自定义程度低:不支持图标、markdown拓展等,组件库几乎等于没有;
- 域名不可自定义:对SEO不友好,而且文档永久链接是Nano加密的字符组,不直观;
- 需要注册和邀请:语雀需要每一位成员都进行注册和管理员审核协作,不方便;
- 太过简单:对于markdown协作和前端开发未必是好事。
关于我们
项导文档,人人为我,我为人人。不必在意我们的名字,因为你就是下一个故事。
所有贡献者名单:
怎么在评论区提问
- 科学上网或下载watt toolkit
- 注册github账号
- 点击下方
使用github登录
- 评论
贡献者
rand777