我对代码的情感,不只是谋生的技能,一次项目的研发,就像一场运动比赛。
程序员跟拳击手、篮球运动员、排球运动员、雇佣兵是一样的…设计模式、软件分不分 层等,是一场战斗的策略,要结合现有的人力物力时间做出选择;程序员也需要熟悉自己的武器,所以从开发环境、快捷键的记忆、代码比较工具、代码生成工具、 代码版本控制工具、UML建模工具等,就像军人要熟悉自己的枪械一样去学习;程序员也像篮球运动员、拳击手一样,也要一个动作一个动作的练习,比如要练习打字,要记忆键盘上字符的位置,直到有一天,像钢琴师演奏曲子一样演绎天马行空的字符,像篮球运动员练习运球一样,掐表敲出常用的代码,这四个方法要在3 分钟之内敲出来,练习一遍又一遍,甚至像拳击手一样通过不断地重复让身体、让手指去记忆一段代码。
程序员也有职业生涯(比如通常所说的35岁),也有身体 消耗,比如长时间熬夜、极限编程、久坐,也会有职业病,比如肩周炎、眼疾等,所以程序员要喜欢这个职业要延长职业生涯,也要学会保护自己,要注意熬夜后的 饮食、休息,要跑步、要做俯卧撑,不断地不断地磨练自己的身体,受伤(生病)后,也要认真的修养,为的是重返战场;代码也有团队,经理会努力的去拉项目, 去拉钱,会跟客户喝的一吐大半个晚上,然后半夜跟兄弟们说,项目拿下了,我不会写代码,我尽全力了,接下来靠你们了,大boss会设计架构,选择语言,分割模块,让擅长的人做擅长的事,销售推广将产品推向市场,而后是维护、培训等人员登场,这与排球运动中二传手、自由人、主攻等的配合一样一样的。
每次看体 育运动,无论是科比打篮球,还是幕之内一步打拳,从赛前的练习、节食减重(拳击)到比赛时的执着,战斗到最后一刻,最后的无助与无奈,困境时,我如果更强 一些该多好跟我跑的再快一点,我跳的再高一点,我的截拳再快一点该多好是一样的,赛后成功或者失败,成功会喜悦,失败会落泪,明明很努力了,为什么还是没 能成功,而后不断地不断地翻书、练习、总结、尝试…这里面没有教练,但有学长有前辈,就像拳手相信教练,在陷入困境时意识模糊时,依旧按照教练所指导的那 样挥拳,直到出现教练所说的转机,而教练也会在拳手不断挨打时,在抛出毛巾保护拳手还是相信拳手会贯彻自己的指导坚持到最后之间做出选择,这种教练与拳手 之间的相互信任、相互保护的师徒共鸣,在前辈、师长与后辈之间也存在(我qq列表里有20多个跟着我要学程序的,有多少人真正听了我的话,几千块钱的资料,多少人按照我说的去学习了;而对于我,前辈的话语,背单词、学这个学那个,我又是否在别人嘲笑的时候坚持到底?),如果不能贯彻前辈的指引,又怎能奢望爬上那高高的山峰饱览前辈所描绘的精彩…即使,现在我们还很弱,还会问傻问题,还会被嘲笑,还是一无所有,但我们会成长,会越来越可靠…像狼一样去战斗,像王一样去胜 利,不断赢得前辈的认同,不断为后辈探索光明,奢望着有一天找齐彼此欣赏、彼此包容、彼此保护、彼此信任的同伴,扬帆出海,像海贼,驰骋于别人嘲笑的大 海,享受别人听不到的快乐…这便是我对代码的情感。