昨天想了整整一宿,最后写下下面这些对于大学学习生活的回顾与反思。觉得作为一个“过来人”很有必要将一些问题说给未来将要毕业的同学,希望能够吸取
我的教训,少走些弯路。同时以此为鉴,今后努力的改正、提升自己。(没兴趣听我白话者可直接跳读到第六部分总结)
大学生活马上就要结束了,这里不禁感叹时光飞逝,物是人非……
记得刚刚踏入大学校门的时候,心中踌躇满志,虽然那时甚至不知道C语言是什么东西,但是仍然对于自己四年后的形象充满了无限的憧憬:
雄厚的基础知识,良好的学术能力,很高的技术才华,未来之科学栋梁等等……
而如今的状况却是:为了得到一个可以糊口的IT民工职位抓破头皮,郁闷与苦恼中为得到一个工作机会而暗自庆幸,至于什么专心学术,什么科学栋梁,似乎距
离自己越来越遥远。
直到此刻,我仍然不认为自己的大学是完全堕落的,我也不认为自己读的书是无用的,我更不赞成自己没有学习计算机科学的资质,那么问题
究竟出现在什么地方?我想这里有很多原因,绝大部分是自己的,但绝对不能忽视环境的因素。
1. 基础知识薄弱
在我东奔西走找工作的时候,才真正的体会到自己原来喜欢炫耀的基础知识是多么的薄弱,而他们又是那么的重要。我曾经在面试时因为说不清进程间的通信机制
而当场被无情的BS,也因为对于自己基础能力不自信而放弃一家很牛逼的公司研发部提供的笔试机会。
先要谈及计院的一大问题。其实在这里真正对于计算机感兴趣,并且肯于专心研究,搞学术的学生真的是凤毛麟角。大环境是普遍是网游成风,腐败猖獗。 真正
的没有几个人肯安下心来读书,即使那几个老老实实听课的 “ 好学生 ” 也只不过是为了一个高高的 GPA ,一个可以在家长同学面前显摆的奖学金证
书。而真正希望学东西,做学问的人太少了。在我找工作的过程中,手中握着一摞奖学金证书,后来被证明绝对是废纸,任凭你怎么吹嘘自己的成绩,没有单位会
真的拿来仔细的看上一看。
回归正题,什么才是真正的基础扎实?我的理解是不仅要牢牢的掌握大学课本中关于计算机核心课程的理论知识,而且还要适当的进行深入。对于该方向非常重要
的思想、名词、技术都要有良好的把握。比如可以随手写出快速排序、哈希查找等经典的常用算法,熟记线程与进程的概念、他们的差别,并且能够解释清楚诸如
僵尸进程之类的问题。会 Linux 的不仅仅是就会几条 shell 命令,或者干脆就会装个系统。用 C++ 的不仅仅要会语法(估计这是绝大多数
毕业生对于 C++ 的理解程度),起码要了解一些常用的标准库,知道什么是 STL ,了解些基本的 OO 思维方法。学过网络的最起码要用过
socket ,了解数据库的不能仅仅就会写几个 SQL 语句,背两条范式等等。
说到这里不禁有点激动,前几天在一个 IT 论坛上看到一个关于大学读书无用论的帖子。说读书无用的人这些基础知识掌握的恐怕也不怎么样,连基础的东西
都没弄明白怎么好意思说自己读过书?没读过书怎么他妈的好意思说读书没用?!其实不是读书无用,是肯安心读书的人太少,而书读的足够的人更少。
倘若没有这些基础,仅仅会用这个工具,那个框架,充其量也不过是个 IT 民工,今后的发展必定受到制约,选择只有三条: 1. 做一辈子 IT 民
工 2. 将大学中欠下来的债补上 3. 改行
这里我不想说太多,话归正题。如果要我重新的去选择,我一定在学习每一门课程的同时尽量的找到相关的资料,扩展每一个话题。同时,将一些最常用的思想,
技术,方法记录下来,并且苦练到可以熟练应用的地步,并且时常的加以回顾。真正基础雄厚的人就应该是可以将常用的基础性知识熟记成诵的人,提到一个基本
的名词或者话题能够将其来龙去脉解释清楚的人。
我的教训,少走些弯路。同时以此为鉴,今后努力的改正、提升自己。(没兴趣听我白话者可直接跳读到第六部分总结)
大学生活马上就要结束了,这里不禁感叹时光飞逝,物是人非……
记得刚刚踏入大学校门的时候,心中踌躇满志,虽然那时甚至不知道C语言是什么东西,但是仍然对于自己四年后的形象充满了无限的憧憬:
雄厚的基础知识,良好的学术能力,很高的技术才华,未来之科学栋梁等等……
而如今的状况却是:为了得到一个可以糊口的IT民工职位抓破头皮,郁闷与苦恼中为得到一个工作机会而暗自庆幸,至于什么专心学术,什么科学栋梁,似乎距
离自己越来越遥远。
直到此刻,我仍然不认为自己的大学是完全堕落的,我也不认为自己读的书是无用的,我更不赞成自己没有学习计算机科学的资质,那么问题
究竟出现在什么地方?我想这里有很多原因,绝大部分是自己的,但绝对不能忽视环境的因素。
1. 基础知识薄弱
在我东奔西走找工作的时候,才真正的体会到自己原来喜欢炫耀的基础知识是多么的薄弱,而他们又是那么的重要。我曾经在面试时因为说不清进程间的通信机制
而当场被无情的BS,也因为对于自己基础能力不自信而放弃一家很牛逼的公司研发部提供的笔试机会。
先要谈及计院的一大问题。其实在这里真正对于计算机感兴趣,并且肯于专心研究,搞学术的学生真的是凤毛麟角。大环境是普遍是网游成风,腐败猖獗。 真正
的没有几个人肯安下心来读书,即使那几个老老实实听课的 “ 好学生 ” 也只不过是为了一个高高的 GPA ,一个可以在家长同学面前显摆的奖学金证
书。而真正希望学东西,做学问的人太少了。在我找工作的过程中,手中握着一摞奖学金证书,后来被证明绝对是废纸,任凭你怎么吹嘘自己的成绩,没有单位会
真的拿来仔细的看上一看。
回归正题,什么才是真正的基础扎实?我的理解是不仅要牢牢的掌握大学课本中关于计算机核心课程的理论知识,而且还要适当的进行深入。对于该方向非常重要
的思想、名词、技术都要有良好的把握。比如可以随手写出快速排序、哈希查找等经典的常用算法,熟记线程与进程的概念、他们的差别,并且能够解释清楚诸如
僵尸进程之类的问题。会 Linux 的不仅仅是就会几条 shell 命令,或者干脆就会装个系统。用 C++ 的不仅仅要会语法(估计这是绝大多数
毕业生对于 C++ 的理解程度),起码要了解一些常用的标准库,知道什么是 STL ,了解些基本的 OO 思维方法。学过网络的最起码要用过
socket ,了解数据库的不能仅仅就会写几个 SQL 语句,背两条范式等等。
说到这里不禁有点激动,前几天在一个 IT 论坛上看到一个关于大学读书无用论的帖子。说读书无用的人这些基础知识掌握的恐怕也不怎么样,连基础的东西
都没弄明白怎么好意思说自己读过书?没读过书怎么他妈的好意思说读书没用?!其实不是读书无用,是肯安心读书的人太少,而书读的足够的人更少。
倘若没有这些基础,仅仅会用这个工具,那个框架,充其量也不过是个 IT 民工,今后的发展必定受到制约,选择只有三条: 1. 做一辈子 IT 民
工 2. 将大学中欠下来的债补上 3. 改行
这里我不想说太多,话归正题。如果要我重新的去选择,我一定在学习每一门课程的同时尽量的找到相关的资料,扩展每一个话题。同时,将一些最常用的思想,
技术,方法记录下来,并且苦练到可以熟练应用的地步,并且时常的加以回顾。真正基础雄厚的人就应该是可以将常用的基础性知识熟记成诵的人,提到一个基本
的名词或者话题能够将其来龙去脉解释清楚的人。