一些采访内容

本文最后更新于:2023年11月8日 中午

前面有以前的同学问过几个问题,我也按照我的理解尽己所能的予以了回答,所以在这里也记录一下,供读者和迷失自我时候的自己参考

1.如果让你用三个词来描述自己的专业你会怎么说呢

2.很多人提到计算机专业都会提到“挣钱多”,对于这个说法你怎么看

3.计算机之类专业常被人调侃会秃头,你在学习中会感到吃力吗?有什么好的解决方法吗?

4.可以简单为我们介绍一些专业课吗

5.你想对报考这个专业的学弟学妹们说什么呢

  1. 第一个词:实干。计算机作为信息化时代造就的理科与工科并存的学科,给我最明显的感受就是实践出真知。计算机相关学科在实际的生产生活和学习实践中是最能把产学结合起来的学科,在这个行业有一句老话,是Linux 的发明人Linus 说的,叫做“talk is cheap, show me your code(废话少说,放码过来)”,学习计算机与学习其他学科最大的区别就在于你学习计算机一分钟,就可以有一分钟的产出,就可以写出一些新鲜好玩的东西。所以我们学习的时候更多的不看你怎么说,而是看你怎么做,这种技术为王的思想是这个学科一种很有效率的特征。
    第二个词:逻辑。除了前面说到的工科的应用性,计算机还兼顾了理科很强的逻辑严谨性。计算机编程与我们平时说话不同,编程要求每一步执行都必须是严格的按照逻辑关系表达,每一次判断都要有明确的比较参数,每一个表达式都必须完整无误,甚至连大小写区分不清也会报错。所以计算机行业不论是从初学者还是到后来学习算法分析,程序分析设计,其实都是在学习逻辑的梳理。后来有理科思维的大牛把这些逻辑思维高度抽象后就形成了离散数学这门课,也属于计算机的专业课。包括眼下正是国家网络安全周,网络的安全维护其实也是去寻找代码里面的逻辑漏洞并加以修补,漏洞与逻辑相伴相生,有逻辑的地方肯定会有漏洞,这一点后面还会谈到。总而言之,计算机科学的学习过程就是一个对逻辑分析推理的学习过程。
    第三个词:秩序。计算机学科和其他学科还有一个显著的区别就是计算机不论在硬件还是软件上都有着极其严谨的秩序,我在学习编程的时候更多的就是被其严谨的秩序感所吸引,每一个操作都有极为严谨的表达,上一个操作何时结束,下一个操作何时开始,全部都是由代码者预先设定好的逻辑(也许这就是为何计算机大佬学到巅峰之后都会相信有天命或者上帝存在的原因吧),而计算机的运行也非常“死板”,你是如何设定的,它就如何执行,一点不会多,一点也不会少,所以代码的时候如果出现bug,肯定是没有人第一时间会去怀疑是计算机出了问题的,所以说代码者在其自己所写代码的这个空间里也是“上帝”的身份吧,这个感觉很美妙。
  2. 这一点我认同,但是有前提条件。前一段时间人社部的北京市外来务工人口调查里面把从事信息软件服务类的人划分为“新时代农民工”,这个事情就很有意思。程序员一边被人以高工资羡慕,一边又被认定为新时代农名工,不知道大佬们对于此是如何想的,我的观点则是觉得程序员的高工资需要一个前提条件:有能力的程序员。前面提到我对计算机描述的三个词中第一个就是“实干”,对于一个真正的计算机专业的学生来说,计算机行业确实是一个最适合“屌丝逆袭”的领域,因为你会发现,互联网大厂的招聘有一个总的原则就是“英雄不问出身”,你的背景,家庭条件,现状,学历这些都不重要,大厂的招聘面试永远都是在问你的技术栈,在问你会什么,没有任何虚话空话,因为在这个互联网内容不断更新迭代的时代,互联网公司能考虑的只有一点:能否进入公司之后立刻上岗开始创造价值?如果这个问题你能回答是,那么恭喜你,你就成功被录取了。我们实验室一位现在就职于小米公司安全事业部的学长上周这么跟我讲:他们部门的主管是某高职院校毕业且专业是家具工程的网安大佬,他没有接受过科班培训,但是公司产品的安全只有他才能把关,其次和我们学长最初一起进入公司的有几名本科生和十几名研究生,但是最终留下来的比例却是本科生的最大,所以说在计算机领域,永远不看你说的,只看你做的,这是计算机适合逆袭的关键所在。但是拿到offer只是一小步,是否能够年薪几十万,还要看你的地位是否能够被取代,简单来说就是是否有一(几)项技术,只有你会做,别人都不会,如果你不在这一环节的生产就无法进行,那么恭喜你,你终于成为了别人嘴里的“高工资”程序员。到这就可以稳坐钓鱼台了吗?并不是。现在的互联网企业技术迭代基本每3-5年就要进行一次,在当前阶段你确实无法被取代,但是等3-5年以后公司整体技术框架变更后,也许你手里的技术就一夜之间一无是处了,这也就是新闻上经常谈到的程序员35岁退休的问题。所以说,高工资背后隐藏着的是高压力,不仅要在公司996,007,下班以后还要不断更新自己的技术栈,保证自己不会被时代所抛弃,也就是乔布斯说过的”Stay hungry, stay foolish(求知若渴,虚心若愚)”,如果这些你也能保证,那么恭喜你,解决了技术栈迭代和35岁退休的问题,现在你已经达到进入管理层的条件了,成为了一名真正的白领。
  3. 计算机行业确实容易被人调侃秃头,甚至我们还会拿发际线的高度来比较谁的“段位”比较高。但是实际上,我身边认识的大佬还都是很养生的,每天按时上下班,晚上十一点前就入睡,暂时还没有“秃头危机”,所以这方面也要提醒各位找公司接offer一定要提前打听好加班制度,毕竟身体才是革命的本钱…至于学习过程中遇到的困难,我最推崇的还是善用(Google, Github)搜索引擎,学会自学,大学里面教授的编程框架和思想都偏学术,相对于公司内部的开发工作和竞赛的场景而言,在课堂上学到的内容稍显古老,所以学会了课堂上所讲的,还要主动去学习课堂上讲不到的,主动学习,善于结合搜索引擎解决问题,总结下来还是乔布斯的那句话:Stay hungry, stay foolish.
  4. 专业课程主要应该就包含数据结构,算法分析,计算机组成,计算机网络,操作系统原理这些,但是这些都是偏向于底层理论学习,还是建议在力所能及的范围内多去了解课上学不到的时下新兴的知识,以求跟上技术迭代的步伐。在这里就介绍一下我所了解的:如果是对网络安全领域感兴趣,那么就有CTF竞赛,其有方向:Misc(杂项), Reverse(逆向工程), Pwn(主机安全), Web(web安全), Crypto(密码学),这些要做的也就是上文所提到的:在现有的系统里发现并(经过授权的合法)利用漏洞;如果是对算法或者数学分析推理感兴趣,那么可以去尝试一下算法竞赛(中学NOI,大学ACM),它有数论和图论等等一些细分的领域,如果有深造的打算,可以在本科阶段提前去了解一下机器学习的相关知识,为将来研究生阶段做准备;还有计算机图形学、工业物联网、深度学习…等等。顾名思义,这些内容都会涉及到一些不同的领域,计算机所涉及的领域其实很广且很深,我们只要能找到一个小方向把它研究明白,就是伟大胜利。
  5. 我想说的是计算机行业如果感兴趣学习起来会很有趣,不感兴趣的话会很痛苦,还是建议大家理性选择,如果是追求高工资或者认为计算机可以在游戏方面有所结合的这两类同学还是建议慎重报考,前者前文中也讲到了,高工资一般都是用几倍的幸苦换来的,而后者在这里就要明确告诉各位:计算机专业确实和游戏一点关系都没,游戏段位再高对计算机学习也没有什么实质性的帮助。但是如果你是真的热爱计算机/编程/算法/网络安全/人工智能,那确实是非常建议报考,而且计算机行业目前看来前景依旧很好,如果你喜欢少说多做行动派,那说明这个行业真的很适合你!如果学弟学妹有什么想了解的也欢迎继续向我咨询,随时尽己所能为大家答疑解惑。:)

一些采访内容
https://www.0error.net/2021/10/7be08a10.html
作者
Jiajun Chen
发布于
2021年10月14日
许可协议