最近在复习《编译原理》,想起了 BFU-leaf,如这个项目的发起人所写,深深为这种孤军奋战的重复劳动感到不平。上学期发过帖子,那时候我正陷入各种学业与身边各种事情压力的挣扎中,涅槃重生,无力推动,一直期待有人发起,但至今无人付诸行动。

目前本站累计注册帐号将近 350,Q群也有差不多 200 人,说明迷茫一定不是个别现象,况且,每年计算机学院 + 软件学院入学差不多六百人。在这个背景下,此处的发帖讨论不多,我想更多时候是大家还未像我这一踩坑老油条体会深刻,线下也无类似讨论氛围,动力也尚未达到发帖的阈值,总体还停留在以看为主(稳定下来每天约有 50 人左右的访问)。

意识到问题所在:现实大学生已经忙碌于各种现实压力之下,能认清问题实属不易,再到没有现实利益的牵绊,能有动力去跨越门槛,并能付出时间精力去推动这样的事的人并不太多。对于我个人来说,学院评价体系的一切的荣誉和利益对我来说早已免疫,既然开始了也应该尝试去牵头吧,不介意再做一次推动计算机教育进步的先锋角色。

预计下学期回来做毕设的时间才会有空去实现更多的想法,先写一写目前的脑洞,大家有什么想法可以继续跟帖回复。

现状

如我在入门指南里面所写,大学阶段面对的实际上是人类共同构筑的知识网络

这一知识网络具有开放和持续更新的特点,自然最好用开放和持续更新的方式去把握它,就像用递归调用的计算过程可以很自然地用来处理树形的数据结构一样。

而现实是老师的主要压力来源于往深处挖掘的科研,教学趋于固定套路,加之教育的作用是缓慢的,无法形成及时反馈去优化教学过程。时间长了便导致很多课程难以与现代知识体系接轨的现状(比如说@LittleboyHarry 帖子说的 2006 年囤的课件 )。学生在学习时,面临两个层面的割裂:

  1. 与应用层面的脱节:学校不像企业重点的落地,课程作业的水平,难以对当下流行技术的知识体系有所感知,工程能力难以培养,自己折腾,脱离环境,容易不断地走弯路。
  2. 与核心知识的脱节:我们日常时间大多花在日常的作业,受限于课程质量,难以体会到核心的东西;鼓励阅读核心教材,与日常有种割裂的状态,局外人很难自然加入进来,就像@lego线性代数学习记录

学生更多的是悬在两者之间,高不成低不就。

我们与上一代人的生存环境相比较,过去的资源十分匮乏,但学习的人能保持专注,能看见的东西基本上都有一定的质量。而目前的情况是,信息爆炸成为常态,优质的内容和低质量内容披着相同外衣,熵越来越大。

我们与上一代人相比较,如何选择信息这个技能依然还是缺失。信息带来的作用总是后知后觉的,若大家都做无任何参考的单打独斗,概率上来说,更容易被低质量内容消磨掉本来就不多的大学时光。

设想

我们作为一个社会中具体的一个成员,生活在某一体系中,无可避免地会被当下的框架所束缚着,最好的方式是与好好相处达成平衡。

分析目前计算机专业这一框架其中的好坏,虽说教学内容上大多有问题(脱节),但从培养计划角度大体来看,课程的 title 仍符合计算机学习需要满足的各个目标,时间安排上也基本没毛病,有毛病的更多的是上述带来脱节的僵化知识体系。

所以有了一大设想:在互联网信息充分公开的背景下,共同构造一个面向本科计算机课程学习的 Wiki,针对课程编写有针对性的学习指南和优质的课程资源导航,同时也能带来一个建立专业宏观印象的 Big Picture。使用者可根据培养方案的安排,在最适合的时间段,从自己实际情况角度出发,吸收高质量的知识。

在 Wiki 的形态上,整体上来说类似我以前分享的这个演讲 现代 Web 开发的现状与未来 的作者做的一个 现代 JavaScript Web 开发的知识体系梳理

上面的 Web 开发梳理只是个 Big Picture 和导航,对于细化的小的知识点来说,组织形式则可以类似于一个个 MOOC 课程,课程的结构遵循这一门课的通用的思路,可以参考 CTF 选手和 OI/ICPC 选手构造的两个 Wiki 网站:

每一门课都可以构造一个这样的专题 Wiki,可以包含:

  • 学习资料指引
  • 针对相关知识点的高质量博客,高质量的MOOC,视频,Slides 等学习材料
  • 考试前重点关注的部分
  • 对应知识点在经典教材中的延伸
  • 业界对这一知识/技术的应用现状
  • .......

实现这一形态早已有成熟的工具,我们可以依托 Github,在 https://github.com/scnu 或是 https://github.com/0xffff-one 组织下建立对应的仓库,然后用各种网站构建工具来做这样的事情。

针对具体课程我们可以在论坛建立对应的讨论标签,具体学习过程遇到的细节问题可以通过讨论的方式进行。

