程序开发心理学(银年纪念版)
基本信息
- 作者: (美)Gerald M.Weinberg [作译者介绍]
- 译者: 邓俊辉
- 丛书名: 软件与系统思想家温伯格精粹译丛
- 出版社:清华大学出版社
- ISBN:7302070261
- 上架时间:2003-8-30
- 出版日期:2003 年9月
- 开本:16开
- 页码:418
- 版次:1-1
- 所属分类:
计算机 > 电子商务与计算机文化 > 综合
内容简介回到顶部↑
[a href="http://www.china-pub.com/main/sale/renwu/2-weinbergjs.htm" target="_blank"][b]gerald
m. weinberg致中国读者的信[/b][/a][font color="#ff6600"][/font][a href="http://www.china-pub.com/main/sale/renwu/2-weinberg9918.htm#d" target="_blank"][b]精彩评注连载[/b][/a][font color="#ff6600"][a href="http://www.china-pub.com/computers/bbs/addfollow.asp?id=12057&rootid=2&boardid=1" target="_blank"][b]发表评论[/b][/a][/font][a href="http://www.china-pub.com/computers/subject/huodong/weinberg/weinberg.html" target="_blank"][b]weinberg专题[/b][/a][font color="#ff6600"][/font][a href="http://www.china-pub.com/computers/bbs/addfollow.asp?id=12057&rootid=2&boardid=1" target="_blank"]
[/a][font color="#ff6600"]
本书开创"以人为本"研究方法的先驱,在长达25年的岁月中一直保持活力,至今仍在继续。1997年,本书作者温伯格因其在软件领域的杰出贡献,被美国计算机博物馆的计算机名人堂选为首批5位成员之一。[/font]
在计算机界,还没有任何一本计算机方面的书,在初次出版之后,能够在长达25年的岁月中一直保持活力--而且这种活力到今天仍在继续。《程序开发心理学》是开创"以人为本"研究方法的先驱,它以其对程序员们在智力、技巧、团队和问题求解能力等方面独特的视角和敏锐的观察经受住了时间的考验。 weinberg先生在1971年出版的、具有深远影响的第1版的基础上,增加了令人耳目一新的内容,构成了这本《程序开发心理学》的银年纪念版。新增的内容包括:新的前言,每一章之后的评注以及针对影响程序员职业生涯的若干问题发自内心的真知灼见。 weinberg先生以其独特的视角回顾了自己当年的见解,重新审视了与今天的程序开发尤为相关的问题,并强调了今与昔的异同。内容包括:作为社会行为的程序开发、心理学测量、无私式程序开发、程序开发团队、大型工程中共同的社会性问题、智力水平,以及问题求解能力、积极性、培训以及经验,还有程序语言设计的一些原则等等。
[/a][font color="#ff6600"]
本书开创"以人为本"研究方法的先驱,在长达25年的岁月中一直保持活力,至今仍在继续。1997年,本书作者温伯格因其在软件领域的杰出贡献,被美国计算机博物馆的计算机名人堂选为首批5位成员之一。[/font]
在计算机界,还没有任何一本计算机方面的书,在初次出版之后,能够在长达25年的岁月中一直保持活力--而且这种活力到今天仍在继续。《程序开发心理学》是开创"以人为本"研究方法的先驱,它以其对程序员们在智力、技巧、团队和问题求解能力等方面独特的视角和敏锐的观察经受住了时间的考验。 weinberg先生在1971年出版的、具有深远影响的第1版的基础上,增加了令人耳目一新的内容,构成了这本《程序开发心理学》的银年纪念版。新增的内容包括:新的前言,每一章之后的评注以及针对影响程序员职业生涯的若干问题发自内心的真知灼见。 weinberg先生以其独特的视角回顾了自己当年的见解,重新审视了与今天的程序开发尤为相关的问题,并强调了今与昔的异同。内容包括:作为社会行为的程序开发、心理学测量、无私式程序开发、程序开发团队、大型工程中共同的社会性问题、智力水平,以及问题求解能力、积极性、培训以及经验,还有程序语言设计的一些原则等等。
作译者回到顶部↑
本书提供作译者介绍
作者简介——认识这位软件与系统领域的“醒客”
温伯格(Gerald M. Weinberg)首要的贡献集中于软件领域,他是从个体心理、组织行为和企业文化角度研究软件管理和软件工程的权威和代表人物。在超过40年的软件职业生涯中,温伯格从事过软件开发,软件项目管理、软件管理教学和咨询,他更是一位杰出的软件专业作家和思想家。
1997年,温伯格因其在软件领域的杰出贡献,被美国计算机博物馆的计算机名人堂选为首批5位成员之一。这个名人堂至今只有20名成员。为中国读者所熟悉的比尔·盖茨.. << 查看详细
温伯格(Gerald M. Weinberg)首要的贡献集中于软件领域,他是从个体心理、组织行为和企业文化角度研究软件管理和软件工程的权威和代表人物。在超过40年的软件职业生涯中,温伯格从事过软件开发,软件项目管理、软件管理教学和咨询,他更是一位杰出的软件专业作家和思想家。
1997年,温伯格因其在软件领域的杰出贡献,被美国计算机博物馆的计算机名人堂选为首批5位成员之一。这个名人堂至今只有20名成员。为中国读者所熟悉的比尔·盖茨.. << 查看详细
目录回到顶部↑
第1篇 程序开发的人力效率 1
第1篇 程序开发的人力效率--评注 3
第1章 阅读程序 4
例子 5
机器的局限 6
语言的局限 7
程序员的局限 8
历史遗留问题 8
规范 9
总结 9
问题 9
参考书目 10
第1章 阅读程序--评注 12
第2章 好程序的要素 13
技术规范 14
日程计划 15
适应性 16
效率 18
总结 19
问题 20
第1篇 程序开发的人力效率--评注 3
第1章 阅读程序 4
例子 5
机器的局限 6
语言的局限 7
程序员的局限 8
历史遗留问题 8
规范 9
总结 9
问题 9
参考书目 10
第1章 阅读程序--评注 12
第2章 好程序的要素 13
技术规范 14
日程计划 15
适应性 16
效率 18
总结 19
问题 20
译者序回到顶部↑
译者后记
--个体性最后的堡垒
Poetry is what gets lost in translation.
-- Robert Frost
译完这本与自己年龄相近的奇书,掩卷沉思,我的目光再次落在封皮的"Computer Programming"上面。十多年来,这个关键词犹如一个精灵,一直相伴在我的左右:在学生们、程序员们书架上成摞成摞的手册、大全、教程、进阶、技巧、精华、经典、探秘、未公开的内幕等等的封皮上,总能见到它;而与本书几乎同时出版的那三卷"The Art of Computer Programming",不知曾经将包括我在内的多少人引向了计算机科学之路。然而此时此刻,我却觉得这个再熟悉不过的关键词忽然间变得陌生起来,但又不知原因何在。我怀疑这可能就是所谓的"格式塔完形心理"在起作用,为了从其中摆脱出来,我决定尝试一下画家们"从裤裆下看世界"的方法。我打开Amazon搜索了一下,发现正在那里热销的书籍之中,与"Computer Programming"有关的有近30,000种(其中最近三年内出版的就有近7,000种),而其中与心理学有关的只有约30种。这时再回过头来看看手头的这本书,我终于意识到Weinberg所讲的"Computer Programming"的确有其与众不同之处--也许正是这种不同,才使得这本书经过30余载风采依旧。
更确切地说,Weinberg是通过一个不同的视角来看待"Computer Programming"。贯穿本书的一个最重要的思想就是:"Computer Programming"是一项人类的活动(Human Activity)。它不再是依靠某个人的技能就可以完成的行为,需要依靠人类集体的相互合作,因此绝不等同于我们通常所说的"编程"或者"掌握编程工具和技巧"。正因为在这个合作的过程中人性已经成为了至关重要的一个因素,所以每个程序员的个性、人格与其独特的问题求解模式都应该得到尊重。为了使这种合作的效绩达到最佳,需要借助于正确的选拔、培训、组织与管理方法,消除程序员与其主管之间的误解与偏见,并帮助他们从"人之个体性的最后堡垒(the Last Bastion of Individuality)"中走出来。(此外,软件企业与客户之间的矛盾也是一个重要方面,在Weinberg后期的"Quality Software Management"系列丛书中对此有深入的讨论。)时至今日,有很多的程序员和主管经理依然坚信"编程能力"是与生俱来的;而更可悲的是,仅仅将其视为一门手艺甚至饭碗的还大有人在。面对在软件业界依然十分流行的此类神话,Weinberg的话值得我们每一个人深思:优秀的程序员是培养出来的,而不是天生的(Good Programmers are made, not born)。但愿更多人能由此猛醒,从中找回做为人的自尊与自信。
Weinberg对"Computer Programming"的理解与界定也与大学教授们很不一样。由于自认为能够站在计算机科学的高度分析和解决问题,后者总是会不由自主地流露出一种相对的优越感。的确,在计算机科学中所讨论的,都是一些有关计算机的本质与一般性规律的问题,其中有些问题甚至已经近乎玄妙了。因此,在教授们的词典里,"Computer Programming"往往被解释为"程序设计",他们感兴趣的只是计算机程序在时间与空间上的效率、复杂度和可行性等等。然而Weinberg却明确地表示,他并不认为计算机科学是一门科学。作为计算机科学的一名信徒,我当然不敢苟同于Weinberg先生的这一断言。然而我也十分清楚,计算机科学并非十全十美,更谈不上全能全知。一旦将计算机奉若神明,人也就成为了奴隶。在不知不觉中,计算机科学也成为了我们的一个壁垒,它将人与人之间的关系简单而生硬地切断了。"它山之石,可以攻玉",从这个意义上讲,我希望自己的同事与同行们也能够从本书中获得有益的启示。
有个问题一直萦绕在我的头脑中:中国并不缺少(至少是潜在的)精于编程之道的人才,也不乏有志于投身计算机科学的青年人,但是为什么我们的软件研究与软件产业不能取得长足的发展呢?除了资本、市场、法律和体制等因素之外,难道本书中提到的人性不也是一个重要的因素吗?我们的不同学科、不同领域之间总是那样泾渭分明,似乎到处都是无形的壁垒。这种心理上的壁垒,也许就是我们最大的阻碍或敌人。钱钟书先生所揭示的"围城效应"之所以如此深刻,也许正是由于它反映了人作为社会性动物的行为特征。然而在今天,无论是在软件业界还是学术界,似乎"城里人既不想逃出去,城外人也不想冲进去"。我相信有很多人都会有与我类似的困惑,但愿他们在读完本书之后,能够更多地尝试站在别人的位置重新进行观察和分析。
就在2003年春节联欢晚会的几个小品中,居然有三个故事分别演绎了父亲与儿子、交警与的哥、医生与病人的角色互换--这也许只是一种巧合,但我更愿意相信,中国人已经开始懂得如何从人性的角度去看待与理解他人,并如何通过他人反过来更加深刻地了解自己。但愿这其中有更多的程序员、软件管理人员、软件客户以及计算机科学工作者--中国软件行业的成熟与腾飞需要我们的共同努力。
我不想用"时间仓促"之类的托词为自己工作中的错误预先铺设好退路。正如Frost所言,在翻译这样一本佳作的过程中,其中的"诗意"是注定会遗失的。比如这里的"Computer Programming"一词最终译作"程序开发",虽然避免了与"编程"、"程序设计"混为一谈,却实属反复推敲之后的无奈选择。尽管如此,我认为在向Frost定律进行挑战的过程中,自己已经竭尽了所能。因此,我真诚地渴望来自读者的批评指正,你们的意见将会令我更有信心地发起下一次挑战。
在本书的翻译过程中,得到了Weinberg先生的多次热情帮助。他对自己的错误毫不避讳与隐瞒,本人就因为侥幸发现书中一处小纰漏,得到了Weinberg先生寄来的一美元奖励。他对科学的这种严谨态度令人钦佩,因为他追求的不仅是完美的结果,而且更加看重通往完美的过程。
我也想借此机会对不知名的审稿人表示感谢,他们为译本的完善提供了宝贵的意见。此外,他们的细致与认真精神也是值得我学习的。
我的妻子王霞在繁重的工作与家务之余,也给本书的翻译直接提供了很多建议,并对整个译稿进行了审阅。没有她的支持与鼓励,这项工作不可能完成。我把这部译著献给她,还有我们的即将满一周岁女儿。
邓俊辉
2003年2月8日
--个体性最后的堡垒
Poetry is what gets lost in translation.
-- Robert Frost
译完这本与自己年龄相近的奇书,掩卷沉思,我的目光再次落在封皮的"Computer Programming"上面。十多年来,这个关键词犹如一个精灵,一直相伴在我的左右:在学生们、程序员们书架上成摞成摞的手册、大全、教程、进阶、技巧、精华、经典、探秘、未公开的内幕等等的封皮上,总能见到它;而与本书几乎同时出版的那三卷"The Art of Computer Programming",不知曾经将包括我在内的多少人引向了计算机科学之路。然而此时此刻,我却觉得这个再熟悉不过的关键词忽然间变得陌生起来,但又不知原因何在。我怀疑这可能就是所谓的"格式塔完形心理"在起作用,为了从其中摆脱出来,我决定尝试一下画家们"从裤裆下看世界"的方法。我打开Amazon搜索了一下,发现正在那里热销的书籍之中,与"Computer Programming"有关的有近30,000种(其中最近三年内出版的就有近7,000种),而其中与心理学有关的只有约30种。这时再回过头来看看手头的这本书,我终于意识到Weinberg所讲的"Computer Programming"的确有其与众不同之处--也许正是这种不同,才使得这本书经过30余载风采依旧。
更确切地说,Weinberg是通过一个不同的视角来看待"Computer Programming"。贯穿本书的一个最重要的思想就是:"Computer Programming"是一项人类的活动(Human Activity)。它不再是依靠某个人的技能就可以完成的行为,需要依靠人类集体的相互合作,因此绝不等同于我们通常所说的"编程"或者"掌握编程工具和技巧"。正因为在这个合作的过程中人性已经成为了至关重要的一个因素,所以每个程序员的个性、人格与其独特的问题求解模式都应该得到尊重。为了使这种合作的效绩达到最佳,需要借助于正确的选拔、培训、组织与管理方法,消除程序员与其主管之间的误解与偏见,并帮助他们从"人之个体性的最后堡垒(the Last Bastion of Individuality)"中走出来。(此外,软件企业与客户之间的矛盾也是一个重要方面,在Weinberg后期的"Quality Software Management"系列丛书中对此有深入的讨论。)时至今日,有很多的程序员和主管经理依然坚信"编程能力"是与生俱来的;而更可悲的是,仅仅将其视为一门手艺甚至饭碗的还大有人在。面对在软件业界依然十分流行的此类神话,Weinberg的话值得我们每一个人深思:优秀的程序员是培养出来的,而不是天生的(Good Programmers are made, not born)。但愿更多人能由此猛醒,从中找回做为人的自尊与自信。
Weinberg对"Computer Programming"的理解与界定也与大学教授们很不一样。由于自认为能够站在计算机科学的高度分析和解决问题,后者总是会不由自主地流露出一种相对的优越感。的确,在计算机科学中所讨论的,都是一些有关计算机的本质与一般性规律的问题,其中有些问题甚至已经近乎玄妙了。因此,在教授们的词典里,"Computer Programming"往往被解释为"程序设计",他们感兴趣的只是计算机程序在时间与空间上的效率、复杂度和可行性等等。然而Weinberg却明确地表示,他并不认为计算机科学是一门科学。作为计算机科学的一名信徒,我当然不敢苟同于Weinberg先生的这一断言。然而我也十分清楚,计算机科学并非十全十美,更谈不上全能全知。一旦将计算机奉若神明,人也就成为了奴隶。在不知不觉中,计算机科学也成为了我们的一个壁垒,它将人与人之间的关系简单而生硬地切断了。"它山之石,可以攻玉",从这个意义上讲,我希望自己的同事与同行们也能够从本书中获得有益的启示。
有个问题一直萦绕在我的头脑中:中国并不缺少(至少是潜在的)精于编程之道的人才,也不乏有志于投身计算机科学的青年人,但是为什么我们的软件研究与软件产业不能取得长足的发展呢?除了资本、市场、法律和体制等因素之外,难道本书中提到的人性不也是一个重要的因素吗?我们的不同学科、不同领域之间总是那样泾渭分明,似乎到处都是无形的壁垒。这种心理上的壁垒,也许就是我们最大的阻碍或敌人。钱钟书先生所揭示的"围城效应"之所以如此深刻,也许正是由于它反映了人作为社会性动物的行为特征。然而在今天,无论是在软件业界还是学术界,似乎"城里人既不想逃出去,城外人也不想冲进去"。我相信有很多人都会有与我类似的困惑,但愿他们在读完本书之后,能够更多地尝试站在别人的位置重新进行观察和分析。
就在2003年春节联欢晚会的几个小品中,居然有三个故事分别演绎了父亲与儿子、交警与的哥、医生与病人的角色互换--这也许只是一种巧合,但我更愿意相信,中国人已经开始懂得如何从人性的角度去看待与理解他人,并如何通过他人反过来更加深刻地了解自己。但愿这其中有更多的程序员、软件管理人员、软件客户以及计算机科学工作者--中国软件行业的成熟与腾飞需要我们的共同努力。
我不想用"时间仓促"之类的托词为自己工作中的错误预先铺设好退路。正如Frost所言,在翻译这样一本佳作的过程中,其中的"诗意"是注定会遗失的。比如这里的"Computer Programming"一词最终译作"程序开发",虽然避免了与"编程"、"程序设计"混为一谈,却实属反复推敲之后的无奈选择。尽管如此,我认为在向Frost定律进行挑战的过程中,自己已经竭尽了所能。因此,我真诚地渴望来自读者的批评指正,你们的意见将会令我更有信心地发起下一次挑战。
在本书的翻译过程中,得到了Weinberg先生的多次热情帮助。他对自己的错误毫不避讳与隐瞒,本人就因为侥幸发现书中一处小纰漏,得到了Weinberg先生寄来的一美元奖励。他对科学的这种严谨态度令人钦佩,因为他追求的不仅是完美的结果,而且更加看重通往完美的过程。
我也想借此机会对不知名的审稿人表示感谢,他们为译本的完善提供了宝贵的意见。此外,他们的细致与认真精神也是值得我学习的。
我的妻子王霞在繁重的工作与家务之余,也给本书的翻译直接提供了很多建议,并对整个译稿进行了审阅。没有她的支持与鼓励,这项工作不可能完成。我把这部译著献给她,还有我们的即将满一周岁女儿。
邓俊辉
2003年2月8日








点击看大图





加载中...

