专访庄表伟:由禅宗教你怎样进入编程世界

    宋代禅宗大师青原行思提出参禅的三重境界:参禅之初,看山是山,看水是水;禅有悟时,看山不是山,看水不是水;禅中彻悟,看山仍然山,看水仍然是水。

      在庄表伟看来,技术的学习也是如此。

三重境界

庄表伟目前是印客网的技术总监。在他初学编程的时候,“看山是山,看水是水”。BASICBASIC语言,LogoLogo语言,CC语言,各不相同,需要分别学习、记忆和掌握各自的知识点。

等到渐渐地运用纯熟了,可以触类旁通,发现以前学过的那些语言和将要新学的,总有这样那样的相通、相近、相似之处。任何一门语言,庄表伟都能快速上手。在意识里语言已没有差别,无非是语法与关键字的区别而已。然而,过了很长时间他才发现,那时的自己远没有到达最高境界,最多也不过是“禅有悟时”。

那大约在2002年的时候。庄表伟开始接触Java,然后看了《Thinking in Java》这本书,进一步深入了解到Java语言的许许多多的细节和深刻的内涵。才醒悟到我以前所谓的掌握多种语言,其实还是只掌握了一门语言,就像《天龙八部》里的鸠摩智,以小无相神功,耍那少林七十二绝技,其实却都不过是一套本事罢了。而且更为重要的是他更加意识到要真正用好一门语言,发挥一门语言的长处,理解这门语言的思想内涵,实现细节是非常关键的。而实现细节是各个语言自身的特色,到头来还是把不同的语言,当成不同的语言来使用。看山仍然山,看水仍然是水。

再后来,在思考面向对象与框架的过程中,庄表伟得出了 “语言是强框架,而框架是弱语言”的结论。他说,“把握了这一点,就能够在更广阔的层面上,理解各种技术和语言了。” 这也是他在《敲响OO时代的丧钟》里所设计的“Dynamic Java”语言的理论基础。

Delphi 2007先想到

      山水各有特点,技术各有不同,那么在最初时,我们该选择什么技术方向去走呢?对此,庄表伟认为选择什么样的技术方向并不重要,关键是技术深度要尽可能的钻进去,要达到一定的境界,毕竟任何山水皆有独特的风景,任何一个技术方向也都值得深入的研究。他说最怕的一份简历里写满了技术词汇,却没一个拿得出手的本事。

技术成长的道路犹如坐禅,急不得更浮躁不得,是没有任何捷径可走的。所以在庄表伟的职业生涯过程中,他一直脚踏实地,不断提高自己的技术境界。付出总有收获,所以庄表伟对技术的驾驭越来越老练,他曾在几乎不可能的时间限制内完成项目,曾用非常先进的理念开发过至今仍然超越同类软件的产品。

这些不但提高了他的技术水平,也给庄表伟带去了成就感,给了他继续“修炼”技术的信心。用庄表伟的话说,“做软件开发这一行,能够让我不断的体会到大大小小的成就感,这也是我始终热爱这一行的根本原因。”

禅宗讲究潜心修炼,厚积薄发。庄表伟印象中比较深刻的一次“发力”是在1998 年的时候。他带了3个人,开发一个叫做Info Develop的项目,那是一个类似于FrontPageWeb开发集成环境的项目。在那个项目里,他们实现了一种叫做“Info Script”的脚本描述语言,用于描述各种HTML元素。

一个HTML组件,就是一个能够接收一组属性设定,输出一段HTMLInfo Script脚本。通过灵活地编写这种控件脚本,可以任意地扩展WebIDE 中所支持的HTML控件,并且实现了类似VB/Delphi的可视化编辑。“到了今天,我看到Delphi 2007VCL for Web,也不过就是这样的思路。这应该算是英雄所见略同吧。”

 关于管理

       许多人对技术总监的工作职责认识不清,不同的公司,技术总监的含义也往往不同。庄表伟作为一名技术总监,用非常简练的两句话概括了自己的职责:“一、凡是与技术有关的决策,最终由我来确定;二、凡是与技术有关的管理事务,由我来管理。”

其实,从毕业时的普通程序员到现在的“管事”阶段,庄表伟用了七年时间,从97年到04年,他一直在做事。“在做事的阶段,‘我’是中心,我遇到困难,我分析问题,我寻求帮助,我解决问题……成功了基本上是因为我的努力,失败了基本上是因为我的疏忽。怨不得别人。” 庄表伟说。

管事跟做事有很大的区别。在管事阶段,大多数的事情是交由他人完成的。“我能够分配任务,能够检查进度,能够鼓励、帮助、责怪、甚至炒人鱿鱼。但是,我不能够、也不可能替别人做事。”庄表伟说。如果任务失败,他也不能简简单单地归过于人,而是需要分析:究竟是手下的能力问题呢,还是他领导上的分配任务不合理呢?

 对庄表伟来说,管事是个不小的挑战,而从做事向管事的角色转化也是个很艰难的过程。虽然看了不少管理学方面的书籍,但对于管事的学问和技巧,很多道理在做事的阶段是永远明白不了的,而且等到管理团队的时候,才发现很多现实的困难,书上根本讲不清。正所谓纸上得来终觉浅,绝知此事要躬行

现在回头看那个阶段,庄表伟认为在从做事向管事的角色转化过程中,要想把事情管好,就得从简单的Todo List中明确地分离出Check List。更为重要的是,在分配一件事之前,就设立Check的时间、方式、标准。以确保做事的过程始终处于受控的状态。“这就像Code-FixTest-Driven Developement的区别一样。Check要先于To do,然后才能把事情管好。”庄表伟说。 “Check-Driven”是庄表伟自己想的词,灵感来源于Test-Driven Development

一个好的管理者,“如心使臂”、“如臂使指”,而做得不好的管理者却处处制肘,力不从心。在学着做一名优秀的管理者的时候,《卓有成效的管理者》一书给了庄表伟很多启示。管理的能力是可以通过艰苦的磨练而提升的,管理的有效性,也必须是通过持久的反省与自我训练才能逐步提高的。书中的很多观点让庄表伟明白,世上没有容易的事情,却有正确的道路

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值