软件开发的人文关怀

本文由Yurii原创,转载请注明来源: Life Sailor

本文链接 软件开发的人文关怀


几年前,我从温伯格的《技术领导之路》中学到一点:技术人员往往更喜欢和机器打交道,因为他们“认为”自己更适合和机器打交道;但是,优秀的技术人员必须(也必然)具备好的沟通能力。所以,温伯格鼓励各位技术人员多加练习和其他人打交道的能力。温伯格的这个观点我是非常赞成的,好的技术人员一定需要“勇敢”面对他人,不能被“自实现的预言”局限在机器的世界里。

不过我也发现,“技术人员(当然我主要说的是软件开发人员)不适合跟人打交道”的负面影响不止于此,它还成了一种刻板印象(stereotype),进而影响到开发团队之外的人。这个问题其实很严重,它会导致其他人和开发人员沟通时自觉或者不自觉地切换到“和机器沟通”的模式上来,比如单纯依赖邮件而避免见面沟通,比如“你只管这么做出来就好了,别管我用来干什么”。以面向机器的模式来与人沟通,结果往往是完整的项目(而不是狭义的“软件项目”)割裂开来,皆不欢喜。

这种情况我一直在思考,究其原因,一方面是组织不够完善,另一方面,软件开发也缺少人文关怀——软件可以没有活力,而软件开发却不能没有活力;程序可以像机器一样,程序员却不能像机器一样。要改变这种状态,就应当增添更多的人文关怀(这里要多解释一点,“人文”其实也可以叫“人性”,它与“文”并没有太多关系,只是“人性主义”约定俗成翻译成了“人文主义”而已),把开发人员当成活生生的人,而不是视为程序或者工具。

当然,做到这一点并不容易,因为许多人印象里,软件开发人员就是“闷瓜”(充其量是“闷骚”),不好捉摸也不好打交道,那么干脆把他们当成工具来对待好了,“人性化”这样高难度的处理还是免谈为妙。但是事情并没有这么简单,因为不善于沟通,并不意味着开发人员不在乎人文关怀,想法,绝大多数人内心其实是愿意接受而且认可这些关怀的。只是因为许多开发人员不善于表达,因此并没有太多资料研究和论述软件开发中的人文关怀(或者开发人员真正在乎的人文关怀),所以这个话题值得一说。

按照我的经验,以下几个方面都是软件开发人员比较在乎,而往往被其他人所忽视的,所以要增加软件开发的人文关怀,不妨多注意。

第一,开发环境。这里说的“开发环境”不是指的IDE,而是开发人员所使用的软硬件。这类设备是大多数开发人员唯一的生产工具,它们的好坏直接决定了开发人员的生产效率。可惜,许多人似乎并不理解这一点,很多公司只给开发人员配备普通的办公电脑,于是开发人员也只能贡献出普通办公人员水平的程序。目前来看,硬件上有比较大的内存(8G以上),多台显示器(最好其中一台可以很方便地旋转),有用起来顺手的键盘鼠标(这点非常重要),软件上有无障碍访问Google的线路,健全开放的代码库等等,应该是必须的配备。提供这些条件,一方面可以切实提高工作效率,另一方面,可以大大改善开发人员工作的心情。后一点看起来无关紧要,却体现出对开发人员的尊重,其影响甚至超过前一点。

第二,内部交流。我见过许多开发人员,即便是与旁边或者对面的同事交流,也不愿意说话,而喜欢在IM上打字,这样的效率非常低,更厉害的是造成隔膜——上班时间都没话说,下班时间就更没话说了,想要形成有凝聚力、配合默契的团队,就始终只能是美好的愿望了。所以,日常工作中一定要鼓励面对面的交流,(尤其是多人参与的讨论,可以专门安排地方交流),以逐渐形成面对面交流的行为习惯。不少开发人员即便自己比较闷,内心也不排斥甚至渴望活跃热烈的工作气氛。我曾经遇到过一名水平不错的程序员,他虽然不擅言辞,却不喜欢大公司内“死气沉沉”的技术部,更愿意呆在人人都愿意说话,人人有话说的小团队。现在,我们部门的开发人员经常会为了一些问题三五成群地交流,并不影响其他人的工作,这种气氛还很受大家喜欢。这些例子都说明,对开发人员而言,当面对话其实是非常必要也非常合适的交流方式。

