计算机入门的一点经验和对迷茫的一些分析

最近感觉自己在计算机方面有点入门了,而且恰好前几天和研一的新生聚餐,被问道一些所谓的“经验”方面的问题,所以在这里总结一下在前一个阶段自学计算机的一些尝试,也希望给看到这篇博文的自学计算机方面的人一点参考吧。

首先说明一下,自考研到目前为止,自己看过的书籍(这里所指的看过,是几乎都看完了或者看完至少一大半以上,这样我才能对书做一个评价)。

考研考的是东南大学计算机的自主命题935,科目包括数据结构,计组,操作系统。我用的书是根据统招408来的那三本,即:

同时参考了程杰所作的那本《大话数据结构》,不过当时没敲代码(这点很不对)。当时备考还用过配套的王道的那三本书,就不一一列出了。

复试是C++笔试,用过的书分别是:

之后研一,看过的书分别有:

现在正在开始补数据结构算法方面的内容,看的是《数据结构与算法分析——C语言描述(原书第2版)》

我所经历过的阶段这里也说明一下,如果你也是这些方面的初学者,也许有点参考意义。

  1. 上网搜集资料,查找经验。网上的推荐书籍有一堆,每个方面的书籍都有很多经典之作,比如计算机入门必看CSAPP啦,C语言是K&R啦,C++是《C++Primer》啦,算法必须看《算法导论》啦,SICP绝对是培养编程思维的神书之类的。总之,网上有浩若烟海的经典书籍是必读的。然后,每本书自己都想细读一番。
  2. 自己实践。显然,在本科阶段把上面这些书自己研究一遍还有点可能,但是在研究生这个阶段,有了导师给布置的任务,而且还是初学者,不太可能把这些一一翻阅。于是开始找一条收益较高的方案。网上推荐的是快速入门C++看《Accelerated C++》,我也是从这本书开始重新敲C++代码的。同时快速的翻看了一遍《CSAPP》。
  3. 入门,有了自己的学习方向。这也就是现在了,当然以后的方向可能还有变化,不过确实现在感觉对计算机编程方面自学有了一点感悟了。

如果你也是初学者,我的一些建议是:

  • 看书尽量找国外书籍看,国内的书籍大多数不适合自学。
  • 如果你的基础确实不太多,可以从以下思路考虑:一门编程语言,数据结构和算法,操作系统,计算机网络。当然,这个更多的是针对互联网企业的后台开发岗位吧,确实我对前端和APP开发不了解。
  • 每个方向的书籍两本就好,一般书籍的侧重可能不同,交叉着看能帮助理解。如果书籍太多的话,可能就会脱离自己上机实践了。前期你不可能看完那么多书的。经典书后面的课后习题,尽量做。
  • 编程语言和算法互相学习可能效果更好一点。比如看数据结构的时候用编程语言自己实现一遍,多用一些编程语言的一些知识要点。同时,看到数据结构,算法的时候,可以考虑到lintcode上面刷刷类似的题目。
  • 从网上大神的反馈和校招的情况看,编程能力、算法等基础很重要。

推荐的书籍以及考虑的参考顺序:

编程语言方面,因为我是看的C/C++,所以对JAVA不太懂,不过熟悉哪门语言都是要大量的敲代码,而不仅仅是看书。下面C/C++如果没时间就先看C++吧。看C的话主要是关注指针那块。

  1. 《C程序设计语言(第2版)》K&R那本
  2. 《C和指针》。上面那本书讲的太精炼了,参照这本书可以对C有一个了解
  3. 《Accelerated C++》。这本书最大的好处是把C++很多常用的语法和STL的一些用法给呈现出来了,而不像普通的C++书籍那样按部就班罗列知识点。
  4. 《C++大学教程》。和上面那本书对照着看。

再强调一遍,编程语言练习也就是自己多敲代码才是重要的,不要抱着书看完一遍又看一遍。

数据结构和算法:

  1. 《大话数据结构》,程杰。入门算是不错的书了,有C的代码,自己敲过一遍理解更深。
  2. 《数据结构与算法分析——C语言描述(原书第2版)》。我选这本书是因为它比较薄,上来直接啃《算法导论》我个人感觉有点太难了。

计算机基础书籍:

  1. 《深入理解计算机系统》。这本书入门计算机绝对没问题,包括了操作系统,汇编,硬件,还有网络的一些简单的东西,现在既然硬件那块需求不大,可以暂时不看吧。

我这条路在入门上面绝对能走通,不过每个人选择的书籍可能不同,也不用都照着来。方向大抵如此,同时,给出一个我看过的较全的书单:《程序员必读书单 1.0》。同样,这个书单也是仅作参考,前期你不可能都掌握的。别贪全,前期要把那些常常出现的问题给解决。

同时,再把自己所说的“入门”给定义或者说明一下,给你一个参照,以防你也是初学,而我又太low,把你带坑里。

之前,我敲代码时出错了是照着书上给的代码改自己的代码。有些确实是不懂,有些是感觉进度确实不能太慢,不然容易陷入细节的思考,还有就是时间拉太长了可能会学了后面的忘了前面的。现在,敲代码会自己设置断点改错,能够明白一些C语言的指针方面错误所在了。

简单的说就是:之前是被动输入,现在能主动输入了。即,把一些从前学过的C++、数据结构的知识进行组合,实现一些自己想到的功能,并且改错的时候能想通一些指针的特性了。这样融合起来学习,能够更好的理解书上的知识。

所以我感觉自己入门了。

我博客中前两篇文章的内容是二叉树的实现,本来其实感觉太简单不想贴出来的,不过想想可以给这篇文章做个铺垫。不信你可以对照着看一下,把《二叉树的实现以及相关操作C/C++》中的代码改写成《二叉树类的实现》中的类,就会遇到很多难题。我自己写的时候想避开《C++大学教程》上的一些方式,不过最后还是没避开,用其他方式我实现不了。当然,也许你写的代码会比我的更简洁。

