“不专注就完蛋”----刘国梁批的不仅是张继科

来源:互联网 发布:lovelace第一位程序员 编辑:程序博客网 时间:2024/05/04 18:40
借个话题聊聊新时代好程序员的标准是啥。

   

   第一件事,专注就是你的蛋蛋。

   最近部门经理刘国梁对骨干分子张继科发出严重警告。刘的原话语气更重:不专注就彻底完蛋

   这是世界顶级教练集一生智慧发出的怒吼,鉴于体育领域中的竞争的对抗性远比IT界要强烈而直接,吃青春饭的特性更明显,因此,该雷霆一吼所夹带的真理,应能震碎我等坚硬的外壳。

   实际上编程的最大的秘密就在于屏气凝神般的专注,象游戏迷般地专注,象瘾君子般地专注,象牛顿苹果砸头般地专注,象石佛李昌镐般专注。佛家叫作打坐,心无杂念,才能掌控自己,洞悉世界。

    多年前看过的探索频道的一档有关气功的专题中,知道“专注”对人的能力影响如此之大,令人震惊;另一个极限运动者是如何实现登峰造极的专注而徒手走过悬崖间的绳索的。不如此地专注,不知自己的小宇宙会有如此能量,也就会一辈子相信自己平庸,如同把从来没弹奏过的琴埋入坟墓。

    乔布斯信奉了禅道,这教会了他能静下来,能够专注地思考一件事;而比尔盖茨每年都有的闭关日,作用就是洗去杂念和干扰,专注地思考。因此,不论用什么办法,打坐也好,瑜珈也好,音乐也好,入定就是基本的专注训练。人的心无法静下来,注定无所成就。"非宁静无以致远"。

    手机和电脑成为程序员的最大“淫具”,很多程序员摆脱不了“手淫”的积习。举目四望,或者低头自视,程序员不专注的状态太普遍了,人的脑力生产力被大大降低,因此,领导者若能识得此法门,定然会心惊。开发人员一天中收发的电邮、短信和电话,不断地中断他的思路;开发日程中写满任务,实际上,每一阶段能集中处理好的关键任务不能超过三件。领导的任务就是让任务简单。我在面试程序员时,主要是观察这个人能否迅速安定下来,保持入静状态,即专注能力如何。

     砍掉任务,砍掉干扰,只保留重要的内容,不给下属安排太杂的事;教会下属自我简化安排任务。电脑中卸载掉无关的软件,开会时将手机留在会议室外面,编程时入定并深呼吸,静到仿佛世界只有你自己,静到外界的人感觉你是个SB。

     总之,让任务保持简单,不断地提高自己的入定水平。


    再说第二件事,程序员的基本功有哪些?IT领域太大,但程序员的基本功大致包括“五笔打字、PS图片和C语言”。现作一解释。

    你作为程序人员,写写文档是最常见的要求,总不能象老板一样口授他人写吧?有人在简历中随便给自己贴了个“沟通能力强”的标签,而实际上让他写个文档,脸上痛苦的表情和内心的挣扎都在说明一切都是那么假。在所有输入法中,五笔无疑是最快的,耏且它本身就是一个优秀的软件处理案例---王永民是如何对看似五花八门的汉字进行统计学归类、建模。而且用五笔打字,可以保留我们对汉字书写的记忆。五笔是1986年发明的,它是国人在软件上战胜微软的唯一产品。用五笔时就是在向前辈致敬,要培养对它的感情,不用花一个月即可掌握,而且一旦学会就不会丢弃。

     如今是读图时代,一个软件没有好的界面都不好意思出来见人。且不说读图都成了一个产业,如日本的漫画,苹果的手机等,所有的互联网产品,没有好的图简直不可能。食者,色性也,大家都是好色之徒,喜欢图是本性也。我们说在非电子化时代,绘图是个专业活儿,但这个电脑普及的时代,图片处理已经成为IT人员的基本要求了,因为工具发达了,使用频次提高了,成本也无限低了,所以,我说,PS一个图片的功夫,应是每个程序员都要掌握的基本功。实际上PS工具是不难掌握的,难的是说服程序员为何去学它。作个类比,如果一首歌曲,一个人既能作词又能作曲,我们认为不奇怪。而一个软件,我们既编码,又画图有何奇怪的呢?在小团队中,这个效率是很高的,你可以不必等待UI设计人员,而自行解决。你会PS,与设计人员也容易沟通了,一些建议和小修改就容易由程序人员做。你的开发节奏就容易流畅起来。当然,如果有更好的设计师在团队中,那最好,但要避免事无巨细地都依赖设计人员。我接触很多web开发人员,在问他们精通前端还是后端时,大都回答后端。确实,如今的前端变得太复杂了,如果css+div中加杂几张图,那些html代码还好说,那些图片是最令人生畏的,多数web开发人员对前端的畏惧感的根源就在于此。对一图片的常见加工,会使你完全把控了它。PS的技巧主要是做图片的无缝拼接,所谓移花接木这类效果,三招两式足够用了,入门也只要一个月。PS工具自从上世纪90年代产生以来,到现在就没过时过。你见过男人对性过时过没有?图片的处理需求只能越来越强。

     最后一个基本功是C语言。准确地说是C系的语言。由于c语言只有32个关键字,开发环境也小,非常容易把控,至于很多人怕的指针,多对照一下商场的储物柜模型就立马明白。我在大学时学校安排的是把basic,fortrain与dbase作为一门程序设计课一起教的,初恋很乱,因为社会乱,老师乱。c是后来自学自谈的。现在的老婆是Java,情人是php,与GO有过一夜情。我想有不少程序员都有类似经历,因为编程语言的江湖实在地乱。然而,这么多年的体验,感觉精通一门语言实在不容易,如果你的工作经常变更的话更是如此。对语言的熟悉,与对英语的熟悉没太多区别,如果你经常用它,就一定熟。然而这并不是真正棒的程序员。我有个非常棒的同事,在03年的时候不利用插件在浏览器中实现斜线效果;01年的时候,一个用户的OA系统有50多个上报数据录入界面,而且要实现上报数据备案,后来用word模板作为录入界面,省却了大量开发任务;08年的时候有客户提出在线的供应链系统,其中有个异业联盟功能是核心模块,实际上它的数据结构与论坛相似。可见,数据建模能力,善于变通的习惯是程序员最有价值的地方。


      除了上面三个基本功外,我想最为重要的是程序员要转变思路,学会利用框架资源。代码片断的重用,以及组件级的重用已经过去了,现在已经进入框架重用甚至平台重用的阶段。我看到过不少程序员非常勤奋,也很聪明,但一直对此没有悟性,一直对开源的东西不感冒,自己动手写了很多别人都写过N的N次方的东西,如用户管理等等,结果工期和代码都搞大了,领导看了天书似的代码感觉是高科技,用户用了产品感觉是垃圾,说他不行还感到委屈。试想,连谷歌的手机操作系统都是基于linux,还有什么不可以彻底拥抱的呢?用了开源的,没人说你编程能力低下,别人的代码会用了,读懂了,就是自己的,你身上的DNA都不知来自多少人的,不要太追求正宗,太洁癖。站在别人的肩膀上会更高。

     说了这么多,各位能记住多少呢?还是看一幅图吧:



原创粉丝点击