众所周知,一名本科生要获得现实大学所认可的学士学位,需要在这所大学修够毕业规定课程的学分。而现今大学生普遍面临的一大矛盾是,无论是前沿知识还是工业领域应用,学院开设的课程,在内容上均存在不同程度的脱节。

针对这样的脱节,借助于互联网与开源社区,无论理论前沿还是现实应用,我们都有全世界最为庞大的知识网络和大量优质的学习资源,这是一般大学计算机专业课内难以做到的状态。由此我也写下这个帖子:多人协同方式构造计算机专业学习 Wiki 的设想 - 0xFFFF,尝试通过不断演进的 Wiki,解决优质资源难以寻找的问题。

帖子 如何看待学院在大三的两个学期开设大学物理课程? 让我突然意识到,学院教育改革的出发点更多在于建设 “一流大学”、“一流学科” 等时髦称号,以获得上层老板们更多的资源倾斜,在资源倾斜后再带来影响与进步,过程是漫长的。至于当下的学生面临的各种压力与心理状态,大部分时候是放在最末端考虑。这是它的局限性所在。

由此也想到本科生中存在的更深一层次的矛盾:学生在 高考千军万马过独木桥的惯性 下来到大学,还没读两年书、适应过大学的节奏,立马就得为未来去向做准备(工作?考研?保研?留学?)。大部分同学本科毕业是直面社会的,四舍五入下来,真正能安心下来学习探索的时间一般不过两年。

人生而有涯,而知也无涯。相比于“如何寻找优质资源”,更核心的问题在于:为了在大学生活得到更好的收获,这可能不到两年的时间应该如何安排?

从华师计院大三突然增加大物课程、这两年搞“非正式课程”等各种有点急躁的改革可以看出,光靠学院和学校培养计划的时间安排开展学习,似乎不是太妥。两年时间很容易就被各种事情给消耗掉,为了减少这样的痛苦,我们必须有一个强有力的自我意识,克服这样的被动和随大流。如 @Bintou 老师写下的,我们需要尽早确立目标。

大学生如何寻找目标? - 0xFFFF

更具体来说,我想或许我们应该明确一个 属于自己的“培养计划”,结合自身情况,以及现实中的压力(比如为了获得学校的学位认可不得不上“水课”的毕业压力、职业路线要求的工程能力的压力),作出必要的调整。

在规划的形态上,大致需要明确自己内心真正的“专业方向”,接下来需要明确走上这个“专业方向”所需要的知识、对应的好的导师与课程材料,明确需付出的学时,再具体到要放在在哪一个学期完成,再明确大概的学习计划。

在这份属于个人的“培养计划”的设计上,我们可以参考 ACM/IEEE 的 CS2013 所列出的 CS 毕业生需要的特质和一些关键知识结构的要求,结合自己的兴趣和职业的规划去选取合适的课程目标和学习资源。在这份独一无二的“培养计划”的设计中,有遇到任何的困难,通过我们的社区讨论,或求助于老师解决。

对于社区来说,我们可以一起维护一些动态更新的“计算机各专业方向”的课程路线,梳理各个方向比较不错的课程、学习和练习资料,并且对所需的时间和精力的消耗有一个大致的评估。比如说我所了解的 PingCAP 的面向分布式数据库方向的 Talent Plan,在这方面做的十分用心。但计算机还有许许多多的专业方向(比如说我所在的 Web 开发领域),在专业计划设计上依然有着非常大的发展空间。

Talent Plan - 希望是最好的分布式系统和分布式数据库实践课程 - V2EX

实际执行上,我们可以用 XMind 之类的脑图软件做个“技能树”,标注各种学习进度,记录自己的成长。就像刚看到的一篇,正在给 Tencent/TSW 贡献代码的鹅厂同学写下的 前端之路

洋洋洒洒脑洞了很多,感谢阅读~ 欢迎留下你的想法 😃

属于自己的东西一般都是摸索出来的,事先设计很难,特别是面对一个新领域的情况。看到这个帖子的绝大多数人都不是从小就接触编程、互联网思维的环境下长大的吧,那说到底IT领域对我们本站上还是新的。

此时我非常期待的是多找到一些有参与指南的开源项目,不是提问的智慧+文档和版本管理规范+编程语言版本说明的那种指南,而是升级版的The Architecture of Open Source Applications,告诉你这个项目怎么来的,解决的问题是什么,为什么或大体上怎么发展到现在的,扩展到成千上万行的最初几十行甚至十几行代码是什么样,现在未解决的问题是什么。

    NTL01 属于自己的东西一般都是摸索出来的,事先设计很难,特别是面对一个新领域的情况。

    的确是在摸索,但计算机领域许多核心知识是共通的(比如说编程语言、算法、操作系统、计算机网络等等),这些知识相对非常稳定,算是计算机的根基。想想香农的信息论,现代计算机的发展都在信息论的框架之中,1948 年至今依然坚挺。

    进一步说,所谓“专业方向”(比如说“软件工程”、“数据库”、“信息安全”、“网络工程”等等)的产生也正是因为知识体系足够庞大且趋于稳定,这些东西已经有许多人探过路,就没必要再重复着去踩坑了(人的精力有限,许多人究其一生,也许只弄清楚一个问题)。我们更需要前人的沉淀,以及在这知识网络中梳理细节、设计课程去让后人更容易把握前人的成果。

    “培养计划”的设计,也正是工作在这个层面。本科阶段的学习,其实基本上都是在前面说的“理论框架”之中的摸索。稳定的框架,也就意味着存在比较大的提前设计和规划的空间,至少可以保证当下的两年能有实实在在的收获。

    对于低年级本科生来说,需要做的便是尽早去确定“我究竟想要具备什么样的能力”,然后为此付出时间精力去达成。随着前人的不断沉淀,后人面对这个过程会越来越容易。

      0x0001 这些东西已经有许多人探过路,就没必要再重复着去踩坑了

      这点而言,很多遇到的问题其实是重复提出,或者在正确提出之前费劲了极大周折。最近一个想法折腾了一周多时间,然后发现在实际应用中叫这个,然而如果依照原初的想法对应的关键字去搜索却不能直接搜到通用的名称。

      初学者(包括我)需要更多、面向应用的类似Schaum's Outline的资料。

      © 2018-2025 0xFFFF