同样,这里给出一个我看过的不错的入门建议,可以参考:如何从只会 C++ 语法的水平到达完成项目编写软件的水平?。我有空也会尝试的。

最后想到昨天有几个新生说迷茫,正好我也借这篇文章谈谈这个话题吧。

迷茫很正常。研一的新生可能因为刚刚开学,环境变了,同时看到以前的同学或者现在这个行业工作的人们工资很高,而自己能力不足,对未来有点担心。同时,可能是有了导师的直接管理而且感觉导师分配的任务和自己想要尝试的事情不太有交集。简单地说,其实迷茫就是对未来或多或少的担忧。

未来谁知道呢?对吧。没发生的总是没发生,谁也不能说自己的努力方向一定正确,自己的愿景一定实现。

仔细观察我们可以发现,除了大学之前我们没有过太多的迷茫感,在高考填志愿那时开始,很多人多少都会对未来有些迷茫了。因为在那之前,我们更多是在既定的轨道被动进行教育的。我们在规定的时间上课,规定的时间放学,规定的时间完成作业,每隔一段时间会被排名,从而评估你的成绩。更重要的是,那个时候我们不用直接为自己的行为负责,因为父母会给我们埋单。大学之后,我们要进行更多的选择,对自己的行为负责。同时,评估人的标准渐渐变得不那么单一了:有的人社团混的很好,人际交往让人羡慕;有的人会玩乐器,乐队在自己学校小有名气;有的人竞赛屡获佳绩,让人自愧不如。这些都会使我们努力的方向迷失,从而感觉迷茫。

现在,可能你迷茫的是一些学习方法。未来,你可能还会迷茫自己的择业,孩子的学校选择,不同城市到底安家到哪,等等。

那么在迷茫的时候,该做些什么呢?

  1. 上网搜集你所想要努力方向的资料,查找经验。
  2. 进行实践。
  3. 将自己的实践和努力的成果进行分析,修正。
  4. 重复进行2,3步。

然后,你也会找到自己的方向的。所以我在开始将我努力的过程给描述了一遍。

这里再分享一个经验:迷茫的最大敌人是拖延。

相信聪明的你,能更快地找到属于自己的那条道路。

如何快速学习

最初想到这个问题是因为自己跨专业到了计算机。众所周知(如果你不知道,我现在一说你也就知道了:P),计算机行业的发展是非常迅速的,每年都有很多新的技术产生,这样计算机行业对其从业者要求就会很高,因为他们要不断地学习新的技术来应对日新月异的技术更迭。

看了很多计算机专业的招聘以及网上对计算机从业者的要求,发现学习能力都是一个合格的程序员的必备能力之一;同时因为自己跨专业,发现和身边科班出身的同学们在专业方面的能力差别很大,也希望能更快的学习到更多的知识,所以在自学计算机基础方面的课程时也注意思考“如何快速学习”这个问题。在经过了一年的学习,阅读了很多著名程序员的博客之后,将一些经验和思考总结在此。

从本质上说,我个人认为,是不存在“快速学习”这个概念的。一个人在某个方面学习的速度:1)和他在这个方面所花去的有效时间是成正比;2)和他之前对这个方面的知识储备是成正比的。

这里面的第一点比较好理解,对于大部分人而言,你在一个方向面花去了多少时间,就会有多少收获。不论是学习知识、技能还是你对自己兴趣爱好的追求。同时,我们生活中一定观察过这样的现象:有些人(也可能是自己)在某些学科花费了很多时间,但是收益却不明显,很大的原因就是这些花去的时间并不都是有效时间——真正用于这方面知识积累的时间。最常见的例子就是,中国很多大学生学习英语好多年,然后有很多人竟然连四、六级都没能通过,就更不用说能够流利使用英语了。根本的原因之一就是,他们并没有真正的想去学习(使用英语解决问题的技能),都是抱着应付考试的心态去努力(当然还有一个重要的原因是方法不太恰当)。

对于第二点,这也是我跨计算机专业之后才发现的。当时还有一个同学也是跨专业,但是他很快就入门了,而且学习效率更高。经过比较,我才发现这个区别的:虽然同样是跨专业,但是他的本科学校更好(高中学习更好,这也意味着他自我管理等等方面会好很多)、要求更高,本科学习过《离散数学》、《C语言》等等科目。这些都算是计算机方面的基础性学科,很多计算机学科的学习有了这些知识都会事半功倍的。

当然,学习的速度还和方法有关,甚至有很大的关系,不过当我们刚刚接触一门学科的时候,我认为方法的作用是不太明显的。因为你对这个方向上没有太多的认识,都是看网上或者听前辈讲述方法,真正重要的东西往往都要自己有了一定的知识积累,才能感觉到学习方法的重要。

将以上的内容进行总结,可公式化表示为:

:学习速率; :方法系数; :有效时间; :初始的知识储备,甚至可以包涵一个学习者的整体能力。

因为,学习速率和方法成正比,和有效时间成正比,初始的知识储备或者一个学习者的整体能力会对初始学习速率有影响,不过对于学习速率的影响总是有一个范围。

那么如何做到“快速学习”呢?

我个人认为,要做到快速学习,一个学习者(尤其是一个领域的初学者)应该具备以下能力或者习惯。

1)良好的自我管理能力。

前面说了,学习速度和花去的有效时间成正比,那么就需要良好的自我管理能力来约束自己,不要终日拖延,不要有三天打鱼两天晒网的现象,要能够静下心来学习。同时,在刚刚进入一个新的学科的学习是有很多困难的,尤其是自学。我相信大家都有过类似的经验:在初学某样事情的时候会觉得这个事情特别困难,这因为初期时我们对这个方面的重点和学习技巧掌握的太少,这个就要多看看前人的经验了。

