当前位置: 首页> 书评> 正文

程序员修炼之道《关心你的技艺,思考你的工作》

  • 小小评论家小小评论家
  • 书评
  • 2023-03-26 11:33:47
  • 71

“Someone show loves to program and enjoys being clever about it”

——《The Pragmatic Programmer》

此句引摘自《程序员修炼之道 - 从小工到专家》,是对“hacker”含义的一种深刻见解,可意译为“热爱编程并享受在其中变得更擅长于编程的人”。作为程序员甚或是更广义的开发者而言,一旦你选择“躬耕”于软件开发领域,就必须从内心热爱这个行当,并且尽可能地赋予这份工作更多的创造性。或者说,像 “工匠”、“雕刻家”那样对待自己的工作,为打造一件让自己和大家都满意甚至惊叹的作品而精雕细琢,争做开发领域的“能工巧匠”。(“工匠”这个词在国外开发界意为丰 富的创造力而备受推崇)

在闲谈之前,不得不费点笔墨,“为什么我们需要热情?”。热情是源于兴趣的,没有兴趣自然谈不上热情。如果工作对于你而言不只是为生存所需,而同时让自己的生活充满乐趣,那么我以为这便是热情。如果像《飞行者》那样狂热,那就是偏执狂了……我个人认为对一件事物偏执,很容易让自己忽略了其他事物,比如八小时之外的生活。我想真正能贴上“专业”这个标签的开发者,一定对自己的工作热情,一定会想法设法让它变得有趣,而且生活也会变得充满乐趣。

关心你的技艺(Care Aoubt Your Craft)。或许你会觉得灰心,可能是因为自己总是在重复一些譬如业务逻辑之类缺乏创造力的工作或者自己没法让这个过程充满创造性,也可能是别人使用同样的开发工具、处在同样的开发环境中却总是比你来得更高效、更多产,也可能因为你认定自己同样拥有巨大的潜能却好像没办法培养和发挥出来。那么,你跟我一样需要关心自己的技艺,关心自己的技艺为什么总是“徘徊”在进阶之梯的中下层。我想改变目前状况的动力在于,“自己是否渴望自己在做的是一件漂亮作品,而不只是项目”。注重实效的开发者不仅要完成工作,而且要完成得漂亮,也只有实效的开发者才能兼顾二者。假设你是个注重实效的开发者,看看《The Pragmatic Programmer》会以哪些词语描述你,你就可以从这些角度来关心你的技艺:

* 早期的采纳者或快速的改编者。你具有技术和技巧上的直觉,你喜爱试验各种事物,给你一样新东西,你很快就可以把握它,并把它与你的知识的其余部分结合在一起。记得,我们团队刚成立的时候,便像facebook那样用起了subversion,而这么简单实践在我以前的团队中甚至一般的开发公司中不会这样常见。(我无意与 facebook相比 :),只是感觉现在无比的受益)。当然,你的自信出自你的经验。

* 好奇。你喜欢提问,而且知道如何提问,甚至提问后会立即动手研究。哪怕是一个简单的问题,比如“Facebook用的Subversion到底是什么玩意”?“ 那很漂亮,你用的时候有什么问题吗?”。千万别小看一丁点的问题,每一个问题都可能引发很多的尝试和思考,哪怕是很小的知识点都可能会影响到你今后的某项决策。

* 批判的思考者。你不会喜欢***裸地接受“拿来主义”,而从不过问拿来的东西是怎样来的。当同事说“就该这么做”或“只有这个办法”的时候,你不会没有任何调查、没有任何尝试就接受了这些观点。

* 有现实感。你会理智地从内因去看待一件事情,设法理解每个问题的内在本质。这种现实主义会给你良好的感知能力:事情有多困难,需要多长时间?让自己了解到某个过程将会有些困难或需要用一点时间才能搞定,这种现实感能够给予你坚持不懈的努力。

* 多才多艺。你尽力熟悉广泛的技术和环境(只是熟悉也不错了),并且努力工作,以与各种新发展并肩前行。尽管你现在的工作也许只要求你成为某方面的专才,你却总能够转向新的领域和新的挑战。不应该让自己仅仅局限于特定的技术和领域,还应该努力让自己拥有足够广博的背景和经验,以让你能在特定情况下选择好的方案。你的背景源自对计算机科学的基本原理的理解;而你的经验则来自实际项目,理论与实践的结合会使你强大起来。

思考你的工作(Think About Your Work)。每一件事情都有一个开始到结束的过程,每一天都有早上到中午到晚上的过程,每一个人生都有从少年到青年到中年到晚年的演变。我们需要在每件事情开始的时候就“未雨绸缪”地设想将会碰到什么问题,解决问题需要我们现在准备什么;我们每天都需要“朝思暮想”,醒来想想今天需要做什么该怎么做,晚上想想今天做了什么哪里做得不好哪里做得好,再想想明天要做什么做样避免今天犯过的错误怎样做才更好;对于整个人生而言,我们更需要时刻思考自己将来想成为怎样的人,拥有什么,再进一步想想今天的工作是否能促进自己成为那样的人,能否让自己可能拥有自己梦想的东西。因此,对自己做的每一件事情、每一个项目、每一份工作、每一天的努力都多一点的思考和批判,思考自己为什么要这么做、怎样做更好,只是想想,或在日记本上写上几句,或用博客来记录那些点滴。这些思考这些努力可能会在极大的压力之下占据你一些宝贵的时间,但酬劳则是更为活跃地参与你喜爱的工作,掌握的知识范围日增及由此感受到持续进步的欢愉。

Oh,关心技艺思考工作的同时,别忘了工作之外你还有能给自己带来更多快乐的关心你的人,还有你的业余兴趣。生活等着你把她变得充满乐趣,需要你的热情和创造力。

longlinfeng's Blog:www.longlinfeng.com

阅读全文