有源则至清——我读《移山之道》

原创 2007年09月19日 11:46:00

引子
===============

大概是因为列在博文的作译者清单里的缘故罢,我常常能在第一时间得到有关新书的消息。这本《移山之道》的消息在《大道至简》出版前我就知道了。当时也是心中忐忑,因为同样是一本言“道”的书,同样以愚公移山为背景,同样讲软件工程……邹欣先生在博客中说这“车”撞得他眼冒金星,其实我又何尝不是如此?哈哈~于是当时便想着:等《移山之道》出版了一定得好好看看,是不是好书不论,评论的心态要先调整好。。。。

还没想好怎么个调整法子,书就到了手上;还没看到第一页,书就被同事抢去了。有些事往往如此,来也没个准备,去也没个准备。不过这被同事抢走的事实,让我知道:无论如何,这一定是一本受欢迎的书。

 
 
一、VSTS之源:MSF
===============

一本书,最怕写到糊里糊涂,自己说不明白别人也读不懂。我写书,所以便常常这样提醒自己。今天读到邹欣先生的《移山之道》,第一篇便说到这样一句话:

---------------
问渠哪得清如许,为有源头活水来。
---------------

书的开篇便解了我久久以来的疑惑:如何把一本书写清楚。这句话摘自朱熹的《观书有感》,所以说的是读书者如何“看书的‘清如许’”。同样一句话,简略下来就是“有源则清”。

书名“移山之道”并不是哲学的“道”,简言之就是“法子”。所以本书原本就是在讲“移山的法子”。作者将软件工程(的具体实施)寓作移山之艰,在这万千艰难中,作者给了的“法子”是两个东西:MSF和VSTS。前者,是思想理念,后者则是方法工具。

注1:我向来不直接讨论一个方法、思想的好或坏,因为这种讨论总是宥于某种具体的背景或范围的。所以我这里也不对MSF和VSTS直言好恶,我们这里只说书。


说实话,在读邹先生这本书之前,我与书中的“果冻”一样,面对MSDN上的“官方绕口令”大感困扰。基本上来讲,我除了知道“MSF/MSA是微软的工程理论”之外,没有从那些绕口令中得到任何有价值的信息。而这样的知识到了《移山之道》里,变成了“白话MSF”。一句话:就是微软推荐的做软件的方法。

再简而言之:一种方法。如同敏捷方法一样,MSF方法也有几个“基本原则”——好象从敏捷之后,工程理论都是先谈“原则”的。《移山之道》一书除了讲述这些原则之外,也讲述了他们在VSTS中的映射——一些具体的功能。

这大概就是前8章的内容了。其中前4章是我推荐阅读的部分。

 
 
二、移山之道,源出务实
===============

第二个该读的部分,则是12章之后的内容。这本书构建了一个虚拟的项目,并且围绕一个完整的项目过程“导演”了一出实战的大戏。我们可以清晰地看到每一个工程角色在这个戏目中的表演、心态,甚至神情(因为有很漂亮的插图)。

我们常读到一些讲工程实施的书籍,大概都是讲某种工程方法、工具或过程理论的条条框框或者(界面)操作指南。读者看完,大抵是既不见得能懂,也不见得会用的。凡是这些,都必须要放在具体的工程环境中,读者才会发现问题。而一发现问题,读者要么畏难而弃,要么以大无畏的精神一通乱撞。工程中不能活用的,大概都是这样的状况了。而《移山之道》则是切切实实的讲工程场景的,讲具体场景下的应用方法的。所以,你会看到类似这样的语句:
---------------
同学:对!我们要用全(敏捷开发模式的)5个工作项类型。
……
阿超:当敏捷模式变成强迫,那还能敏捷到哪儿去呢?
---------------

又或者一些应时应事的实战法门:
---------------
……
同学:你说得在理,但是老师让我们用全套敏捷模式,我们怎么办?
阿超:你们可以回去告诉老师说这是最新的“移山精简开发模式”,填补了国内外空白,(大牛、超人和理论家们都一致说——这是我加的^.^)很好用。
---------------