2)查找所学行业的经验,找到适合自己的方法。

我们都是站在巨人的肩膀上去寻找前方不太清晰的路途的。很多问题已经有了相当多的经验可循,而且现在互联网发达,遇到事情之前上网查查,寻找一下类似的经验,可以省去很多不必要的弯路。而且每个人学习的方法不同,学习的习惯不同,有人愿意早起,有人愿意晚睡,看看其他人的经验结合自己的实际来做出自己的计划是非常重要的。这个有点像考研的时候你会上网或者向专业学长询问考研经验。这点对于新学习一个行业非常重要。

3)找到领域内长期不变的东西,学扎实。

每个领域都有很多知识是长期沉淀下来的产物,而且因为沉淀了很久,这些知识变化很慢,甚至是不会改变的了。我们都应该有这样的经历,在一门课程刚开课的时候,老师都会给我们介绍书籍,而这些书籍往往都是很厚且较为久远的书籍了。其中一个原因就是,一门学科发展到一定的阶段,必定有很多知识是研究的很透彻的了,不太容易改变。不过这些知识往往是很重要的,新的技术很多都是这些知识在不同方面的应用。当然还有一个原因可能是,任课老师一般最少都比我们大个10岁8岁,他们看过的书籍肯定都是较为古老的书籍(这个是针对计算机,其发展也不过几十年,而且这几年国内有众多的相关书籍出版,所以10年前就比较久远了,有些传统行业的学科肯定在高校学习到的知识会更古老)。

4)保持自我充电的习惯。

利用业余时间扩大不同学科的涉猎,可以针对自己行业周边学科优先选择。这些学科不要求自己都能很清楚的理解,但是要对一些学科有一些通识性的认识(脱盲)。这样,在自己想要学习新的知识的时候,会发现很多东西是自己已经了解的了,这样在前期学习的时候困难曲线会平缓很多。

如果还要加一条的话,那么就应该是热爱这个方向。当你学习一个自己喜爱的学科的时候,会愿意在其中投入更多的时间,并且乐此不疲。长此以往,你的积累会超乎自己的想象的。

当然,这仅仅是我根据以往的观察以及这一年经验所思考的结果,一定有很多地方需要修正,甚至有些观点可能是错误的。以后也会在有了新的感悟之后,再来更新以往的认识的。

我们的大学应该怎样度过

不同人过法不同。

大学阶段应该怎样度过,取决于你想成为什么样的人。但是很多学生(包括当时的我在内),由于个人见识和家庭条件的限制,其实是不太清楚自己想成为什么样的人(其实除了少数人,大部分学生也不会考虑到这么遥远的课问题的),就不太清楚自己该怎么度过。所以有些学生会因为参加了各种社团而荒废了学业,有些学生会沉迷于游戏连身体都弄坏了等等。这些我都迷茫过,也都思考过。现在我上研究生,感觉以前有些方面可以做的更好,但是确实时间回不去了,于是想把一些思考结果分享一下,也许能给后来进入大学阶段的学生有个方向性的指导。

因为每个人因为自身经历、条件不同,所以不可能适用所有人,所以我先把大学的阶段是什么样给介绍一下,也便于自己会思考、有想法的同学找到更适合自己的生活、学习方式。

大学阶段,对于大部分学生而言,是这样的一段生活:

  1. 第一次离开家,来到一个遥远的城市,感受不同的文化,和不同地域的同学居住在一个宿舍中。
  2. 第一次有机会,可以自主选择:选择课程、选择社团、选择朋友当然还有选择男女朋友以及是否要交男女朋友。这是一个接近自由的环境,所以这也是一个更需要自律的环境。
  3. 可能是最后一次,有如此长时间的宽松的环境,可以自主支配 ,可以试错。因为可能不少人会选择大学之后工作,如果选择的是在中国读研究生,就我现在知道的情况,工作还是挺辛苦的,相比本科阶段,自由支配的时间少很多了。
  4. 你可能在这个阶段形成比较完整的一部分世界观。当然,你的世界观还会随着未来的见识的丰富而完善 ,但是这四年,会形成一些基本的框架,甚至对于有些人而言,可能就会把世界观写封闭了。

好了,知道了这四年的特殊性、重要性,就更加容易讨论一些问题了。

一、生活

你可能会在一个语言、饮食习惯完全不同的城市上大学,这是一个很好的机会去认识不同的文化,增加自己的包容心。你的室友可能来自五湖四海,你会了解到不同地区的生活习惯,会分享自己家乡的乡土人情,这是每一个大学生刚进校都会接触到的事情。随着社会人口流动性的提高(当然,我个人感觉中国的流动性还是太低了),你会在未来和一些不同生活习惯、饮食习惯的人工作、生活,以一颗包容心对待不同的个性是非常重要的。比如我在大学时期,虽然没有到一个离家特别远的地方上大学,但是班级里面从内蒙、陕西到广州、海南的同学都有,感觉到这是一个不错的经历。

这四年是一段自由的时光,很多事情都可以自己决定,但是也容易因为自己的懒惰而浪费了青春、甚至是放弃了提升自己的最好的时期,所以这段时间一定要养成自律的好习惯。自律不一定是每天都按照一个点睡觉、起床,但是一定要能够明辨是非,在一些时候能够做出比较正确的选择。上大学之后我看过很多同学在玩游戏上面花费了很多的时间,不能说每个人都是在浪费时间,但是在我看来大部分人在这上面投入过多精力,尤其是那些整天熬夜的同学。而且你会发现一些有趣的现象,那些出色的人,即使玩游戏都玩的出色,那些愿意消磨时间,对很多事情得过且过的人,在玩游戏上面都表现的不好。当然,玩游戏本身没有错误,但是如果你不是想要成为电竞运动员,长时间投入精力,甚至熬夜玩游戏,都是不太值当的。

