劝退别人学计算机的人,都是王八蛋。劝别人学 Java 的也是!
你好呀,我是歪歪。
高考结束了,马上又要开始填志愿了。
按照前几年的经验来说,马上又会有人在网上讨论“计算机专业是否还值得填报”,“现在填报计算机是否是 49 年入国军”,“计算机专业是否是下一个土木工程”之类的问题了。
针对这个问题,我的态度和几年前一样鲜明:劝退别人学计算机的人,都是王八蛋。
但是,今年我要再加一句:劝退别人学计算机的人,都是王八蛋。劝别人学 Java 的也是!
现在很多观点都是说“计算机不行了”?
什么叫计算机不行了?
计算机专业是一个非常庞大的学科,覆盖的专业非常广泛,计算机专业不仅不是不行了,而正是如日中天的时候。
不行了,是指这些专业中,入门门槛比较低的那些专业,由于从业人员太多,导致行业内卷严重,从而不行了。
比如,搞 Java 开发的,确实不行了。
这篇文章就基于这个话题,聊聊“计算机专业”和“填报志愿”的一点事情吧。
计算机专业
计算机专业,是一个非常广的范围。广到我这这段文字的时候,一瞬间脑子里面蹦出了各种各样的素材。
素材过多,就需要选择说服力更强的。
于是我在搜索框里面输入了这样的问题:计算机专业大学排名。
其中北京大学,不论是在那一个搜索结果里面都是 TOP 3 级别的存在。
于是我进入了北京大学的官网,找到了北京大学计算机学院的网站:
https://eecs.pku.edu.cn/info/1083/5741.htm
这里有一个叫做《本科生专业培养方案》的文件,点一下,就来到了北京大学信息科学技术学院这个链接:
更具北大的官方信息,信息科学技术学院于 2002 年由原计算机科学技术系、电子学系和信息科学中心合并而成。信息科学技术学院下共设立四个学科学院:
电子学院 计算机学院 集成电路学院 智能学院
这个文件里面列举了信息科学技术学院下十个专业针对 2023 届本科生的培养方案:
https://eecs.pku.edu.cn/info/1083/5741.htm
这十个专业又分为两大类,分别是:
电子信息类:
电子信息科学与技术专业 电子信息工程专业 微电子科学与工程专业 集成电路设计与集成系统专业 应用物理学专业
计算机类:
计算机科学与技术专业 智能科学与技术专业 软件工程专业 数据科学与大数据技术专业 信息与计算科学专业
电子信息我搞不懂,就不看了。
我们只看看这五个计算机类专业。
先来点看起来就让人迷糊的官方描述:
计算机科学与技术专业
计算机科学与技术主要研究计算机软硬件理论与技术、计算机体系结构和计算机应用技术。学习内容以数学、物理和程序设计为基础,涵盖编程语言与算法、计算机系统、计算方法、体系结构、计算机网络、操作系统和软件工程等,配合相应的实验、实践训练,培养理论与实践并重的计算机科学研究和应用的创新型人才。
智能科学与技术专业
智能科学与技术主要研究机器感知、机器学习、智能机器人、智能信息处理和认知科学,为人工智能系统提供新理论和新技术。学习内容以数学和计算机类课程为基础,涵盖机器感知、视听觉信息处理、智能机器人、虚拟现实技术、数据挖掘和智能信息系统等,配合相应的实验、实践训练,培养人工智能领域具有基础研究和综合应用的高层次人才。
软件工程专业
软件工程围绕计算机软件的理论、开发、运行和维护,研究软件理论科学、开发方法、操作系统、高可信软件等技术。学习内容以数学和程序设计为基础,主要包括程序设计语言、数据结构与算法、计算机系统、软件工程与实习、软件测试技术等,配合相应的实验、实践训练,培养计算机软件领域具有基础研究和综合应用能力的高层次人才。
数据科学与大数据技术专业
数据科学与大数据技术主要研究如何利用数学与计算方法分析与处理应用领域数据以及适合大规模复杂数据处理的计算技术。学习内容以数学为基础,主要包括计算机理论、程序设计、算法设计与分析、计算机系统与结构、数值计算、经济学基础等,配合相应的实验、实践训练,培养理论与实践兼备的数据分析人才以及兼具经济学基础的大数据人才。
信息与计算科学专业
信息与计算科学研究信息与计算的理论、软件、系统和应用。学习内容以数学和程序设计为基础,涵盖信息科学、计算理论、信息与计算系统、信息与计算应用和人工智能等,配合相应的实验、实践训练,培养有志于服务国家重大战略需求且基础理论扎实、在信息与计算学科前沿开拓创新能力强的未来领军人才。
一般来说这五个专业中最让人迷糊的“计算机科学与技术专业”和“软件工程专业”,经常有人放在一起对比:我以后想当程序员,填报志愿的时候我到底应该填写那个专业呢?
我们可以详细对比一下北大关于这两个专业的培养方案。
在培养方案方案里面有专业课程地图,还是很清晰的:
然后,我把这两张图放在一起给你对比一下。
我们只看专业核心和专业基础这两部分的对比。
专业基础,两个专业是一模一样的:
高等数学 线性代数 信息科学技术概论 计算概论 数据结构与算法
至于其中在大一下学期开展的程序设计实习或者软件设计实践,其实都是一回事儿。
在专业核心课程中,两个专业都有人工智能基础、离散数学基础、计算机系统导论、算法设计与分析、操作系统。
但是计算机科学与技术专业的核心课程中多了这几门:
代数结构与组合数学 数理逻辑 信息学中的概率统计 集合论与图论 计算机组织与体系结构 编译原理
而软件工程专业的核心课程多了这几门:
软件科学基础 软件测试导论 软件工程
还有一些其他的很重要的课程都放在了专业选修课上。
比如软件课程专业选修课也可以选择在计科专业是核心课程的编译原理,同时不管是哪个专业数据库概率和计算机网络这两门肯定也是得选上去好好学的:
所以,仅仅从课程上来说,就能看出至少计算机科学与技术专业核心课程上学的东西是比软件工程多一点,课都会多几门。
从多出来的这几门课,也能看出来,计算机科学与技术侧重于计算机系统的理论和基础知识,软件工程则侧重于软件开发过程的实践和方法论。
所以填志愿的时候到底怎么填呢?
先说我个人的结论,站在求职的角度来说:被任意一个专业录取了,都可以,这两个专业对于面试“科班出身”这一要求来说,几乎没有差别。
注意,我说的是几乎没有差别,不代表完全没有差别。
我就看到过真实的校招例子,要求写的是电子类专业的学生才可以报名,所以初筛的时候,计算机科学与技术能过,软件工程专业就过不了。
所以在能选的情况下,个人建议最好是选择计算机科学与技术专业。
虽然这两个专业在大学的课程上还是有差异的,但是说真的,大学全是靠自学的,课堂上学到的那点东西,是真的不够让你去工作,而且还是远远不够。
另外,如果你从一开始就决定要考研,那么你报考的时候可以去招研网上查一下,你想要报考的省,研究生招计算机专业的学校。
然后填志愿就填这些有硕士点的学校,这样你就有机会跟导师在本科期间打交道,以后复试的时候肯定会有帮助的。
比如,在四川,这些学校就招收计算机科学与技术专业的研究生:
https://yz.chsi.com.cn/zsml/zyfx_search.jsp
如果你本科就在这些院校读的话,考本校的研究生,相对外校考过来的,要容易一点,毕竟是主场作战。
如果你没有报到这些院校,那么本科期间就多去参加竞赛,也会有很大的帮助。
另外,走计算机这条路,还有一个路线,歪师傅当年毕业的时候就知道这个路线,当时觉得很不错,现在却对这个路线有了新看法。
我写这篇文章的时候,在清华的官网上又看到了这个路线:
https://www.cs.tsinghua.edu.cn/info/1043/5992.htm
计算机+金融,具有多学科交叉背景,这样的双学位复合型人才,试问哪个金融行业的公司不想要?
而且从几年前开始,这个就是一个趋势了,很多高校在研究生招生的时候会鼓励金融专业招收计算机类学生,计算机相关专业开设金融方向。
我知道就有北京大学、复旦大学、浙江大学、上海交通大学、中央财经、西南财经等等...
但是歪师傅还得提个醒,这条路看起来确实不错。计算机和金融,两个都是卷王之王的赛道,都是不错的专业,就业的指向性很强。
但是两个好的专业加在一起,并不一定是一个好上加好的专业,很有可能面对的是“卷+卷”,“焦虑+焦虑”,“迷茫+迷茫”。
当然了,一定会有人在这个赛道上走的非常好,比单纯的计算机或者单纯的金融都好得多的那种好。
但是,这种人毕竟在极少数,属于状元级别的人物。
这个时候你就要掂量一下了,自己是不是这个状元。
所以,这个路线歪师傅也只是简单提一嘴。
填报志愿
填报志愿,我一直认为是一个和高考一样重要的事情。但是却往往得不到重视,绝大部分高考的学生考完之后,考虑到的最远的事情大概也就是能进入心仪的大学就行了,至于专业什么的,随缘吧。
这里就算是犯了一个大错了,你一句轻飘飘的随缘,很有可能就已经给自己之后的几十年,在深夜敲代码或者在工地深夜打灰埋下了伏笔。
我不知道你们填报志愿的时候是怎么样的,但是歪师傅当年填报志愿的时候完全就是闭着眼睛瞎填,确实是啥也不懂,当时信息也相对比较闭塞,学校把我们保护的很好。
关于很多大学的名字,都只是偶尔从老师的口中听说到,至于大学中的专业那就更加是盲区了。
当年包括现在的现状也确实是这样,高考的学生只需要关注于高考就行了,填报大学和专业什么的,考完了拿到分之后再说吧。
但是,真的等拿到分再去填报大学,中间留下的时间也就只是 3 到 5 天的时间。
要在这么短的时间内把填报志愿这件重要且复杂的事情弄清楚,还是很困难的。
你知道我当时的信息源是什么吗?
我在之前的文章中提到过,我高考结束的那一年,学校发了 4 本和填报志愿相关的书,书里面主要的内容就是过去三年各个批次,各个学校,各个专业的报考人数、录取人数、录取最低分数、录取平均分数、录取最高分数的信息统计:
我当年填报志愿,就是通过翻阅这四本书来找到自己可以填报的大学。
但是我的高考志愿特别好填,因为我高考成绩只超过二本线 13 分,所以我直接看二本院校里面每年卡着分数线招收学生的学校就可以了。
在这个条件下,没有多少学校可以选择。
但是有很多同学分数就考的很高,有非常多可以选择的院校,有得时候,选择太多了,也是一种痛苦。
最后录取我的大学,是由专科学校升级为二本院校的一所大学。所以那一年是它第一次招本科生,没有过往的数据可以参考,报它的原因是因为我感觉它刚刚从专科升级为本科,录取分数应该不会太高。
填报志愿的时候一个学校可以填写六个专业,刚好它也只有六个本科专业:
所以我就按照报纸上的顺序,挨个填写,而且还勾选了“服从调剂”。
当时对于这六个专业,我完全没有任何了解。根本不知道要学习什么内容,更加不知道毕业之后会从事什么工作。
后来入校之后我才知道,报材料成型及控制工程和机械电子工程专业的人最多,计算机科学与技术由于报的人没有报满,所以我被调剂过去了
可以肯定的说,如果当年这个学校没有计算机的本科专业,我就不会走上计算机的道路。
当年一个轻飘飘的“服从调剂”,就决定了我程序员的职业道路。
其实我填报志愿的状态,和每一年绝大部分高考学生的状态一样,非常的茫然。
在高中,学校也只教了高考考场上要考的东西,为了这点东西,我们准备了整整三年。
但是现在回头去看,如何填报志愿,其实也是一件非常值得学习了解的事情,而不是高考结束之后,学校发几本资料就完事的。
一定要像重视高考一样重视志愿填报,这个事儿的结果,相当大的程度上决定了你以后的道路。
最后,如果你真的要填计算机专业,我再单独说几句。
从我毕业的那一年开始,每当有人问我报不报计算机专业的时候,我都是:报啊!为什么不报?
这个行业,确实苦,确实累,要学的东西非常的多。
但是试问,哪个行业它又不苦不累呢?
虽然比不上前几年了,但是目前来说,和其他行业相比,计算机还算是肉眼可见的报酬可观啊。
而大多和我一样从农村一路打拼出来的朋友,苦和累,只是我们的家常便饭而已。
大小周?996?加班多?...
难道它们比起穷来说,还更可怕吗?
为了那一点客观的报酬,我愿意成为卷王。
所以针对“报不报计算机”这个问题,我的态度和几年前一样鲜明:劝退别人学计算机的人,都是王八蛋。
但是,今年我要再加几句:
劝退别人学计算机的人,都是王八蛋。劝别人学 Java 的也是! 针对计算机来说,不管你最后被哪个专业录取了,从大一开始你就一定要把“全靠自学”这四个字刻在脑子里面。 如果想进大厂,最好要考研。 如果有得选,一定不要学 Java,这玩意就像是奶头乐一样,虽然很好学,但是太卷了。而且学这玩意,用不了大学四年。把根扎在更难生长的地方,毕竟你至少有四年的时间。 如果最后很不幸,只能走 Java 的话,那就尽早出去实习吧。
剩下的,评论区补充吧。
祝你,前程似锦。
·············· END ··············
推荐👍:Spring官方竟然真的支持Bean的异步初始化了!
你好呀,我是歪歪。我没进过一线大厂,没创过业,也没写过书,更不是技术专家,所以也没有什么亮眼的title。
当年高考,随缘调剂到了某二本院校计算机专业。纯属误打误撞,进入程序员的行列,之后开始了运气爆棚的程序员之路。
说起程序员之路还是有点意思,可以点击蓝字,查看我的程序员之路。