Review 我的大学四年

2015年9月,仿佛就像是刚刚才过去一样。四年弹指一挥间,从一个学生变成了一个社畜。过去的四年有收获,但回想起来更多的是作为一个失败人士的各种遗憾。这几天试着总结一下过去发生的事情及所思所想,给自己写了一份四年来的流水帐,算是大学生涯的一个纪念吧。

以及前几天用 Go 把我的博客重构了一遍。作为一个新的开始 :P

专业的选择

2015年7月,中国地质大学(武汉)的录取通知书发到了我家。没能考上985的我稍有些郁闷,但录取我的专业是海洋科学(菁英班),看到这么牛逼烘烘的名字我稍感安慰。我爹说以后海洋所要建在我家附近,回来工作岂不是美滋滋?

大一一年多多少少了解了这个专业是干嘛的。地大的海洋科学专业原来全名叫做“海洋地质与资源”,是一个非常科研向的专业了。专业课和地质类非常相似,相对其它理工科专业来说重记忆类的专业课而轻数理计算机课程(似乎有点劝退专业的感觉呢)。

专业优劣与取舍的内容不想说太多,这方面逼乎上讨论极多。我个人感觉海洋科学并不是一个很糟糕的专业,至少相对生环材化来说并没有那么内卷,专业相关出路也还算是有的吧。再多的东西我也没有资格评价了。

大一刷知乎的时候刷到了知乎上萧井陌的《编程入门指南》,当时也闲的荒,就跟着指南开始学习撸码。当时简单地完成了 MIT 6.001 和 Harvard CS50 的学习,觉得还蛮有意思的,索性就在大二转了计算机,不过各种补课挺累的。。

最近和一些学弟学妹聊了一下,发现现在理工科的同学填志愿都是首选 CS 。从过去若干年的经验来看这是没错的,对于一个普通人来说,计算机专业相对生环材化这些天坑专业能带来更多的工作机会和更高的薪资水平。即便从科研角度来看,科班训练带来的扎实的计算机基础也能够使你较为容易地融入各个领域的研究。

但是正如曹学所指出的,国内的资源在面对无比聪明和数量几乎为正无穷的劳动力面前都显得实在太少了,一切的好行业一定会走向一定程度的内卷。比如现在,互联网行业收入增速的放缓是很多人可以感受到的。但是其机会和待遇相比其它天坑专业仍然还是要好些的。

但从另一个角度来看,反正在这个前所未有的伟大时代,你快要饿死了居委会都会上门给你送米面油,互联网行业多的那点钱也干不了什么,借大厂股票期权财务自由的机会现在也没了。如果你有真心喜欢的工作,与其在西二旗令人窒息的空气里 996,不如回去干自己喜欢的事吧。

不扯这些有的没的了,接下来回顾一下自己大学学习计算机的经历。

CS 之路

其实我成绩只是一般般。和某些大学生一样,上课睡觉打游戏,考前三天临时抱佛脚……但感谢伟大的互联网,感谢这个有着开源分享精神的时代,让我课余能够在网上学点东西。

我觉得以成为一名合格程序员(砖工)为目标的大学生涯应该打下的计算机基础主要有下面这几块:

  • 编程语言
  • 数据结构与算法
  • 操作系统
  • 计算机网络

编程语言主要指对语言特性的理解。现代程序语言的诸多特点,例如递归、函数、循环……是前人在实践中一点一点摸索出来的。如何利用诸多特性降低你代码的复杂度,如何少在语言层面上埋雷,这都是搬砖的基本素养。MIT 一本经久不衰的好书《计算机程序的构造与解释》就基于 Lisp 语言严肃讨论了这些问题。

数据结构与算法主要是看 Coursera 上 Princeton 的一门课《 Algorithms 》学的。没啥好说的,这课 Java 语言描述的,还搭配有精心设计的编程练习,可在线自动评分,超级良心,学起来很舒服。

至于操作系统和计网的学习真的是非常辛酸。刚开始看的是 CMU 的 《深入理解计算机系统》,然而只是略读,很多 lab 没有完成。计网也只是简单地读了一些入门书籍,比如《图解 HTTP》(作为后台开发这完全不够用)。实习面试基本上问的都是这些东西,最后都死的很惨……后来在实习公司导师的推荐下读了《 Unix 环境高级编程》和《 TCP / IP 协议详解:卷1》。前者对于从用户层面理解 Linux Kernel 的用法真的很有帮助;后者更多是当作工具书来用,遇到哪一个方面的问题就搭配 RFC 去阅读相关协议的详解。

当然了,计算机科学博大精深,编译原理、图形学等等也是很重要的一环。不过在我看来它们更多是一种屠龙之术,如果不从事相关领域的工作的话,用到的机会几乎没有。这些东西带来的帮助主要来自于思考问题的方法吧,对于普通码农也是有一定价值的。有空也想把龙书再细细看一下。

还有现在一片红海的机器学习,当年只是作为调包侠浅尝辄止而已。有兴趣可以玩玩,但并不想当作主业,一是自己数学基础不够好,二来毕竟竞争真的太激烈了。

不管怎么说,我觉得写代码真的是一件很有意思的事情。编程本身实际上只是一种工具,这种工具极大地拓宽了人类的记忆力和智力的边界。编程之于现代人,犹如骑马射箭和钻木取火之于原始人。但我大学四年只是入了个编程的门,并没有在某个领域深耕。甚至像操作系统之类的重要课程还需要重新深入学习。

很遗憾的是,作为科班学习计算机的时间算起来其实只有大二大三两年,其中又有不少时间在补课,错过了很多像 ACM 这样的机会。

其它

大学期间好像就没有什么特别重要的事情了。打游戏,读书,出去旅游,参加一些小比赛…… 如果说有什么特别的改变的话,作为一个普通人,心中对这个世界还有很多的疑惑,需要养成读人文类书籍的习惯来解决自己心中的问题。

啊,还有遇到了很多好朋友,其中一些已经在友链里了。

期许

正式结束了大学生涯,开始了作为社畜的生活。之前实习的一段时间很明显能感受到社畜生活带来的问题。每天上上班下班打打游戏就过去了,缺乏学校里学习的氛围,与人的沟通也明显少了很多。

对于未来还有很多想法,除了工作上的任务之外,给自己的下半年定一些小目标吧:

  • 学习 Rust
  • 想了解一下 kv 存储 & 数据库相关的东西
  • 坚持锻炼。杭州的夏天太热了,下周试试晨跑会不会好点

大概写到这里吧,不敢再立 FLAG了。其实还有很多更长远的对未来的期望,但是不宜写在本文,哈哈。


大学四年,弹指一挥间。那些在课堂上刷微博的日子,凌晨在宿舍写代码的日子,在鲁磨路和沙湾村吃烧烤的日子,就像航迹云一样,划破天际,然后一去不复返了。

标签:

更新时间: