聊聊基础知识对任何一个行业的重要性

最近这段时间没有关注什么新技术新事物,相反,我开始研究起以前大学里面的课程。以前大学里面学的课程,完全不知道为什么而学,只知道是基础,没有任何感触。现在回过头来看,我终于理解了为什么会安排这些课程。

如果不是参加工作,如果不是有了兴趣,如果不是到了一定的瓶颈,是很难理解基础知识对于任何一个行业的重要性。我以前一直以为基础知识就是枯燥的,因为教科书实在是看不进去,直到我遇到了Head First系列的书籍。我是在图书馆无意间翻到了一本Head First Networking,是一本讲深入浅出网络的书籍,比较适合我这种网络新手小白看。我第一次感受到原来技术书也可以看得这么津津有味。现在回过头来看,正是这本书促使我又买了好几本关于网络的纸张书。我以前一直对实体书呲之以鼻,觉得有电子版看为什么要浪费这个钱,但是现在不这么认为了,相反,真心觉得实体书真的不是电子书能替代的。实体书可以做笔记,可以划重点,可以做习题,可以夹书签。总之,电子书给不了我这种原始的感觉。要不是书包里装的书太重了,为了减负,有些厚的书就选择电子版了,我更倾向于全部看实体书。

豆瓣特地去看了一下Head First系列的评分,评价都出奇的好,包括我现在正在看的这本Head First C,中文名嗨翻C语言。我不得不承认,这本Head First C我看的是电子版的,因为图书馆实在是找不到(有是有,但是不知道被人放哪里了,这里不得不吐槽一下借阅人的素质啊,看后就随便乱放)。而我已经买了好几本网络书籍了,每一本都那么厚,都可以看好久。为了不想做一个买书如山倒,读书如抽丝的人,我在网上下了电子版,没想到是极高清的。如果是要看电子版的话,如果原版是英文的,极力推荐下英文版的。因为中文版的电子版影印的质量实在是太差了,而且大部分翻译的都不咋地(虽然我的英文水平也不咋样,但是我还是看得懂在说什么的)。

说回基础知识,第一,我想学好网络,我也不知道为什么,莫名奇妙地就喜欢上了网络,可能是被翻墙逼的吧,以前大学里完全没感觉。还有一个可能是对网络安全比较感兴趣,有种黑客的刺激感。第二,我想学好一门底层语言。为什么是底层语言?可能更接近于计算机的本质吧。很多人都说底层语言难,我以前也是这么觉得的,但是现在看看指针,也没有想的那么难了,可能书讲得比较好,怪我以前看书少吧。第三,我想学好算法。很多人提到算法都会头痛,我以前最多就是死记硬背,为了应试而应试。但是现在我想好好去理解算法,理解算法背后的目的是为了什么,不再为了功利,而是发自真心的想了解。不敢说能吃透多少,但是至少尽自己所能吧。第四,我想了解计算机操作系统。现在定这个目标有点远,因为算法都没开始看,更别说操作系统了。作为一名程序员,如果只了解软件层面,不关心硬件层面的知识,那也始终是个半吊子。

有些人可能会说,一个人的精力是有限的,这辈子只想专精一样东西。我觉得这没错,不管是专精也好,还是博览也好,发自内心的感受就是真的感受。不要把一种价值观凌驾于另外一种价值观之上,是对一个人起码的尊重。这世界上本来就没有价值观的高低之分。

这里举出了以前大学里面的一部分课程。现在回过头来看看,确实都是根基啊,根基没打住,就想造高楼,迟早有一天会跨。我也不再朝三暮四了,一会想做运维,一会想做网管。我目前状态下最不想做的其实并不是程序员本身这个职业,而是不想做一个只会搬运Github代码的机器。归根到底就是我的基础太差了,只能复制代码,却不能复制思想。

而且我也很讨厌国内的大环境给程序员贴上的标签,大部分程序员自嘲的背后,其实是深深的无奈。相较于国外浓厚的编程氛围,国内的大环境显得太功利了。我们不能以一个人的收入来评价他的生活质量。程序员所谓的工资高的背后,其实是自由时间的缩短换来的。不喜欢忙碌,喜欢慢节奏的,那就不要去追求一份高工资呗。这个社会上就是有不同工种,不同节奏,不同生活方式的人群,选择你觉得舒服的生活方式,才是对自己的负责。

总而言之,我是以前好的技术书籍几乎都没看过,现在我要慢慢拾回来。可能有点贪,容易嚼不烂。那就慢慢来吧,总之,我现在的生活目标就是把基础给打牢了。人啊,必须得给自己定一个目标,不然容易胡思乱想。

avatar

chilihotpot

You Are The JavaScript In My HTML