目前就 0xFFFF 也至少有几百的潜在受众,细化之后各个点参与门槛都很低,若大家都能参与进来,效果应该是非常可观的。相信如果这一互联网之上的“大学”发展起来,威力不会亚于周围的各个“双一流大学”。


更新

Wiki 已在语雀建立,名为 0xFFFF Wiki,欢迎关注!
地址:https://www.yuque.com/0xffff.one/cs-learning

具体参考本帖: 0x0001

    我觉得的话,除了What we get以外,博客类型的入门或者经验分享也很重要。@NTL01 老哥做的就不错,但是就是相对来说没什么人讨论那些内容。。。

      iwktd1220 对,我感觉现状是缺少同道中人,有动力去编程和看书的人实在太少,更不要说更高一层次的讨论。

      究其原因,我想是现存的GPA导向的那条路处于僵化状态,许多人面对着其它的未知的道路,徘徊不前,很难说再扩展到其它的编程语言了。

      前期还是需要耐住寂寞,坚持分享吧!说不定读的人抓住某些共鸣,然后走入大门,讨论也许就不远了😄

        Woo 我们班情况相反,大家基本都觉得老师布置的作业太多太难了,反而只能敷衍了事地做作业,学风也没有转变~

        不过我赞同确实需要更新、与时俱进有意义,我觉得上述问题关键在于校内作业和课后学习的亲自指导教学不太够,大家都不太能掌握课上的内容。

        Woo 课程内容能做到有意义和与时俱进感觉就已经很不错了,其实更多时候是脱节导致了更高的难度,比如说 9012 年还在用 VC++ 6.0 和 MFC,教材还是谭浩强类型的书。

        说一个亲身经历的故事:曾经我上的一门课有个实验环节,实验内容是抓 HTTP 和 FTP 包观察数据结构。实验文档说用 Ethereal 软件去抓包,我自己搜了半天不知道不知道是啥,看截图感觉有些熟悉,后来发现原来 Ethereal 在 2006 年 6 月 7 日改了名字(Wireshark · Ethereal® is now Wireshark™),恍然大悟,原来这特么就是日常用的 WireShark 啊!

        如果之前没有接触过这个工具,想必要被绕很久,百度搜索的第一页并未有 Wireshark 的踪迹,记得那时候班里的人一开始也是懵逼的,为了下到能用的软件搞了大半节课。

        实验内容有一项是抓 http://www.baidu.com 的 HTTP 包并分析,然后设置的问题还有 HTTP/1.1 的 Keepalive 机制之类的提问,但百度这两年上了 HSTS,会强制浏览器用 HTTPS 协议加密传输,已经不能简单地抓到请求。

        上面的问题只是冰山一角,过去的课程或多或少都会遇到这样的问题,那些过时的体系或工具也并不简单,虽说核心的思想没变化,但花大量时间再踩一轮旧的体系的工具和新的系统和设备的兼容问题,重点就已经偏了,也很难关注到过去的人会踩的坑,乃至于课程要传递的那些核心的思想了。

          Woo 很赞同你提到的点,大概也是理想中需要的老师的状态。「严格的奖惩制度」想到了邹欣老师的《构建之法》里面的「给任课老师和助教的建议」,感觉每一条都写的非常真实,推荐一读哈哈哈!

          自觉的确是很难的事,但目前的背景下是一种无奈之举,也是在各方权衡之下的最优解了。邹老师在这一小节提到了老师的角色应类似“健身教练”,之前我有想了下我们该怎么尽量靠近这个状态,见下面的脑洞:
          做自己的教练 - 0xFFFF

          所以,有人建仓库吗?

          或者,我觉得 git 对零基础新手不太友好,不如我们用语雀

            hsxfjames 诶,语雀的确挺好,也感觉仓库的门槛有些高,有现成解决方案先搞着来最棒了(反正这个脑洞也不知道具体会是什么样子哈哈,先试试)

            刚注册了一个号,开了一个团队,链接是:
            https://www.yuque.com/0xffff.one

            建了一个知识库:
            https://www.yuque.com/0xffff.one/cs-learning

            具体添加成员之类的细节我们在Q群讨论吧~

            然后第一个问题来了,我们可以先从环境安装和 C 语言开始搞起?

              Tover 置顶有点太多了,会占满未登录用户的版面,等把入门指南都搬过去之后,再调整一下

              NTL01 相对来说也是进行总结过的内容,可以吸引同道中人或者写错了有人指出,都挺好的。

              1 个月 后
              0x0001 置顶此帖
              13 天 后

              怎么说,有时候感觉,自己的经验想要分享,但修行太浅,又怕写了会误人子弟……

                0x0001 C语言的推荐书籍可以直接放出来,附在视频推荐下面,入门看的第一本书感觉也挺重要的/逃

                  yslin 可以呀,对 Wiki 有什么不明白的地方可以直接在对应页面下面评论的

                  © 2018-2025 0xFFFF