这样的段落看了是非常过瘾的。如果遇到这种连具体工程是什么都不知道,就要求“用全套XX方法、XX模式、XX过程”的那些工程角色时,这常常是可以派上用场的。

 
 
三、怎么读这本书
===============

这本书的内容可以分成好几个部分:
 1、VSTS与MSF基础
 2、团队角色的基础素质
 3、工程实战的细节与处理方法
 4、阿超的故事
 5、用好VSTS

一般的读者,大概可以把本书当成VSTS的快速指南,所以可以用它来学学VSTS以及MSF。毕竟如宣传所言这是“第一本由微软VSTS一线开发人员所写的原创精品”。同样的道理,对于一个工程团队来说,也不妨用这本书作为团队成员的一般性读物。另外,如果你的团队的“个人技术和协作精神及技巧”尚有待启蒙(在我看来许多人有此需求),不妨看看本书的第二篇(9~11章)的内容。

但如果这样读这本书,大概是暴殄天物。因为这些大概是1、2、5三个部分的内容,只是书中所述的末节,远非精要。

我读这本书,看完前四章,全书的思想基础与行事原则就已经了解了。接下来,我大概都是在看书中以阿超、大牛、果冻等虚拟角色之间的对话,我称之为“阿超的故事”。在我看来,“工程实战的细节与(具体的)处理方法”,只不过是阿超的思想的一种表达罢了。所以上述3、4两部分综合起来,才是全书的精华。而这些精华,作者用楷体小字藏在一段段对话、一篇篇文言,以及一个个籍阿超的身份而作出的工程决策之中。

这些一般读者快速掠过的东西,我看得反倒细致些,启我思想的也反倒多一些。同样,也希望读者能放下学以致用的急切心态,好好读读阿超的故事。

总的来说,读这本书,可饮水,可思源。饮水者略知其用。思源者,才能从作者对VSTS的讲述中思及MSF的价值,或从案例中看到作者务实求用的思想。

愿读者作思源者。相信作者以《移山之道》为书名,也有这样的深意。若此一来,“道”不必仅作“方法”去解释了。 

读《移山之道》&《现代软件工程讲义》 —— Ever

读《移山之道》&《现代软件工程讲义》 —— Ever 这是我们软件工程的个人阅读作业,然后我就把邹欣老师的《移山之道》和《现代软件工程讲义》读了,还是有些体会的,这里说一下。作为大学生,没有真正...
  • ilvu999
  • ilvu999
  • 2012年11月02日 00:47
  • 265

有源滤波器——Salley滤波器

此文提供关于Salley-Key有源滤波器计算参考,仅作参考,请谨慎处理,如果问题请大家指摘。 有源滤波器 有源滤波器一般不适用体积大、价格高的低频线圈L,而是由RC和放大电路网络构成滤波器。其中的放...

VB6.0与SQLServer——有源数据库连接

VB6.0中数据访问接口有三种:ActiveX数据库对象(ADO)、远程数据对象(RDO)和数据访问对象(DAO)。ADO(ActiveX Data Objects)是用于存取数据源的COM组件是Mi...

【运算放大器技术】——有源负载

晶体管和场效应管都是有源元件,如果它们作为负载就称为——有源负载。 提出问题: 共射放大电路的电压放大倍数,可见增大Rc可以提高电压放大倍数,但是Rc增大后,为了保持静态工作点不变,需要提高电源电...

读《代码整洁之道》有感——如何写出好代码

怀念小时候写作文了,布置作业,回去读《OOXX》这本书,然后写篇读后感,就叫“读《OOXX》有感”。 作为一个程序员,一直以来以写出好代码为目标。 但也迷茫过,究竟写出来的怎样才能算是...

读《我编程,我快乐》——程序员职业规划之道

以下是我读《我编程,我快乐》中记录的一些我认为很有启发或有用的话,多是原话,有些是自己简化了大段内容所精简的,所以本篇文章即是摘录又是笔记。其中原书第四章“推销…不仅仅是迎合”我大概都没记,因为在我看...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:有源则至清——我读《移山之道》
举报原因:
原因补充:

(最多只允许输入30个字)