当前位置:首页 > 公众号精选 > 小林coding
[导读]我在逛知乎的时候看到一个问题:随手写了个回答,没想到很多读者都表示说出了心声,所以也同步发到公众号。以下是原回答我自己是CS科班的,读者里也有很多各大高校计算机的同学,覆盖了上交、北邮、南邮、华科、川大、普通一本等等,根据他们反馈,总结了以下几点:上课耽误学习,不上课考勤扣分,拿...

我在逛知乎的时候看到一个问题:

随手写了个回答,没想到很多读者都表示说出了心声,所以也同步发到公众号。

以下是原回答

我自己是 CS 科班的,读者里也有很多各大高校计算机的同学,覆盖了上交、北邮、南邮、华科、川大、普通一本等等,根据他们反馈,总结了以下几点:

  1. 上课耽误学习,不上课考勤扣分,拿不了高绩点,耽误保研出国。不多说,懂的都懂哈哈。

  2. 课程设置不合理,实验课多,作业多,并且大多是写 Word 报告,实验报告就像这种(迪杰克斯拉算法):

  1. 占了很多时间,但是效果却不如自学,上课基本是放 PPT,考试内容全在 PPT 上,看书的同学没有背 PPT 的分数考得高,没有人愿意去啃那些大厚书,因为“性价比”太低。

  2. 都 2021年了,估计没有几个学校提交代码是用 Git、Gitlab 这些工具吧,评分也没有搞自动化测试。做悉大、MIT这些学校的 labs,都是直接去网站提交代码,跑 test case,马上就能知道哪些 case 没有过,再去 debug。

  3. 教材大部分使用自己编的,水平如何就不多说了,懂的都懂。很多书上还是用 VC 6.0 来写的 C,为什么不换用更加优秀经典的教材呢?

    顺便贴一个匿名回答:

    不过值得表扬的是,我们学校教材基本都是使用全英文黑皮书,比如《计算机网络:自顶向下》、《深入理解计算机系统》等,这样的学校我知道有 15 所以上,希望会越来越多~

    对于计算机的学生,最好的资料和书籍是美帝那边的,因为计算机就是发源自美帝。

  4. 讲课全程 PPT,放 PPT 就算了吧,很多 PPT 还是十几年都没更新那种(C语言 PPT 上用的还是 VC6.0....),什么 C 语言 main 函数返回值 void。

我看过的一门非常经典课程,MIT CS107,讲师全程几乎都是黑板粉笔板书,学生跟着老师思路学习,这才是最高效的,而且各自手写代码、手画栈帧、手写汇编:

CS107
在我大学期间,只有一位数学老师坚持板书,大部分基本就是放 PPT 了事,下面的学生纷纷拿起手机拍照,或者直接下课去拷 PPT,这样能学到多少呢?

  1. 代码量太少,很多同学到毕业估计几万行都没写到,但是真正想锻炼出极强的编程能力没有 10w 很难,这方面作为学生我们也要多反思,为什么平时没有写到这么多代码。

  2. 很多学校就是孤立的学了一堆 操作系统、计组、体系结构、编译原理、C、汇编,但是很少有同学能把这些课程连起来形成 CS 体系,这方面 CMU 的神书神课《CSAPP》又要提下了,幸好我们学校开设了系统编程的课程,教材就是 CSAPP,其它没有开设这门课的学校建议学弟学妹们自学。

  3. 课程设置杂乱,学了一堆的数电、模电、大学物理..... 想起大一被大物实验支配的恐惧,时间都费在这些上面了,说实话把这些课程压缩,上一些函数式编程、或者比较前沿的 CS 方向,我觉得对计算机专业更好!

  4. 核心课程上的太晚!我们学校大二下、大三才开始计网、操作系统、数据库原理等核心课程,太晚了,这些课程至少要在大三前完成,大三再开设图形学、编译原理等进阶课程,大四直接就是实践课程为主或者让同学们自己出去找实习!

我个人觉得大概这样设置CS课程更为合理:大一上:C/C 程序设计、高数1(初等微积分)、离散数学

大一下:数字逻辑、数据结构、汇编语言、面向对象编程(Java/C )、高数2 、线性代数

大二上:软件工程、数据库、Java/Python Web开发、组成原理

大二下:操作系统、计算机网络、系统级编程(CSAPP)

大三:软件测试、软件安全、课程设计、密码学、图形学等选修方向

大四:实践、毕设、实习

另外,还有最大的问题就是OS、网络、数据库等 CS 核心课程上成了文科!缺乏一些动手实践 Lab,大部分都是写实验报告,就是不写代码。

