程序员新手速成之六脉神剑

        引子· 武侠梦

        大家好,我是一名程序员,小时候呢,非常喜欢金庸武侠。

        记得吴启华版《倚天屠龙记》中,少年张无忌无意进入光明顶秘密石室,机缘巧合之下,习得已故教主阳顶天留下的《乾坤大挪移》心法。由于自身《九阳神功》加持,天下武学,融会贯通,俯首可得,张无忌因此在最短的时间内,学到了第七层。每次看到这里,总是激动不已,要是我有这么好的机缘该多好啊!

        可惜,现实是残酷的,武侠梦做的再好,还是无法避免码农的命运!

        作为入坑多年的Java程序员,见过很多如秋天的落叶一般凋零的老开发,也碰到了不少的新鸟,翅膀都没长齐全,摔的又重且惨。天可怜见,实在不忍那些涉世未深的新手们,‘误入歧途’,‘走火入魔’。古有大理段氏,最高武学六脉神剑,变化无常,灵动飘逸。遂撰写此文,供彼参阅,“武学修为”短期之内可速成一二,持久修炼者者更甚(嘿嘿)。

第一剑· 少商剑:思想认知

        拿这几年的工作经验来讲,正确的思想认知太重要了。其中,我认为很重要的一点就是,你一定要早早的懂得:工作很重要!工作态度更重要!

        此话怎讲?再明白不过的一个道理就是,作为一个成年人,任何一份工作,不仅能提供一定量的经济报酬,维持你正常的体面生活,还有可能实现自己的人生价值与目标。

        人是有惰性的,不光体现在身体上,还有思想中。一定要时长告诫自己,这份工作来之不易,绝对不能过了三五天好日子,就懒散放松。借用华为任正非的话来说,那就是,年轻人要持续不懈的努力!我可以补充的是,人任何时候,都应如此,殊不知老骥伏枥,尚志在千里。

        另外一点就是工作态度,好的工作态度体现在方方面面,比如与人交往,沟通协调,主动驱动,主动学习,对待代码认真负责等等。日本经营之圣稻盛和夫说过,工作就是最好的修行。工作是万病的良药,是解决一切问题最重要的良药;只要认真工作,就能够治愈各种各样的病痛。我深以为然,并且时长有这样的体会。有时候当自己投入进去的时候,抬头发现周围没有一个人,那种来自心底的因投入而获得的巨大充实感,久久不能散去,它极大的刺激了我的精神,直至三两天还有盈余。更妙的是,越是这种充实的精神,越能有效的带动工作,从而进入一个良性循环。这样做起事儿来,精神焕发,越做越喜欢。反过来,工作态度随意,懒散成性,动不动犯小错误,诸事不顺,谁见谁烦。

第二剑· 商阳剑:知识体系

        阳顶天修炼乾坤大挪移至死也不过4层,杨逍一层,为什么张无忌能速成7层?因为他提前修炼了《九阳神功》。心中的武学体系已成,天下武学,俯拾可得。作为开发也是如此啊,Java基础知识体系,你掌握了多少?对于一个新手,最基本的IO,多线程,集合等等是不是信手拈来?其实多数人的聪明程度都差不多,但为什么别人学的比你快,比你好?那是因为他内功甚好,见多识广,基础扎实。所以我想,只要你稍微用点心,多留意下简单的,基础的东西,愿意动脑子,也能成为别人羡慕的聪明人。

        比如,刚进入职场,还不大懂编辑器,快捷键记不住,代码写法笨重,那简单啊,把常用的快捷键写在纸条上,就放在办工作上自己容易看到的地方,一遍不会,就来十遍,直至心到手到为止;编程不够灵巧,多观摩学习大佬的思路,同样是集合遍历,你是怎么做的,别人是怎么做的,单独拿出来比较比较,取其之长,补己之短。假以时日,将别人的东西拿为己用,你就是下一个大佬了。学习就是这么简单,观摩 + 复用 ,实现快速成长。我刚到这里的时候,代码有些生硬,看到同事写的代码,很飘逸,说不上多么高大上,但是很多小细节,或者看似不经意的地方,却能封装的很好,给人一种如沐春风的感觉,读起来特别顺。于是我刻意将这些注释掉,自己来顺着业务去实现同样的功能,一次理解的不深,就写三次,直到能达到同样的结果,并且内心暗示自己,这就是我写的,我就是这么写的,长此以往,进步其实是显而易见的,这时再回过头去看,说不定你会发现以前写的代码,真的很垃圾。这就叫立竿见影。时间长了,你的知识体系也会逐渐丰富起来。

