我在编程路上犯的最严重错误
尽管我工作的时间不长,也就那么几个年头,算不上老练,也称不上资深。但是,最近一年来,我总有一个心结解不开:我似乎在犯着一个很严重的错误。
前两年,我在ZZ公司工作的时候,经理常跟我说:“其实你很优秀,但有一点不好。你太过执迷于技术。技术是最低境界的,你难道不希望有所突破吗?” 当时我并不十分认同这句话,也没怎么在乎,但我也没有否定这句话,我总觉得这句话说得有些深度,也许真的是我没有悟到其中的含义。
随着时间一天天过去,心理渐渐地,隐隐有些体会。也记起来以前在看雪论坛上,有一位牛人(我不知其真实身份)给我回的一个帖子,他说:“要想跳出 纯技术的平庸境界,其实去做IT教育是不错的选择。如果你能够把你所掌握的知识,轻松而自然地去传授给别人。一方面,表明你真的理解了,另一方面,你也体 验到:还有比纯技术重要,更有趣的东西存在”。
这句话说得不假,我确实是体会到了,不是吹牛。因为我本来就是兴趣爱好广泛,在艺术方面也有一些个人的想法。这也得益于我小时候所处的家庭环境。那 时候虽说一天到晚看到的都是农户人家田里田外的劳作,我也跟平常的农村孩子没有太大的差易,但是我们家与别家是有一点不同的。我们家笼罩着一定的文化氛 围。虽然说这种氛围若隐若现,不是很浓,但我还是接受了这种气息,耳濡目染,在心里已经生根发芽。
不过,更重要的原因是大人们都忙,没时间顾及我,又担心我到处乱。为了能找一些事情来“拴”住我,从小他们就让我听各种音乐,妈妈还要我背歌词,晚上吃完饭要检查;另一方面,要求练习书法,从毛笔开始,所以我从三岁多起就浸透在墨水的气息中。
也许是这样的成长环境,上了大学后,我把上课当成次要的,而把所有的时间都放在自学上。就连编程都是自学的,从来也不知道什么叫上课。由于浓厚的兴趣所驱使,别人总认为编程很无聊很枯燥的时候,我却乐得不得了,图书馆能借到的有关计算机的书,我都不会放过。
这样我还嫌不够,在图书馆中我读遍了中外古今的历史,就连四书、五经、《史记》,各种文集诗词我都要读一番。四大名著都读了两遍,一本《红楼梦》我就看了五六遍。
那时候我也喜欢武术,尤其是中国功夫,总喜欢看武术电影,比如成龙、李连杰等演的,就经常看。看着看着,就想到一个问题:“大凡武林高手,都是博学 通才,他们不仅仅在拳脚上下功夫,而且更注重修心,许多拳法的创立,都是有着很深的禅学和哲学基础的。也不知道,编程高手也应当如此?”
毕业后,参加工作。那时候刚走出校门,一心只想着找一份好的工作,工资是高是低也不多去想,能求得那些企业不歧视应届毕业生就算是谢天谢地了,还敢有更高的要求吗?
因此,那个时候的我,几乎把在大学里面“修练”的东西都忘得一干二净,心里只想着能有一份活干就不错了,或许,到那个时候我才明白,什么叫“仓禀实而知礼节,衣食足而知荣辱”,所以想想,中国的古圣贤就是厉害,连这千古不变的定律都总结了。
在那个时候,大概也跟现在的许多程序员一样,心里只有代码。是的,曾经我也是这样,天真地认为只要代码写得牛逼就一切牛逼。我还理直气壮地认为就是这样。所以,那时候经理常对我说的那番话是有道理的。
直到有一天,有一位女孩子跟我说:“你技术很好,谁不会?技术都是死知识,我要是从明天开始也对编程感兴趣,用心去学,你信不信,我一年后就能和你 一样?” 我不太在乎地回答:“信。因为世上无难事。” 她又说:“那就是了,技术是人人都可以学会的,只是时间问题,你会编程,只不过是一种职业技能,就好比汽车修理师傅肯定对汽车零部件的了解程度比别人更 深。” 听她这么一说,我低了头在想,是啊,有理,我真后悔刚才在取笑她当年VB6考了26分。再想一想,她当年考VB考了26分,可是她的诗呢?写得如梦如幻、 惟妙惟肖,还拿了不少的文学奖。我呢,编程很厉害吗?连一个专利都没有,我有资格取笑人家吗?
她看我半天不说话,以为我在生气,于是又说:“我胡扯而已,我也不是在骂你。” 然后,她又不说话了,那场面真让我心里很不舒服,何必呢!想一想,我的境界确实太低了,明显她比我悟性更高。我是疯了不成,好端端的取笑人家干吗?反弄得自己不好意思。
过了一会儿,她好像在自言自语地说:“找工作,上班,拿工资都是太简单的事,如果让自己成为受人敬佩,不落俗套的人,反倒是最难的。” 后来我抛开刚才的话,就跟她扯了一会儿闲话,她就走了。她虽然走了,我还坐在那里想了一会儿才走,就在想她刚才说的话。我又喜又叹,喜的是这饭吃得有收 获;叹的是原来我身边有一位这样的美女,我以前怎么没发现。
2012年端午过后,在优酷上翻看视频时,就不经意地看了一部电视剧《李小龙传奇》,这是一部励志性很强的电视剧,各位有兴趣的话不妨看看。我感触 最深的是,李小龙的截拳道是从中国古典哲学中悟出来的,主要是道家思想。于是,我又想起了那天在茶馆,Y美女说的那番话。就打了个电话给她,请她推荐一些 好的有关“心学”的书,有禅学方面的更好。她就问:“好好的,又去参禅了?你看《红楼梦》还没参够?” 我说:“太抽象。” 她禁不住笑了:“搞IT的人还嫌抽象?你开什么玩笑!” 我接着说:“你悟性高,求“渡化”。”
她说:“书中没有禅,禅在你身上,在你心中。没听说过看书可以参禅的。”
于我是我就告诉她,我看了《李小龙传奇》很受启发,也想学习李小龙,自创一套理论体系。她听了之后没有说话,直接挂了电话。我就奇怪了,我没说错话吧。
过了不久,手机收到一条短信,她叫我上QQ。我就只好照办。登了QQ后,她传给我一本PDF,我打开看时,是《道德经》。我就告诉她:“这本书我有啊,而且是实体书。” 她回道:“这本书就够用了。然后你去听一听曾仕强老师的课,网上有视频。你会从中找到答案的。”
于是,我用了近大半年时间看了曾老教授的有关《道德经》和《易经》的视频,一直看到2013年的9月才看完。她说的真对,国学里面所隐藏的大智慧,需要慢慢体会。难怪李小龙以此为思想基础就能创造出一套武学思想。最近又看了旅游卫视的《国学堂》。
渐渐地,我明白了,原来真正的高手是必须具备扎实的哲学基础的。记得国外有位名人说,人一辈子可以专注于一个领域发展,但在知识和修养上不能什么都没有。说到底,人就是不仅要学做事,还得会做人。
人可以有自己专注研究的领域,同时人也应该具备综合知识,特别是一些可以修心养身的知识。宇宙万物都是从无到有,到回到无中去,许多看似没有联系的东西,其实是紧密相联的。我们常说的面向对面编程就是从许多客观事物中层层抽象出来的。
要写出好的程序,一方面要做到化繁为简,另一方面应当有良好的思路。把整个思想体系和模型建立起来,写代码就等于为歌曲填词而已。从这一层分析来看,其实我们根本不需要什么设计模式,西方人的思维真的很死板,一切都是动态平衡的,何必拘泥一个或几个模式呢?
知识有时候并不是学得越多就越好,有时候反而会成为定势思维。人总是这样的,在你没有接触过任何开发模型的前提下,就会很积极地去结合当前项目的具 体情况,去制订整套思路。这显然是正确,世上没有什么是放之四海皆准的东西,用于零售行业和用于彩印行业的软件肯定不能用同一套模型去开发。比如要开发基 于印刷行业的管理平台,最重要的是你对这个行业熟悉到什么程度,了解的层次越深,开发出来的平台的适用性就越好。
可是呢,人一旦学了一些开发模式,就会出现一个很麻烦的情况,一遇到项目,就把自己学到的几个模型往里面套,结果是这里不适应,那里又不管用,把所 学的知识都套遍都不见效,紧终,产品开发出来不伦不类,这也不像那也不像。倒不如一开始就抛开那些陈旧呆板的理论体系,从眼前项目的实际情况去进行全面分 析,做出来的效果更显著。所以有时候,真的是这样,学的知识越多反而“画虎不成反类犬”。这样就可以理解《道德经》中的“无知无欲”并不是叫我们什么都不 学,而是告诉我们去学该学的,不要受欲望的驱使就去学那些不靠谱的歪论。
不要盲目跟风,不要人云亦云,应该结合自身实际情况,理性地选择。别人身上适合的东西,有可能在你身上就是一个负担。别人在某个领域可以成功,不代 表你在这个领域也能成功。你很细心,为什么不去做财务呢?你要是口才很好,又何必去当仓管呢?当销售不好吗? “知人者智”的前提是“自知者明”。
整天被那些洪水般的垃圾信息牵着鼻子走,你的人生还有意义吗?只要选择自己真心喜欢的领域,向深层次发展,怎么着也比你“三天打鱼,两天晒网”要好。世界那么大,事情那么多,行业那么多,技术种类那么多,你何苦要跟着别人屁股后面走呢?
做自己真正喜欢的事情,你才叫成功;没有主见,鹦鹉学舌,痴海乱航,天天忙忙碌碌,却不知道自己在干什么,也不知道自己为什么而做事情。以后成了别人的长辈,你拿什么去教导你的晚辈?你拿什么在你的子孙面前炫耀呢?
何苦这样呢?趁着年轻,找一条适合自己的路,踏踏实实地走一趟,至少将来你没有什么可以后悔了。
到了今天,我终于明白了。我不能只在技术层上面下功夫,我更加应该在比技术还高的层面上去努力。所以,我懂得了自己以前为什么错了。
谢谢经理,更要感谢Y美女。据说Y美女即将出嫁了,我更应该送给她最好祝福,没有她的一番话,我就不会有今天的觉悟。感谢Y美女和S经理。
=================================
补文:我只是有感而发,所以叫随笔,随手写来,又不是写论文。至于说最后的结论,当然是没有的,我要是真把一切都悟透了,还就不会写这篇文章,我只是有点感触,分享一下罢了,目前我正在尝试去悟出自己的思想体系,哪怕有什么成果,肯定不是我一个人的功劳。
我是真心感谢Y美女(我看评论说Y美女是YY上的,其实不是,她是我大学时候认识的,因为她名字中带有“月”字,故称Y,我不可能写出她的真名),全是因为她无心说出的话,才激发了我去尝试新的思维模式。