为什么美帝在数据库、操作系统、各种工业软件工程能力如此强悍?

我觉得和他们 CS 强校的教育模式有关。

国外,尤其是美国,很多高校 CS 教育极其注重实践,国内也就清北复交浙等少数 TOP 学校有少量的实践教学,其它大部分是念 PPT,课后作业就是做 Word 项目。

因为很多老师自己也不会编程.... 更没法设计那些硬核的实验和辅助教学平台,不会编程的人教你编程......这结果能好么。

就拿我自己来说,学校好歹也是个 985 吧,我上了三周的 Java 课,愣是没听懂在讲啥,最后看了几个尚学堂高琪的视频几天就入门了....

再来说美国为什么有强大的基础软件能力吧,这得益于他们的高校在培养学生造轮子的能力。

比如国外是如何学习数据库的?

就拿 MIT 来说,6.830 Database Systems: 这是一门数据库系统的一门核心课程。前半部分比较基础的数据库的知识,后半段主要在讲Distributed Databases的东西

他们的实验是什么?

是让你写个小型关系型数据库,比如 lab1实现数据库基本的存储逻辑结构,具体包括:Tuple、TupleDesc、HeapPage、

HeapFile、SeqScan、BufferPool等。

国内数据库教什么?

教 SQL 怎么写,教数据库原理(这个还算好的)

更有甚者实验就是安排用 Java 使用 JDBC 连接MySQL 写个应用。。。

国外是如何教计算机网络的?

手写 TCP!

比如斯坦福 CS 144,CS144 Lab Assignments - 手写TCP - LAB4

img
国内是怎么教的?

记住 TCP 三次握手、四次挥手、记住 DNS使用 UDP协议....

国内大作业是什么?

有些是 Word 写报告。。。有些是让你用一下 socket api 写个网络程序。。。好吧,其实会用 socket 的也挺不错的,最关键是有些直接让你写个爬虫、HTTP 服务,就算是使用了网络协议了。。。

这是计算机网络原理吗?

国外是如何教 操作系统的?

比如 MIT 6.828,现在改名了。

直接让你基于一个 xv6 去实现一些模块,比如文件系统、多线程。

国内是如何教的?

记住进程和线程区别、记住虚拟内存的各种组关联....

当然也有一些学校会有实验,比如清华 ucore、哈工大 linux0.11、川大也有引入 nachos

这就是为什么美国高校有很强的编码能力、造轮子的能力,因为他们的CS学生成长环境就是这样的。

大多数高校老师升职不靠教学,所以大家都没把心思放在教学上,做“研究”发论文,不香么。

设计这么多麻烦的实验不是给自己找麻烦么

弄个 PPT、Word 多爽呀

这个现象我估计还会一直持续下去,老实说,跟着学校的路线走,学计算机,大概率毕业即失业。

给大家列举一个我做过的国外老师设计的实验吧:

模拟实现 TCP 可靠传输的

人家老外老师就是给力,直接做了一个网站,这个网站你可以通过 TCP 连接上去,然后你需要创建几个节点,互相发消息。

他们之间的消息都会经过老师的网站所以通过网站上是可以控制丢包率的,也能控制节点的拓扑结构,要求就是让你基于这种不可靠的信道,做出可靠数据传输!

这简直就是翻版 TCP 嘛,超时重传、ACK、滑动窗口啥的都给我安排上!

就是像下面图中一样,圆圈就表示你可达的范围,不同节点形成各种网络拓扑,可以调节网络 丢包率 Loss chance。

设计这些东西、实验系统、自动化测试评分系统,肯定需要花费老师大量时间精力,但是有没有带来多少升职上的产出,当然没动力去搞啰。

反正吧,学计算机最好不要全部去跟着学校学,除非你学校很好,不然大概率毕业即失业。

当然,说了这么多问题,也是有长处的,这里引用知乎一位答主邦彦的总结:

最后,附上这个回答下的一些评论:

郑重申明

本文非崇洋媚外,吐槽只针对部分高校的现象。

像清华、哈工大、南大就有非常不错的课程,也在积极像 MIT、Stanford 学习,毕业的时候已经有自己造的编译器、OS、数据库等等,并且均使用 docker 和 gitlab CI 解决环境和自动化测试问题。-- 来自评论区

但是这样的学校有点少,希望国内能有更多高校计算机教育模式能够早日跟美帝等 CS 强校接轨。培养更多基础扎实、编程能力强的学生,助力操作系统、数据库等基础软件、工业软件的发展。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