第三剑· 中冲剑:重剑无锋,大巧不工

        《神雕侠侣》中,独孤求败在剑冢中写道,第三把武器,重剑无锋,大巧不工。四十岁前恃之横行天下。什么意思呢,其实我理解的就是绝对实力。重剑无锋,即是偏锋,剑走偏锋,没有绝对的实力,是站不住脚的。所以,作为新手,你得有这么个意识:我要变强!我一定要变强!我要有绝对的实力,既能承担上级分派的重任,也能不轻易被人小瞧了去。需知,工作中,奇淫技巧是持久不了的。只有绝对的实力与真本事才可于高手之间立足。

        想要积累自己的绝对实力,方法太多了。作为新手,快速吸收项目中的好东西,像结队编程,让别人指点自己的代码,或者自己试着去看看别人的代码,两相比较,高下立判。知道高下,自然就会明白该怎么学了。还有代码质量检查,平时多看看一些有针对性的书籍,比如权威性的《阿里巴巴代码规范》,作为行业标杆,从业守则,没有读过只能表示太可惜了,从权威中,我们学到的一定是经得起考验的,学到了就用上,在实际的编码过程中,去套用,变量命名,方法定义,注释格式等等,我有没有做到和权威一致,这样训练下来,了然于胸。去指导别人的时候,才能信手拈来,如同己出。

        子曰,三人行,必有我师。我认为还不够,工作中,要什么脸?凡是比我强的,比我厉害的,都要分析别人强在何处,厉害在哪里?我可以从中学到什么?如何吸取,为我所用?长此以往,你的实力在不断的提高,与你打交道的人越来越厉害,你学到的也越来越多,能不厉害么?以一打十都是小意思。记得领导曾说过自己干活一个人抵得过二三十人,起初我是不那么相信的,但是通过接触和分析,我坚信这是必然的。一个人的强大,其力量是惊人的,爆发的。小到撑起一个团队,大到拯救整个国家。

        所以啊,抱着这样的认识,逐步培养积累自己的绝对实力,你迟早会成为被别人仰望的人。

第四剑· 关冲剑:沟通协作

        之所以把沟通协作放在第四剑,还是本着务实的意思。既有心法在胸,又有重剑傍手,如果你是个愣头青,鬼都不愿意搭理你。对于新手而言,工作上还是比较看重沟通协作的能力的。众所周知啊,单兵作战的模式早已被时代抛弃,只有团队协作才能取得更大的战果。一个优秀的研发团队,必然是有经验丰富的产品,高效敏捷的研发,全面细致的测试和灵活成熟的交付,因为现代节奏下的昂贵的时间成本不允许你去承担更多的角色,甚至你能按照要求在规定的角色里高质量的完成工作就不错了。这种定位下,个人的能力是基础,如何和团队保持一致的节奏,保持良好的沟通协调,显得尤为重要。

        曾今有个同事,个人能力很强,作为项目中的核心开发且效率比较高,但越到项目中后期,情况就越明显:测试反应和他沟通问题很费力,原因是表达力不够,简单的东西讲不明白;产品反应其主动性太差,被动的接受需求,开发缺少灵活性;同事觉得不好打交道,代码进度,整体流程什么的基本没有共同交流与信息同步;结果老板看到的是,一整个流程链不得不为这个核心开发的欠沟通能力买单,反复开会,交流对接,最终导致项目逾期。其后果可想而知,本人被劝退。

        我相信每个人都想成为强者、厉害的人。但是在现代模式下的开发节奏中,新手们一定要注意锻炼自己的口头表达能力,主动沟通能力。闷头闷脑是不行的,既要坐得住,还要动的了,团队开发,早已不是一个人能顶一片天的时候了。