是否要谈恋爱呢?这个问题也是我想了很久的一个问题(另一个想了很久的问题是是否应该参加社团,下面会单独拿出来讨论,这个问题没有单独讨论的原因是因为它更加私密,越私密的问题越不容易一概而论)。我属于比较贪玩的那种家伙,然后本科专业的男女比例是35:1,如果要找妹子要参加社团或者更多的聚会活动等等,我感觉这有些浪费时间了,所以就没花太多的时间在这上面。大三、大四快毕业那会,看了一些给大学生的建议,有的说大学这个阶段一定要谈一段简单、纯洁的恋爱,学习如何照顾人、如何倾听另一半等等的益处,搞的我感觉自己大学有点不完整。但是到了研究生阶段,随着一些生活态度的改变,世界观又有了新的更新之后,又有了些新的思考。

谈恋爱确实没有想象中的那么必不可少。大学阶段确实比较单纯,是个找寻人生另一半的好时光,有各种人以各种理由说明找个对象多么重要。但是如果你发现了更大的世界,心中感觉自己以前基础较差,很多方面还需努力,那么还是在奋斗个几年吧。当你因为自己以往的不足和当下想要努力所做出的挣扎搞的满心烦躁之时,是不太可能处理好你的感情的。「人生若只如初见,何事秋风悲画扇。等闲变却故人心,却道故人心易变」这两句词大家应该都熟悉,我个人想到的,就是恋人其中一方或者两方,见识到了更大的世界,心中的努力方向变更了,双方的爱情观念不同了,所以分开了。亲密关系想要维系,应该是双方的成熟程度相近,并且成长速度都差不多的。如果一方努力另一方不愿突破自我局限,那么保持关系会很累的。而且,当你想要发愤苦读的时候,也许其他人有这样的想法呢,那么未来你会遇到的也是这样的人,你未来还会遇到他们的。当然,这个还看个人,每个人有不同的抉择,人生的选择总是在不停的权衡利弊得失,即使你没有显性的思考,潜意识里面肯定也是有一些权衡的。我所得出的结论是,谈恋爱没有想象中的那么必不可少。

二、学习

无疑,所有人都需要面对生活这个课题,每个人都会有社交,所以我把生活放在第一位来讨论。生活中最重要的部分,可能就算学习了。

我在《为什么我们的工资没有别人高?》中讨论过,未来别人付给你工资,主要就是因为你在某一领域或者某些领域,掌握了相对系统的知识。而上面说过,大学阶段,你拥有一个很长,而且可以自己支配的环境。在这样的环境中,你可以自己选择喜欢的方向、科目,系统的学习某些知识。

当然,这个方面每个人的喜好不同,不过我认为概括一下,应该不外乎以下几个方面:

  • 科学方面的通识教育
  • 生活技能的积累
  • 某一专业知识的积累
  • 社会实践的经验积累

    现在我来逐一说明。

首先是科学方面的通识教育。这个方面不是我们所说的数学、物理、化学等等知识,而是一些种类的入门级知识。比如,逻辑清晰绝对是科学方面的最重要的一个方面,而批判性思考又是科学里面很重要的思考方法。所以在大学阶段可以看看一些阐述科学、传授批判性思考的书籍。比如我以前看过的《学会提问》,感觉就是非常不错的批判性思考的书籍。同时,对我们生活影响较多心理学、经济学方面的一些入门级读物或者畅销书之类的也可以看看。比如心理学里面的《决策与判断》、《摇摆》、《心理学与生活》等,经济学里面的《微观经济学原理》等。其实如果你感兴趣,也可以看看哲学史,同学推荐我的《苏菲的世界》感觉也能看看。还有一个很重要的一点就是,应该看看关于生理健康教育(包括性教育)、中医是否科学等等方面的书籍或者讨论。就我个人而言(我是蚌埠的,一个小城市),以前家庭很多的观点,和中国现在一些尚未完全改变的一些错误的观念影响我们很多,但是确实有很多是不科学的。虽然不是所有我们都能改,都会去改,但是最起码我们应该了解一点吧。这些方面的书籍我确实没看过,就不推荐了,不过可以到果壳、科学松鼠会等等地方看看帖子。方向是,弥补一些我们大学之前,因为国家水平和家庭水平的现状,没有接触到的,但是应该接触的科学知识,理解科学的思考方法,学会独立思考。

第二个方面可以算是生活技能的积累。因为这个不需要特别刻意的花特别多的时间,而且在我看来,生活确实是生命中最重要的一个课题,所以我给列为第二条讨论。这个我想说的不算多,个人感觉离开了家,自己应该是一个独立成年人了,计算一些生活费用的开销,清洗衣物,关注自己的常用药品,定期整理自己书桌、电脑垃圾,每周做一些锻炼等等。总之,要学会照顾好自己。

第三点就是某一专业方面知识的积累了。我把这个列为第三点,有两个考虑:1.我个人感觉生活确实是生命中最重要的课题,没有之一。你怎么选择你的生活,才决定了后面的选择方向。2.有些同学(包括当时的我)应该上大学前没有自己感兴趣或者特别想努力的方向,到了大学才有了新的想法,但是与自己专业不符。基于以上两点,我将此排在第三。大学阶段,一定要系统地学习某一个方面的知识。学东西,越早越好。现在学习的技能,将是你以后从业的资本,你所赚到的工资,都是因为你所拥有的某项或者某些技能。显然,行业不同,薪资水平是不同的。当前,计算机、金融行业还是不错的,但是像心理学、生物等等专业的就业可能就不好。当然,这个也不是绝对的,不管你从事什么行业,你的薪资和你个人的能力绝对是成正相关的,而且,如果你真的是喜爱某个感觉收入不太好的学科,可以考虑读读试试的,如果成绩很好,家庭条件允许,出国读研、读博已经不是什么新鲜事儿了。如果能力足够,可以选择某个薪资不错的行业,然后业余发展自己的爱好,双管齐下,也是不错的。