第三,工作意义。我曾说,程序员职业素养的体现之一就是对业务的了解。现实中,确实有不少一些程序员对业务不够了解,不过程序员对业务没有足够的热情只是一方面原因,另一方面,业务部门不愿意让程序员详细了解也是常见的情况。许多公司的业务部门需要开发力量时,既不描述项目的背景,也不介绍项目的意义,只生硬地扔过来几份文档(而且很多是粗制滥造的文档),就完成了对接。究其原因,有时候是这些人将程序员视作简单的“码农”,认为他们不需要了解业务,只需要写代码即可;也有写时候是因为程序员思维比较严谨,遵守逻辑,而不少业务部门的人缺乏这类训练,表达想法和需求时如不够严谨细致,更习惯“看一步算一步”的野路子。前一种情况是态度上的不尊重,后一种则是能力上的欠缺(或懒惰)。但无论是哪种情况,都会给开发人员造成非常不好的影响,最终结果就是项目的支离破碎,大家都龟缩在自己的地盘上,“铁路公安,各管一段”。其实按照我的经验,绝大多数开发人员并不排斥理解自己所开发的软件的实际应用和意义,以此为基础,大多数人甚至有兴趣去提出改进方案,这其实是非常好的状态,其前提是,需要为给程序员提供足够多的空间和机会去理解自己工作的意义,而不仅仅是告诉他们“你只管这么做就好了,别问我为什么这么做”。

第四,个人成长。“一个人要怎样才愿意呆在一家公司?”一位前辈告诉我的是:如果这个人觉得公司有前途,自己也有前途,就会呆下来。这个答案我非常认可。但是在实际工作中,后一个“有前途”往往被忽略了。在软件开发中这个问题更严重。一方面,开发人员经常被视为生产代码的机器,大家只关注他提交的程序,而不关注他是如何提交程序的,在工作中有什么收获;另一方面,很多开发人员对于前途常有持续的焦虑,又得不到解决。常见的结果就是开发任务显得冷冰冰、硬邦邦,开发人员也感觉自己做的都是简单重复劳动,产生倦意甚至抗拒情绪(我知道许多人会说,要想成为一名好的开发人员,就应当在简单重复劳动中精益求精。这个道理确实没错,但也需要有合适的切入点,换句话说,应当让开发人员认可精益求精的价值,并真切体会到它带来的好处)。其实,有许多开发人员对自己的未来是有所打算的,比如有些人可能希望更了解业务,有些人希望更深入钻研技术。技术团队的领导平时应当能抽时间了解这些设想(如果能加以建议或指点就更好了),在安排新工作时有所照顾和侧重,这样,开发人员就可以感觉到自己的成长,觉得自己的工作是有前途的,工作起来也更有积极性。

许多年前我读到董乐山先生翻译的《西方人文主义传统》,心里从此深深打上了“人文主义”的烙印(也由此知道了“人文主义”其实和“文”没什么关系)。经过这些年来的工作和思考,我又认定软件开发和其它工作并没有迥异的差别,既然其它行业可以提倡人文关怀,引入更多的人性化因素,软件开发也可以这么做。因为软件开发的特殊性,找到开发人员认可的“人文关怀”可能难度更大一些,但并非不可能,而且相当有意义。

Yurii

