这是一本书名,是我在研一读的一本书,非常幸运,这本书绝版了,我在一个犄角旮旯找到了。这本书再版了,可以买一本看看,CSDN有PDF。能不能成为大师,不好说,但是成为一个靠谱的程序员应该是有帮助的。
有听过我课的同学问如何成为一名程序员,首先,我很抱歉,我自己就是因为成为不了真正的程序员才到学校来教书。所以,你要问我如何成为程序员,我还真不知道。我知道我自己为什么不能成为程序员。
1.天赋
你有天赋吗?我在计算机上没有天赋。为什么?怎么看出来?当老师第一遍给你讲指针的时候,你能很快的感觉出指针像套在一起的环形针吗?如果你不能迅速的将抽象的计算机模型具体化,那么你和我一样,对于计算机,我们的天赋差不多。不要指望成为Linus。正如我们都有可能喜欢打篮球,但是我们一定不可能成为姚明。你没有这个先天优势。这样,你成为genius的机会,几乎不大了。你就不要以James Gosling为标准了。
2.兴趣和动力
这两个是相辅相成的,我放在一起说。你成为不了Linus的程序员,你可以做最好的自己。首先,我对计算机没有大家这样的热情。我学计算机是阴错阳差。有一部分原因是因为钱。所以我说只要有足够的动力,学会一样的东西是可以的。你曾经有过写程序写到吐血吗?你有过写程序写的不想睡觉吗?你有过非要把东西作出来才罢休的,不达目的绝不放过自己的觉悟吗?如果你曾经这般玩命,恭喜你,你可以往下看。
3.策略
如果说中国人总是认为“我的成功可以复制”,我认为这是不正确的。每一个独立样本的特性不具有统计意义,我们在知道自己的特性之后,如何发挥自己的优势,这才最关键。如何才能让自己尽可能的接近自己能力的极限,才是好问题。“我如何成功?”是一个很烂的伪命题,因为没有统计意义的推断不一定适合自己,如何成功只有你自己才能知道。
在说方法之前,我们假定是我们要让自己尽可能的逼近自己的极限。
最重要的一条:要始终不予余力的和自己玩命。我们都是有惰性,克服惰性是我们成长的唯一途径。我信奉的准则就是,只有突破死亡线,才能逼近极限。因此,这个问题就是如何学会不予余力的和自己玩命。
和自己的玩命最好的手段,我认为是目标导向。没有目标,就不知道自己的精力往哪里使,要不断的给自己找压力必须有一个目标,不然你怎么把自己弄的精疲力尽呢?因此,这个问题就变成了,如何找目标。
目标在我看来一定是现阶段我无法完成的,这个离我现在水平不能达到的东西可以从两个方向去找,一个是时间,一个是空间。
从时间上:
我能坚持每天写一百行代码吗?重复是学习最常用的手段。
我能有效管理我学过的代码吗?积累是重复的升华。
从发展空间:
我能每天坚持看一篇我看不懂的文章吗?向高手学是学习最好的手段。
这么复杂的东西我完全没有头绪!从最简单的地方看,拣自己看的懂的先看,浏览一遍再反复。
在成为一个合格的程序员最重要的开始,就是学会管理自己的代码。我们很多优秀的同学,已经把自己编写的代码放到Google Code上面了,为什么?因为这个有比较好的版本控制,我知道我现在学习到什么地步了。
有些同学觉得我好像对计算机整体的认识比较深刻,为什么会有这个感觉?因为凡是我学过的东西,我都能记住。你还记的7个化学主族元素吗?我仍然记的。因为我记忆力好?显然不是,我把所有的东西都抄写了3遍。一个东西,学一遍就会的,有两个情况:1,你在这个方面有异于常人的天赋,挺好的,不要浪费;2,这个东西和你现有认知是同一个水平的,不值得花太多力气。不好学的东西大多是要反复看的。
看不懂的东西?完全陌生的东西我怎么要学呢?当你在30岁之前你不能学会完全陌生的东西,你很有可能这一辈子不会再接受新东西了。科学统计表明人类在30岁以后的认知行为会发生变化,他倾向于把新事物归类到已有的知识结构,并将这个实物同化成符合现有逻辑框架的产物。因此,在你现在还年轻,你要进一步扩张自己网络。当你网络铺开了以后,你的思维会自动将这些网络修补起来,这样你的知识就会完善,这就是我将你们在大四的时候,应当有一种融汇贯通的感觉。
复杂的东西都是从小东西开始的,你喜欢Hack OS,你上来就整Windows XP,你老人家太牛了。Microsoft花了5年多,n个亿美元下去的东西,你老人家就打算直奔主题,说的好听是雄心勃勃,说的难听就是你根本就没有找到路子。南京人骂人常说:这个人不上路子。学习也是一样,你一定要从简单学起,放着Linux0.11不看,你一刀就杀向Windows我不知道该怎么说了。
4.方法
计算机范围太广了,你知道什么是计算机吗?如何在一定程度学会计算机呢?一方面是基本基础要扎实,另一个方面是在一个点上深入的钻下去。怎么钻?很多人在学习的时候非常盲目,我经常看到我们学校的同学,就喜欢上图书馆,借这个书,看那个书,我也有这个阶段,现在我已经不再这个阶段了。我想很多同学在度过了初学阶段以后,也会和我一样迷茫的时候,很希望知道我应该向什么方向努力。
在这点上,我比大家幸运一些。在我读书的时候,Microsoft是老大。因此Microsoft推什么技术,我就盯Microsoft。它推新技术,我就跟进,因此,我对Windows平台还算熟悉,这个就是一个方向——长期跟踪一个领域,不断让自己和这个领域保持同步。
现在的方向多了,不知道怎么选了。还有一个好办法,你在跟领域的时候一定会遇到很多牛人,跟着牛人就没有错。比如我学Java的时候,Think in Java的作者是Bruce Eckel,那么我就订了他的技术写作blog。他打算写什么,我就跟进这个领域看,这是我保持技术的一个习惯。我学OS的时候,我盯住了赵炯——长期盯住比自己牛人,看他干嘛,你就干嘛。
长期关注一个领域,长期跟踪一个比自己牛的人,这是保持技术敏感性的好习惯。我这辈子不大可能领先世人,因此,我就采取跟随战略,我只要技术上不掉队就好了。
解决了跟谁学的问题之后,我们要做的就是坚持。同时,要有挑战自己的勇气。工作了以后,敢不敢试着去面试大公司?我曾经很喜欢的一个故事就是:一个高级经理每年都到人才市场上找工作,他想知道自己现在值多少钱。同样的,我们是不是去暗暗的向大公司面试一下——不给我面试,说明我还不行。面试了,没去,能力还不行。过了一面,死在二面了,好有进步了......不一定要骑驴找马,但是你要知道我现在是在贬值还是在增值。
分享到:
相关推荐
PostgreSql修炼之道从小工到专家 ~高清PDF
POSTGRESQL修炼之道从小工到专家, 高清版, 作者唐成 !!!
PostgreSQL修炼之道:从小工到专家 PostgreSQL是一种功能强大且广泛应用的开源关系型数据库管理系统,本书《PostgreSQL修炼之道:从小工到专家》旨在帮助读者深入理解PostgreSQL的核心原理和最佳实践,从而提升...
目录是我(mantingfangabc)手动一条一条添加的.共享给所有需要的人. postgreSQL修炼之道从小工到专家-完整高清扫描版-完整目录
Android开发进阶:从小工到专家 完整版 pdf
《Android开发——从小工到专家》这本书,旨在帮助开发者逐步提升技能,掌握核心技术和最佳实践。书签版本的提供,使得学习者可以方便地定位到重要的知识点,便于复习和查阅。 一、Android系统概述 Android是一个...
《PostgreSQL修炼之道:从小工到专家》的主要内容和特色: 全面且实践性强:本书从SQL基础、安装配置、数据类型、数据库的逻辑结构等基础知识一直讲到PostgreSQL的架构、技术内幕、特色功能、Standby、数据库优化...
《程序员的修炼之道-从小工到专家》这本书深入探讨了编程领域的核心思想,旨在帮助程序员提升技能,逐步成长为行业专家。编程思想是编程者必备的基石,它涵盖了问题解决、设计模式、算法优化等多个方面。以下是一些...
《PostgreSQL修炼之道从小工到专家》这本书是针对数据库管理员、开发者以及对PostgreSQL感兴趣的读者而编写的。它深入浅出地介绍了PostgreSQL的各种特性和技术,帮助读者从初学者逐步提升为熟练掌握PostgreSQL的专业...
Android开发进阶从小工到专家 Android开发进阶从小工到专家 Android开发进阶从小工到专家
POSTGRESQL修炼之道 从小工到专家 完整版POSTGRESQL修炼之道 从小工到专家 完整版POSTGRESQL修炼之道 从小工到专家 完整版
ANDROID开发进阶从小工到专家
资源名称:PostgreSQL修炼之道 从小工到专家 高清资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
《程序员修炼之路 从小工到专家》这本书显然是针对软件开发领域从业人员的,尤其是那些希望从初级程序员成长到行业专家的读者。书中无疑会详细探讨普通程序员与优秀程序员之间技能、知识、经验以及思维方式上的差异...
Android开发进阶 从小工到专家-2016.2-P378.pdf Android开发进阶 从小工到专家-2016.2-P378.pdf Android开发进阶 从小工到专家-2016.2-P378.pdf
pg资料本来就比较少,这本书是难得的一本。 本书分为准备篇,基础篇和提高篇。 书中的部分信息有过标记,建议大家直接跳过基础篇阅读。
《Android开发进阶从小工到专家》是由资深Android开发者何红辉编著的一本专业书籍,旨在帮助初入Android开发领域的工程师逐步提升技能,直至达到专家级别。这本书以清晰的结构和高清的书签版形式呈现,使得学习过程...
《PHP和PostgreSQL从小工到专家》是一本深入探讨PHP编程与PostgreSQL数据库结合应用的专业书籍,适合初学者和有经验的开发者提升技能。书名中的"从小工到专家"暗示了本书旨在全面覆盖从基础到高级的PHP与PostgreSQL...