最后,就是社会经验的积累。人总是社会的动物,不可能独立存在的。未来工作、生活,都要遇到不同的环境、状况。比如:你到医院排队不停被插队,你一直忍让还是强行理论;室友半夜结石疼痛难忍,叫救护车去ATM取款是否会把因为慌忙而忘记拔卡;自己一个人在陌生城市找路以什么样的语气,问哪些人能够更顺利;学车的时候(在某些不规范的场合、地方)是否遇到吃拿卡要(遇到所谓的潜规则)……这些都是我所经历过的,都需要细心观察生活中的琐碎细节才能更好的处理。所以这个也要多观察,别让自己吃亏。当然,不是也不去占人便宜。

三、社团

我本科没有参加过任何的社团,大三大四那会会考虑自己大学阶段过的是否完整之类的(比如也许我参加社团能遇到合适的妹子、找到一些志同道合的家伙之类),所以对这个也有一点看法。简单的说来就是:

  • 如果你学习踏实,本科不错,那么参加社团是个不错的选择。你可以认识不同的、有趣的人,拓展自己的视野,发现更出色的自己。
  • 如果你所在的学校不是特别好,整体平台不算高,而且自己又有自觉性能够努力看书,那么就发愤读书缩小大学之前的差距吧,不参加也罢。

现在的网络资源已经足够发达,很多东西都可以自己学习到了。

就我当时的大学而言,社团很多,但是正儿八经的没几个,而且都是耗费时间,那你去当廉价劳动力。即使到了后来当了主席能够指挥别人了,做的事情还是没有什么特别需要哪些能力的,提升的不多,有些东西通过观察、看书,也能理解。

当然,这个都是根据自己的特点,根据自己的喜好来的。比如你的学校可能不太好,但是某个社团确实精英云集(我个人感觉这个概率比较小),那么参加这个确实能学到不少东西,结交不少朋友。如果你确实学校不好(如果没有太好的标准,可以以你的学校是否是二本及以上来评判),而且没有太多的想法,那么就低头看书吧。相信我,机会总是留个有准备的人的。而读书,确实是最简单、有效,而且成本很低的方法。当然,我指的是比较正经的书,而且就赚钱这个功能性而言,非文学类的书籍才行,而且最好是领域内沉淀比较久的经典。

四、必学技能

想了想,因为我个人的价值观念(实现更出色的自己)和性格,自己想另外补充一点,感觉能够更好的提升自己,所以希望能够引起一些关注吧。

我个人感觉,如果想要人格独立,那么学会独处几乎是一个必不可少的阶段。什么是人格独立呢?我的理解是,自己有主见,在重大决策面前能够独立(不是独自,你会参考别人的意见,但不是让比人帮你决策)做出选择,自己在一些根本的问题上面有原则。学会独处能让你思考自己是谁,想成为什么样的人,哪些事情做的不对、哪些事情可以做的更好等等。这些都会在阅读、生活经历还有就是独处时思考自己的好恶、价值取向的时候,慢慢搭建成为较为稳定的框架。

英语。这个技能的作用几乎已经不用过多的阐述了,但是还有不少同学认为,如果自己不出国,或者工作之后不会用英语等理由说不学英语是可以的,那么真的有点可笑的了。研究生开始,你会阅读很多的英文文献,如果到时候再学,那么相当花费力气。互联网也将很多人在信息的获取面前变得平等的多了,你可能还会用英语搜索,或者通过网上的英语资源自学。当然,还有很多其它方面的。我想说明一点,千万别把通过四六级做为努力的标准,尽量多看看英文的网站,比如TED.com等等,练习英语的同时还能拓展视野。

融入团队的能力。很久之前,一个人想要做出很多的事情就不太可能了,更别说现在了。但是为什么我这边会再强调一下呢?因为现在上大学的同学们,很多都是独生子女,每个人在家受到宠爱,都有很强的个性,这很好。但是在团队中,总有些人有些奇怪的习惯、处事风格,要以包容的心态去面对。如果遇到了,尽量不要总是从自己的角度来说明自己受到了委屈,个性受到了压迫等等。所以大学是个很好的练习包容心的地方。

五、其他

也许看到这篇文章的你,可能还没有步入大学,也许大学阶段过半。但是有些未来的机会和选择,总是不确定的。比如我以前从未有过读博的想法,但是现在有了,遗憾的是,就算我能出国读博,因为跨专业太大知识没有积累,家里的积蓄也不能一直供我这样不停地试错,所以读博对于我来说性价比很低了。现在我将一些未来你可能遇到的机会给简单的写写。

1.读研与读博

上大学前就想到了读研,但是远远不会想到自己有想法去读博的。之前的一些想法确实太幼稚了,比如感觉研究生与博士生就是搞科研。

搞科研不假,但是对一个人发展的意义远不止于此。

1)你可以接触到更高的平台,认识更多志同道合的人,同时,你看那些出国读书回国创业的人,估计就是因为拓宽了自己的视野,学到了前言的技术,找到了更多的队友,而且遇到了投资人,才能将自己的愿景实现的。

2)如果你的科研方向和本科一致,而且功底较扎实的话,科研的任务还是能够顺利完成的。学校的环境更简单,你还有更多的时间思考自己。

3)科研本来也就是一种人生的经历罢?探索、坚持的能力,在哪都需要的。

2.关于出国

现在出国的门槛越来越低了。身边的同学出国的经验,让我对出国有了一些想法,总结到这儿。

1)如果家庭条件允许,出国读个好学校的研究生是比较划算的。英国等一些国家及地区的研究生时间比国内一些3年的研究生要短,而且学术氛围相对要好,你更早的毕业了回来拿着国外的证书,有更好的敲门砖更早的拿工资,不会亏的。比如我有个同学去的港大,价格相对去国外便宜一点,一年半毕业,文凭我想会比国内很多的高校的文凭更好一点吧。如果有机会,尝试着申请一下吧。

