查看原文
其他

与大牛PJF的谈话及启发

前语:不要为了读文章而读文章,一定要带着问题来读文章,勤思考。

来源:http://1t.click/arrn

昨晚,PJF如常来我们寝室看《越狱》第二季,不知不觉和他谈起有关编程的事。

原本我以为ICESWORD这样的惊世大作是他本科后期写成的,估计他最早可能是在高中开始接触计算机。可没想到他大一(现在博一)就完成了ICESWORD的编写,而接触和学习计算机是在小学六年级!

PJF所在的小学,当时用汽车换了当时最先进的几台386,为了训练一些小学生参加编程比赛。而初中,高中,他完全靠个人兴趣和毅力坚持对计算机技术的学习和钻研。

当时资料很少,很难才找到一本薄薄的书,还要看个几十遍才完全弄懂。我想,到今天为止,我还没几本书看过两遍以上的。(PJF当时是从底层学起,而且他对那些底层的东西很感兴趣,觉得很有意思。他推荐从底向上的学习过程。)

而在大学本科,PJF把图书馆翻了一遍,从来没上过课。我一听有些愕然了,我本科还没去过几次图书馆呢……想想我小学的时候,学校那几台电脑就没开放过,只能隔厚重的玻璃,从窗帘的缝里看到昏暗的室内,几台奇怪的机器。

初中开了计算机课,可是我却不感兴趣,直到大学,才真正的用上计算机,却又把时间花在了一场失败的恋爱。说起来,他的经历和《游戏之旅-我的编程感悟》的作者云风有些相似,都挺幸运的,所以说牛人还是有些天时,地利,人和诸因素的优势。

他说:“图书馆的书都翻一翻,有兴趣的就细看,没兴趣的就不往下看了。最好先做到知识的‘博’,再做到某方面的精,专,深。总不能只知道一样东西,其他什么都不知道吧。人总有他感兴趣的方面和他适合做的方面,找到自己感兴趣和适合做的方面,然后去钻研。”

当我谈及编程时,他说编写代码这个层次只能叫做CODER,而真正的编程包括很多方面,比如程序体系,架构,算法设计等等,不一定是编写代码牛才算编程牛,比如,算法牛也很牛,可以在G**GLE混的很好了。我听了之后,确实感到许多人都有这样的误区,认为编程就是不停的编写代码,而事实上却有更广泛的含义。

后来我问他怎么不去I*M笔试看看(当天I*M来我们学校招聘),他说:“我去I*M不用笔试的啊。”哈哈,真是牛人。确实如此,许多国际知名的公司都知道PJF,ICESWORD。然后PJF说,其实有很多的方法可以不用通过这些招聘进入这些公司,就看你选择哪条路了。我一听,马上好奇的追问。他说,在网上发表文章,写写blog,参加一些开源的项目,到这些公司去做实习生等等

比如,我们学校的XXX他就是参加了LINUX内核一部分的维护,被邀请参加全球的LINUX会议,还有YYY……主要是要这些公司知道了你这个人,不过前提是你必须要有些方面比较牛。

通过这次闲聊,确实感觉眼界开阔了很多,也学到许多经验。总结一下,为如下三点:

1. 首先大量的浏览各方面的知识,信息,扩展知识面和视野,确认你对某方面感兴趣并适合你去做,然后重点发展这方面的能力。

2. 从产生一个程序的想法到程序的实现,调试等这一过程中各环节的思考以及操作叫做编程。在这个过程中各环节牛都可以很牛。

3. 在你重点发展的方面比较牛,并扩展你的影响。(当然,你也可以不扩展你的影响,扩展影响是出于生计的考虑)

热文推荐
面试题:如何设计一个权限系统?
详细记录一下IDEA连接MySQL踩的坑!
IntelliJ IDEA汉化教程,我不建议你汉化,因为...
同时,分享一份Java面试资料给大家,覆盖了算法题目、常见面试题、JVM、锁、高并发、反射、Spring原理、微服务、Zookeeper、数据库、数据结构等等。


获取方式:点“在看”,关注公众号并回复 面试 领取。

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存