第五剑· 少冲剑:向上管理

        相信对于大多数新手来说,畏惧领导是极其普遍的,更不用说频繁的沟通交流了,领导真的那么可怕么?其实并不是。

        领导也是人呐,有喜怒哀乐。所谓领导,只是一种正常人际互动的产物。我想作为新手的你,应该首先搞明白一个概念,你真正害怕的是领导么,还是“害怕领导”这件事儿。又或者,你在逃避和远离领导,远离和逃避势必造成你与领导之间彼此的不了解,而彼此的不了解又会为沟通的开启形成新的障碍。于是越害怕,越退缩;越退缩,越难以建立直面领导的勇气。久而久之,便陷入一种恶性循环中。

        鼓足勇气直面领导无疑是十分重要的,但要做到这一点还远远不够。不能邯郸学步,刷存在感,要注意节奏,把握领导的节拍。这一块的修炼空间实在是太大了,凭我这几年的经验,如果说自己什么都不太懂的话,简单的做法就是跟着领导的节奏走。我们来管理领导,把情况摸清楚了,想在前面,做在前面,实现向上管理。

        毫无疑问,一定程度的忠诚和绝对的实力,是你实现向上管理的重要法门。所谓忠于人,勤于事,没有哪个领导希望自己的下属反复无常,花言巧语。我相信在逐步掌握前面的几项技能后,你已经具备一定的条件去“驾驭”你的领导,所以后面你得学会get到他的点,利用自己的忠心和能力,赢得领导的信任!我相信没有哪个傻子不知道,这是种双赢的做法。鉴于此法偏理论,重实际。个人经验有限,不再赘言。

第六剑· 少泽剑:吾生有涯,而知也无涯

        庄子曰:“吾生也有涯,而知也无涯。以有涯随无涯,殆已。这句话,大家应该知道一点,但是我想说的其实是这句话的后半部分。

        对于浩如烟海的知识而言,人生实在是太短暂了。往小了讲,单单是Java开发,我们要学的东西就太多了,各个知识分支里面,又有很多实际的,理论的数不胜数,分支中,又有横向的,纵向的,如果盲目的去追求知识的丰富,何时学到头?所以庄子说,用有限的生命,去探求无限的知识,是极其危险的。皓首穷经也罢,呕心沥血也好,作为普通人,没有这个必要。

        曾几何时,我也想迷茫过,这么多东西,真不知道从何学起,刚定下心来学习多线程,又碰到集合的问题,转头去搞集合,又碰到文件读写的问题,把自己的搞得精疲力竭,焦头烂额,耗费不少心神。说白了,其实也涉及一点方法论的东西,学知识,必然是要讲究方法的。一味的去探求无穷无尽的理论,很容易走向偏执。这里要提醒新手们的就是,多动手,重实际。一切学习,建立在当下的实际中。比如我近期的工作是和大量的多线程相关,那你就提前准备,边学边做,边做边总结,反思,从实践中管理自己的所得,锁定成果,并有效吸收,这样下来才是结合实际,印象极其深刻,同时也便于转化为自己的知识体系。反过来讲,太多的人自以为聪明,好大喜功,浅尝辄止,学了一点皮毛就小富即安,甚至是丢了西瓜捡到芝麻。好的理论和知识,一定是经过实践总结出来的 ,甚至你可以从实践中进一步去优化理论和知识。所以啊,要自己多动手,重视实践,千万不要学那屠龙之技。

        六剑至此,行文差不多也要结束了。其实上面很多都是边摸索边总结出来的,我自然不敢妄自菲薄,更多的是吸取前辈高手的经验,站在他们的肩膀上,将其转化自己的东西。作为新手,诸多能力,说白了,还是靠自己的一个觉悟。觉悟到了,多修炼,功到自然成。共勉。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘书书-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值