2)因为要申请好学校,所以,大学阶段的学分、绩点啥的,一定要保持不算低。开始你没想到出国,到时候有机会了,突然发现自己绩点等等硬性条件不够,后悔去吧。

3)申请国外高校,要英语的。

3.旅游

我个人感觉,在这段可以自由支配的时间里面,不管是因为现代化还是风景吸引你,到不同的城市,出去多跑跑都是很好的选择。你会丰富自己的经历,可以去看看未来想定居或者工作的城市,亲自去看看书中所描述的令你想去一探究竟的地方,和同学一起出行能够学习到teamwork,自己独行能够学习规划线路和应对一些想象不到的问题。总之,趁着年轻多跑跑。

六、一些问题

我为什么要啰嗦的写这些文字呢?就我个人的经验来看,大部分人是不会,甚至不可能照着这些方面都完成的,包括当时大学阶段的我。在那个时候,我看了李开复老师的《给大学生的七封信》、《做最好的自己》等等,同样也是从我个人的经验来看,虽然我没有照着这些做,但是确实收获很多:

1.拓宽了自己的视野。很多人不能实现更出色的自己,是因为他在一些黄金时期没有认知到更大的世界。如果让他发现了更广阔的空间,他可能在这段时间、精力都很充沛的一段时期,挣脱一些束缚。

2.发现了自己的不足,同时有完善的措施。
3.发现原来有些人,竟然是以这样的方式思考、审视自己的。

问:你可能会说,只要低头努力就可以了,很多人这样都成功了,看这些没用的是浪费时间。

答:有方向、有方法的准备一件事情,比起蒙头苍蝇似得乱撞,往往会事半功倍,更加游刃有余不是么?

问:我在其中没有给出特别详尽的计划与评价标准,这有什么用啊?

答:从我个人的经验来看,这样一份宏大的展望,详尽是没有用的。每个人想成为的自己,想要努力的方向都不同,我只是提出一些方向性的建议,希望能够拓展你的认知。变化永远存在,不可能有一份清单,能够适用任何人,任何情况的。

问:你这写东西网上都太多了,有什么不同么?

答:是的,这些告诫等等的每个人都能说出一堆,我个人是这样认为的:a.网上很多都是很有名的写的,我是个普通的学生,现在不停的突破个人的局限,探索更大的世界,实现更出色的自己。我写这些,希望让人感觉到,做到这些,不仅仅是那些少数的人。我在做更大的努力,是因为同学中,有人做的更出色。b.每个人给的建议侧重不同,这是我,以一个结束大学生涯不算久的研究生写的,也带有自己的价值取向。c.推陈出新,结合自己的经验,希望把踩过的坑给分享出来,希望有更多的人能够突破自我局限。

问:从语文的角度来说,这篇建议中没有重点,没有中心,什么都是泛泛而谈,那么有什么用呢?

答:我的中心是鼓励你实现更出色的自己。文中提出一些当时你可能没有在意到的局限,我将这些给列出来,希望你能考虑到自身的情况来审视一下自己努力的方向。一件事情有用没有,真的不好从一而论。况且,当你一股脑的只想着一件事情的时候,更容易选择性的无视其他方面的事实。

最后介绍一下自己的情况,看看能不能给大家一些激励吧。本科的专业叫做弹药工程与爆炸技术,大二大三班级第一,获得过国家励志奖学金,甚至因为专业特殊,大三下学期有西班牙爆破公司来招聘,有机会带薪去国外读研。但是自己感觉不是特别喜欢,而且现在计算机行业还算不错,所以跨专业到了计算机。我在探索更大的世界,去实现更出色的自己。

当然我说这些不是想说自己厉害啥的,只是想表明这样几个事实:

1.如果不是因为我当时坚持了自己,没有因为不喜欢自己的专业就给时间浪费掉,西班牙公司来招聘的时候能有机会么?

2.如果不是我在有些方面准备的相对充分,在面临考研这个选择的时候,我能够坚定的选择跨考一个几乎没有认知的行业么?我当时的大学同学中,很多人是不信想我会做出这样的举动的。对了,上面的文字忘了说句,不要相信大学就是尽情享受之类的言论。

3.相信我,我没有多厉害,或者多不厉害。我将一些努力过的途径,以及自己对自己努力方式的思考,写在这儿,如果你有些想法,评估了一些风险之后,为什么不尝试一下呢?

相信聪明的你,也能找到更出色的自己。

如何停止焦虑?

这是以前看过的一篇英文文章,原名为How to stop overthinking: 9 Simple Habits. 直译过来应该是《如何避免过度思考:9个简单的习惯》。当时感觉文章说的一些观点比较不错,而且是帮助人们提高执行力的,所以想到给贴出来。这是大概两三年前翻译的吧,英语能力有限,所以有翻译不恰当的地方欢迎指正。

以下是正文内容:

是什么阻碍了那些想要好好生活的人们的正常生活?

我认为,有个非常普遍、并且非常具有破坏性的问题就是他们想的太多了。

他们过度的思考了每个小的问题,直到这些小问题逐渐变大、变得可怕,然后就真的发生了。他们过度的思考了一些原本是是乐观的事情,直到事情变得不那么乐观。

或者他们过度的分析一些事情,以致他们错过了那些源于享受某些美好瞬间所带来的快乐。

当然,仔细的思考问题是个好事。不过,过度的思考会使人们裹足不前,会使人们自己破坏了那些发生在你身边的美好事情。

这一切我都了解。我过去就是一个过度思考的人,过度的思考使阻碍了我的正常生活并且使我终日愁眉苦脸。

大约八年前左右,我学会了怎样使这个问题变小,并且使它尽量不再发生。如果我再次陷入过度思考之时,我知道该做些什么来克服它。

