程序员与人
我们并非是因为喜欢喝其他人在一起工作才选择做程序员的。我们都认为人际关系难以应付而且毫无规律。编程用的机器则整洁,行为也可预见。
程序员们,还是最享受面无表情的沉思,把自己像蚕茧一样裹起来,沉浸于问题思考中。
程序员与雇主
对做的事情充满激情是好的,但是,最好把注意力集中在付我们薪水的老板所追求的目标上。(否则,可能像Bob大叔一样,被老板解雇)
专业程序员的首页职责是满足雇主的需求。这意味着要和经理们、业务分析师们、测试工程师们和其他团队成员很好地协作,深刻理解业务目标。
需要理解手上正在编写的代码的业务价值,了解雇你的企业将如何从你的工作中获得回报。
专业程序员最糟糕的表现是两耳不闻窗外事,你的工作职责就是要让业务免于陷入困顿,让公司长久发展下去。
专业程序员会花时间去理解业务,会将注意力放在与业务同舟共济上。
程序员与程序员
不正常的团队最糟糕的症状是,每个程序员在自己的代码周边筑起一道高墙,决绝让其他程序员接触到这些代码。
Bob大叔赞同的做法:团队中每位成员都能签出任何模块的代码,做出任何他们认为合适的修改。
专业开发人员不会阻止别人修改代码。
专业人士会结对工作,这是最有效的解决问题的方法,也是分享知识的最好途径。专业人士并不会仅凭一己之力从零开始创建知识,通过互相结对来学习系统的不同部分和业务,在紧要关头,每位团队成员能够接替他人的位置。
专业人士结对,是因为结对是复查代码的最好方式。系统不该包含未经其他程序员复查的代码。
专业人士会共同工作,Bob大叔期望大家能够坐在一张桌子前,彼此面对面。整个团队要像一个统一的整体,彼此连通。
编程就意味着与人协作,一定要学会交流,和大家交流。
备注
以上内容节选自《代码整洁之道:程序员的自职业素养》