解决方法
尽管你缺乏经验(而且恰恰因为你缺乏经验),你会为团队带来一些独特的品质,包括富有感染力的激情。不要让任何人压抑了你对软件工艺的兴奋——它是一种宝贵的财富,它将加速你的学习。
作为软件开发者,你将不可避免地成为团队一部分,并在此基础上展开工作。在任何组织结构中,都会有一种遵循规范的趋向,对新人而言尤其如此。大多数团队都不会对技术有过热的激情。可以肯定,他们都专注于交付下一个项目,或者改善软件开发周期中的某些让他们头痛的方面。因此,充满激情的学徒常常会屈服于“做人要低调”的外界压力。他们要么完全压抑自己的热情,要么仅在日常工作之余才让它表现出来。
在相对完善的团队中释放激情当然是有风险的。如果团队士气较低或者团队不欢迎新人,你可能在背后遭遇白眼。对那些认为竞争力比学习能力更重要的人来说,毫无疑问,你会给他们留下不好的印象,特别当你暴露出自己无知的时候。跟任何模式一样,这一模式也不应被盲目运用。团队动态(team dynamics)永远都是需要考虑的因素。如果你发现自己处在一个无法接受你激情的团队中,那么你将需要想些办法来养护自己的激情。
然而,在一个对学徒的兴奋和贡献持开放态度的团队中,你将能为团队输入独特的品质,而且是有经验的开发者可以依赖的品质,比如自由的想象力和激情。在你的整个职业生涯中,只有这段时间冒冒风险,大声讲讲自己的想法是最靠谱的。你几乎不会因此失去什么。你的思想、热情将增加团队的智慧,并带来多样性。James Surowiecki在他的《The Wisdom of Crowds》(百万大决定:世界是如何运作的?)一书中多次指出:思想的多样性应看作集体智慧的关键因素。
对航空母舰舰队集体心理的一次有趣的研究显示:要安全地操纵一艘战斗机不断从它上面起降的巨船,需要复杂的、相互配合的行动,而新人在这类行动中扮演重要角色。研究者发现,一个由不同经验水准的人组成的团队更加健康。
如果把不同的经验水平关联到一起,比如当脑子里没有任何“想当然”的新手与认为自己已纵观全貌的老前辈们更加频繁地打交道时,大家对问题的理解都会加深。
——Karl Weick和Karlene Roberts,《Collective Mind in Organizations》(组织中的集体思想),第366页
最后,释放激情是学徒们相对较少的责任之一。你可能不会为团队带来深奥的知识和极高的生产率,但是,为团队注入一些兴奋因素,并对所有的事情表示疑问是你的责任。你(临时)处在一个独特的位置上,拥有新鲜的视角,这使你能提供一些有用的建议,从而改善整个团队。
学徒向技师学习,技师也向学徒们学习。激情洋溢的初学者不仅能恢复技师的活力,还能从外界带来新的思想来挑战更有经验的技师。精心挑选的学徒甚至能使师傅变得更有成效。
——Pete McBreen,《Software Craftsmanship》,第75页