在这篇文章中,我想要分享9个习惯。这些习惯帮了我非常大的忙,使我成为了一个简单并且智慧的思考者,并且使我的生活多了几分快乐,少了几分忧愁。

1.把问题放到一个更大的时间范围内考虑

人们容易在小的事情上陷入过度的思考。所以当你正在思考事情的时候,试着问问自己:这些事情在5年之后还会困扰我么?在5个星期之后呢?

我发现,把事情放到更大的时间范围内考虑这个简单的办法可以使我迅速的摆脱过度思考的状态,让我把时间和精力专注于真正困扰我的事情上来。

2.在做决定之时设置一个较短的限制时间

在你必须做一个决定并且需要采取行动的时候,如果你没有一个时间限制的话,你会不断的思考这件事情,从而使你大脑中的每个角落都浮现出这件事情,然后这个状态会持续很久很久。

所以,在日常生活中,应该学会更好的做出决定,并且在截止时间之前开始行动。不论这是一个小的决定还是大的决定。这些是对我来说非常有用的小方法:

  • 对于一些小的决定,例如是否刷盘子、是否回复一封电子邮件、是否进行锻炼,我通常给自己30秒或者更少的时间来做出决定。
  • 对于大一些的决定,在过去总是会花费我几天或者几周的时间来思考它们,而现在我给自己限定在30分钟内做决定或者是在这周的工作日之前。

3.做一个付诸行动的人

当你明白了如何能够持续的以采取行动来开始一件事情,那么你会花费更少的时间来过度思考。

设置时间限制的方法使我成为了一个更加善于付诸行动的人。

每次完成任务的一小部分,并且只专注于完成这一小部分的任务,是另一个非常有效的方法。

这方法真的非常有效。因为你不会感到备受打击,所以你不会想要拖延你的时间。即使你仍感到有些害怕,不过每次完成任务的一小部分是件比较容易的事情,不致使你陷入担忧之中。
4.意识到你不可能掌握一切

试着将问题彻底思考50遍可能是能够掌控一件事情的一种方法。如果你把所有可能的结果都给想过了,那么你就不会出错、失败或者看上去像个傻子。

但是这些事情是生活的一部分,是生活中能够扩展你舒适空间的事情。任何你欣赏的人或者在生活中给予你鼓励的人都失败过。他们也都犯过错误。

但是在大多数情况下,他们仍然把这些失败看成是学习中弥足珍贵的反馈。这些事情看上去可能是负面的,不过这些事情使他们收获很多,为他们的成长提供了不可估价的帮助。

所以放弃去试图掌握一切事情。这样做可能毫无用处,因为没有人可以看到未来的所有可能发生的事情。

这当然也是说的容易做的难。所以以你喜欢的方式慢慢的尝试它吧。

5.在自己知道自己不在思考状态的时候就要停下来

有时候,当我饿了或者躺在床上准备休息的时候,一些负面的想法就会在我的脑海里打转。

在过去,它们可能会对我影响很大。但是现在,我可以更快的意识到此并且告诉自己:不,不,现在不是思考这些问题的时间。

我知道,当我饿了或者困了的时候,我的大脑不太能够进行清晰的思考,而且容易朝着不好的方面去考虑。

所以在我告诉自己不要再思考下去之后,我还会告诉自己,当我知道自己的大脑能更好思考的时候,我会再将这个问题仔细地思考一遍。

例如,当我吃过一些东西之后或者是已经睡了一觉之后,我会把问题再思考一遍。

养成这个习惯也需要经过一段时间的练习,不过我真的从这种推迟思考的方法中受益良多。根据我的经验来看,当我在头脑清醒的时候再次考虑这些问题,80%的问题都是很容易就能够解决的。

如果真的遇到了一个棘手的问题的话,我的大脑也已经可以更好的处理它,并且可能提出更加富有建设性的方法来解决它。

6.不要陷入未知的恐惧之中

另一个多次使我陷入过度思考的问题是,我会陷入生活中未知的恐惧之中。所以我就会胡思乱想,想象着如果我做了某些事情可能会带来的糟糕的后果。

然后我学会了质问自己:仔细的想想,最坏的结果能是什么呢?

当我想出了实际中可能发生的最坏的结果是什么之后,然后我还会花一些时间思考,如果这个不常出现的事情真的发生了,我能做些什么。

然后我发现,现实中真正可能发生的最糟糕的情况并不像我想象的那么可怕。

通过这种方法来明晰你的思路,通常只需要花费几分钟的时间和少量的精力。不过这可以帮你节省下许多时间并且使你避免痛苦。

7.锻炼

这听起来可能有点令人不可思议。但是就我的经验来看,锻炼,尤其是举重,可以帮我赶走内心的压力和担忧。

锻炼经常能够使我更加果断,同时当我处于过度思考的时候,它能使我大脑停止过度思考,使我的思想变得更加富有建设性。

8.花更多的时间来关注当下

在日常生活中,通过更加关注当下的事情而不是考虑过去或者未来可能发生的一些事情,这样你会花更少的时间在过度思考之中,而有更多的时间可以关注当下。

以下三种方法是我常用的,能够使我重新关注当下事情的一些方法:

  • 放慢你的节奏。放慢你现在正在做的一切事情的节奏。例如,步伐放慢一些、说话的节奏放慢一些、把自行车骑得更慢一些。这样做你可以更清楚的了解到自己使用肢体的方式,并且使自己感知到你周边发生的事情。
  • 告诉自己:我现在正在做……我经常告诉自己:我现在正在做……你可能正在刷牙、可能正在森林中散步,或者是正在洗碗。这个简单的提醒帮助我停止胡思乱想,并且重新使我的注意力专注于正在发生的事情。
  • 打断你的思想并且重新关注当下的事情。如果你认为自己陷入了过度思考之中,那么你可以告诉自己:停下!然后再花上1-2分钟的时间全神贯注于发生在你周围的事情来使你的大脑重新关注眼前的事情。努力的调用你的一切感官——触觉、听觉、嗅觉和视觉以及用你的肌肤去感知当下发生的事情。