View Comments

  • 第八段靠前的那一句:
    “另一方面,但业务部门不愿意让程序员详细了解也是常见的情况。”
    这个“但”的位置是不是错了?

  • 嗯嗯,受益了。作为软件开发人员不能只知道搞开发,不知道与人交流,是很难跟上这个开放的国际社会。

  • 您好~我是极客公园的内容负责人,看到您这篇文章觉得非常适合,打算转载到网站,不知您意下如何?这是我们网站的地址:http://www.geekpark.net/

    另外,我们想邀请您成为网站的产品观察家,给我们投稿,如果有兴趣,可以和我联系,我的个人邮箱您应该能看到,另外,我新浪微博是:http://weibo.com/u/1704638362 希望您能考虑~

    • 你好,多谢关注。文章欢迎转载,注明来源即可。
      产品观察家我可能暂时没有时间,如果有合适时机联系你吧:)

Recent Posts

再次面临孩子不想去打冰球的问题

之前我写了一篇《坚持了两年之后,小朋友突然不想去打冰球了…》,本来是无心之作,没想到收到了很多留言,我自己也获益不少。 本来,我以为解决了小朋友的问题,此事就这样过去了。没想到的是,暑假过后,冰球训练重开,他又老调重弹:“我不去了,我不想打冰球了……”。 这可叫我如何是好?听到他嘟嘟囔囔说这一切的时候,我心里百感交集。 成年人的生活里总是有忙不完的事情,对应的,也希望一切井井有条、按部就班。因此,这样“意外”的变数,总是第一时间让人心生无奈和烦恼:天哪,怎么会这样呢?为什么会这样呢? 不过,基于之前的经验,借鉴大家的留言,这次我显然更有心理准备一些,起码不会慌乱。 之前我写过,如果父母多阅读一些高质量的育儿专著,有助于把自己的期望水平“降”到合适的程度,就不会那么焦虑甚至抓狂。 (more…)

3 weeks ago

Michael,一个打冰球的好孩子

认识Michael很偶然,但我也很幸运,因为我见证了一个“打冰球的好孩子”的成长。 最早认识Michael是在冰球队的夏季体能训练上。那时候这群孩子还只有六岁左右,每次训练都是家长送来,在旁边观看陪伴,再接回家。但是,我很快发现有个孩子不一样,家长送他来就回家,他靠自己换好全身装备,训练完自己洗澡更衣,再由家长接回去。看起来,他好像完全没有其他孩子那种“害怕独处”的感觉。 于是我问他:“小朋友,你这么勇敢,你叫什么名字呀?” 他说:Michael。 我尝试复述他的名字,好几遍都不成功,因为我总听成“米歇”,最后他耐着性子慢慢说,我仔细听才发现最后还有个音节,嘴要更扁一点,舌头往上垫,才可以念出来,类似“米歇-厄尔”。其实这个名字写出来大家都认识,英文里读作“迈克尔”,无奈德语的发音规则很严格,字母i不会像英文那样有两种读音,结尾的el又一定要发音,所以就成了“米歇-埃尔”。 (more…)

3 weeks ago

冰球训练四年的收获和感悟

偶然刷到一篇文章,说的是“贵族家长”群体给小朋友安排的活动:冰球、马术…… 我有点诧异,原来“冰球”也被贴上了“身份”的标签。想想自家小朋友的情况:赶上打折花了400多欧元买的全套护具,80元买的二手冰球包,每个月60欧元的俱乐部费用……想了想,似乎很难和“贵族”联系起来。 只不过,他已经坚持打冰球到了第四年,我们的生活确实有不小的变化。写下来,既是对自己有个交代,也可以作为“贵族运动”的现身说法。因为在我看来,如果非要说它是“贵族”运动,也只能“贵”在高(时间)投入、高产出而已。细细想来,我们的生活,已经被冰球深深的影响了。 (more…)

1 month ago

亲历德国小学的死亡威胁事件【续】