9.花更多的时间与那些不会过度思考事情的人们相处

你的社交圈对你的思考方式影响很大。这里的社交圈不仅仅指生活在你身边的那些人或者团体,而且还包括了你所阅读的、你所听到的和你所看到的。这些都包括:你看的博客、书籍、论坛、电影、以及你所听的播放列表和歌曲。

所以思考一下,不论在你身边与否,是否存在一些能够使你更加倾向于过度思考的人。并且思考一下,是否有与之相反的人。

花更多的时间和注意力在能够对你的思考有积极影响的人和事情上,花更少的时间和注意力在那些对你过度思考习惯有加深趋势的事情上。

为什么我们的工资没有别人高?

为什么有些人工资能拿那么高呢?

我经常会思考一些暂时没有出现的问题,希望以后真的遇到这样的问题的时候,能够有个准备。

想要弄清这个问题,我们首先要理解别人给你发工资的依据是什么。

我想有人会说,领导给我们发工资,是根据每个人的「能力」来评定的。但是「能力」依然不能让我们清晰地理解它到底是什么。我个人认为,只有当你对一件事情理解到特别透彻,并且你在向别人解释它的基本概念的时候,别人也能轻而易举的理解,才能说明你真正的把一件事情给分析、理解透彻了。

我是这样理解「发工资的标准」这个问题的。领导发给你工资,是根据你系统地掌握某一领域或者某些领域的知识的总量所决定的。

上面这句话可能有些拗口,我来举几个例子。

比如,我未来可能是程序员,程序员需要掌握的基本知识有:数据结构、操作系统、一门编程语言以及数据库等等。当然,有些领域的程序员还要掌握计算机网络的知识,图像的领域还要掌握信号的知识,这些我就不一一举例了。(我个人刚刚跨专业到计算机,很多东西了解的也不够深刻,所以上面如有错误,请指出,谢谢。)如果你仔细观察,那些程序员中工资拿的特别高的,全部是他对这些基础知识掌握的特别牢固的人。同时,你会发现还有一些程序员工资更高,超出一般程序员很多,那是因为他系统地掌握了更多的知识,比如,他同时熟悉好几门编程语言,他对很多编程领域的知识都很了解等。所以,他的工资又会突破一个瓶颈。这样的人都可以在一些横向领域起到关键性的作用。我以前看过一个句子,现在记忆犹新:

No field of study can advance significantly unless outsiders bring their knowledge and experience to that field of study.

有些跨领域人才的工资,是因为他使得某些领域大踏步的进步了好多,所以他们工资会让人不可想象。最近今年,机器学习因为计算机性能的发展,带来的新的机遇,所以那些熟悉两个领域的知识的专家在一些行业发展起来之前,已经收入不菲了。

程序员的例子可能不是每个人都能理解,我再举一个生活中随处可见的例子:餐厅服务员。虽然餐厅服务员可能不需要掌握数学、物理、化学等等知识,但是他们需要处理好「与客人之间的关系」:当遇到态度不好的客人的时候要怎么做,当遇到自己餐厅出问题了怎么解决能够使得店主和客人都能接收等等。这些能力虽然书本上或者说我们课堂上没有传授,但它确确实实是一种技术。尤其是在中国这样人口众多的国度。所以,那些处理关系得当的服务员,晋升为餐厅经理,甚至有些人把店主的进货渠道给打通,自己开店去了。这就是因为他们系统地掌握了:「与人交流」、「管理服务员」和「处理更加困难的纠纷」以及「开餐厅」的知识或者能力。

生活中人与人之间的工资差距那么大,就是因为有些人系统地掌握了更多的知识。

注意,我一直强调是系统地掌握,而不仅仅是掌握。其实,年纪差不多的人,掌握的信息的总量是差不多的,因为从统计学的角度上说,大部分人每日的睡眠,饮食等等时间花销,差别不大。常见的,有些人会打打游戏,有些人也在处理人际关系表现不差。但是,这些人没有能够系统地掌握这些方面的知识,所以他们的工资没有突破某个瓶颈。这不,在现在这个开放且快速发展的中国社会,游戏上面有天赋且愿意努力训练的人也能拿到很好的薪水了不是么?所以我们可以观察到,那些出众的人,知识的掌握程度较为专一,在有些方面真的是一窍不通。因为他们把时间都专注于系统地学习其他方面的知识了。

那么我们想通了这些有什么用呢?

这就可以为我们以后的努力方向提供方法论了啊。

比如,我们应该放弃一些暂时会给我们带来快乐,但是长期不会给我们带来收益的事情。年纪大了,我们会发现自己玩游戏的注意不集中了,反应能力也没以前好了,所以可以适当的放弃些打游戏的时间了。每日都有人花大量的时间在刷微信和一些娱乐新闻上面,但是仔细思考,这样事情只能影响当下,我们是否可以放弃了。摄影、阅读,都是能够修身养性的事情,我们是否可以利用一些碎片时间来培养这些爱好,长此以往,五年十年之后,这些方面的知识可能就比较成系统了,即使不能给你带来金钱的回报,但是在自己家庭、朋友圈子中,也足以露一小手,显摆一下,这些都可以提高生活质量。

当然,我并没有说不玩游戏、或者不刷娱乐新闻等等。毕竟这也是普通人生活中的一部分,只是我们不要太过于执着其中罢了。比如,久违相逢的好友,坐到网吧,来上一局dota,也是友情不减当年不是?对了,我指的是男性。

知道了为什么再去努力,我们会更坚定,不是么?

 

这是最近总结的一些想法,自己的思考可能因为见识的局限而不太成熟,未来可能会在更新。如需转载,请保留原文链接,谢谢。