一 很多人关心,我们父子给M写了道歉信之后,对方是否有回应。 答案是:到目前为止,还没有任何回应。不过比较特殊的是,写完信之后德国小学就开始放秋假,学生不用去学校,既然见不到,也就不可能收到任何回应。 老实说,我觉得对方父母是有点反应过度的。这些年我的一条深刻经验是,如果出现分歧、矛盾,越早、在越低的层面直接面对,就越容易解决。许多小的矛盾之所以越闹越大甚至无法收场,往往都是经过了很多演绎、传话,而没有在一开始就开诚布公地面对。 试想,如果自己的孩子收到写着“我要杀了你”的信件,哪怕一开始很惊慌甚至愤怒,但仔细想一想,毕竟还有很多信息是未知的——比如对方是谁,平时言行如何,为何要写这样的信…… 更好的办法或许是先去直接寻求这些问题的答案,而不是直接把信交给家长委员会,走“公事公办”的路子。 我当然承认,“公事公办”无可厚非,对方家长也有这样的权利——所谓权利,就是“有资格做对方不喜欢的事情,人家还拿你没办法”。既然有这样的权利,就需要尊重。 所以,“严于律己,宽于待人”的确是与人相处的重要法则:我不会选择这么做,但我能理解和尊重你这么做的权利。 也有人问,那将来你遇到M的父母,会不会紧张? 答案是:不会。 (more…)

1 month ago

亲历德国小学的死亡威胁事件

一 收到S老师邮件的时候,我刚刚胆战心惊地做完第一次德语技术分享,还在享受着同事们的鼓励。猛然间就收到一封邮件:“您的孩子在学校参与了一起性质严重的事件,您必须来学校面谈,请从以下时间段中选择……” 什么?“性质严重的事件”?我揉了揉眼睛,确认自己没有看错。再把这段文字贴到谷歌翻译里,确认自己没有理解错。 我没有看错,也没有理解错,就是“性质严重的事件”。好吧,既然“性质严重”,那谈话肯定是越早越好,最早的日期是第三天。我紧赶慢赶,回信确认了最早可能的谈话时间,虽然德国人通常都不期待能这么快收到回复。 去接他回来的路上,我发现他一切正常,完全看不出任何异样。于是,我也没有表现出任何异样,只是依照惯例,问他当天发生了什么,在学校开心不开心。 得到肯定的答复之后,我心生疑惑,看起来和“性质严重”完全不搭边。那会是什么事情呢? 我又问他,有没有和同学吵架、打架,是不是被人欺负了不敢说。但是,答案全都是“没有”。 我满心怀疑,又按捺不住,直接问:“既然一切都挺好,为什么S老师给我发信,说让我来学校跟她谈话呢?”我担心“性质严重”会吓到他,故意隐去了这个词。 他的满面春风在那瞬间凝固了,喃喃低语道:“好吧,原来是那件事,我还以为她不会跟你说。” (more…)

1 month ago

写在加入乐团一周年

在2024年之前,我从来没想过自己有一天还可以加入乐团,甚至参加音乐会演奏。我只是个普通中年人,在之前文章里说过,上世纪八十年代随大流弹了十年手风琴,考过六级(当时最高八级)之后就彻底放弃了。直到二十多年后,在上海工作时才重新开始弹琴,当时有幸跟夏老师学了两年,打开了感官,懂得了音乐的世界远远比考级要广阔和美妙。再往后,就是自己看Youtube学习了一些乐理知识。因为德国几乎每个城市都有很多音乐学校,2023年末,我给本市的音乐学校写信,询问是否可以参加手风琴课程。通过回信我才知道,原来不只是“每个城市都有很多音乐学校”,而且“每个城市都有很多乐团”,哪怕是手风琴乐团。就这样,阴差阳错的,2024年初,经过简单的试奏,我加入了本市的手风琴乐团。虽然我是乐团新人,仍然有很多要学习的,但是一年下来,确实有不少感受。如果读者朋友也对音乐感兴趣,或者想让孩子学习音乐,也许我的感受可以提供一些参考。 (more…)

1 month ago