《构建之法》参考书和链接汇总

《构建之法》 参考书和链接汇总

参考书汇总

一些读者对《构建之法》引用过的参考书也感兴趣,因此我把所有参考书单独列出来。其实人大部分的思想都是受某些外部信息的启发影响而来,很多道理看似新颖,其实别人早就讲过了。这个参考书列表大致按照 类别  - 字母/拼音 的顺序排列。有些参考书是第三版加入的,第一、二版并没有:

行业和公司的兴衰

Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age   

 "玩闪电的牛人们" ... 施乐公司PARC 研究院的故事,可歌可泣可叹。1970 - 80 年代天才们的创新, 在PARC 这个温床上孕育, 发展并被公司忽视。但是这些创新深深地影响了之后的计算机行业 - 包括 Apple 和 Microsoft.



Dreaming in Code  by   Scott Rosenberg,  中文版 《梦断代码》

一个有技术大牛,有资金,有宏大目标的团队,为何7年做不出一个好软件? 



Fumbling the Future: How Xerox Invented, then Ignored, the First Personal Computer

        施乐公司的Parc 研究院如何发明了第一个PC (以及其他先进技术), 施乐公司的领导如何又错过了这个浪潮。 



Hard Drive  by  James Wallace, Jim Erickson

Bill Gates 的成长和微软的前15 年。  You got to drive hard. 

In Search of Stupidity: Over 20 Years of High-Tech Marketing Disasters by Merrill R. Chapman

中文版 《IT 大败局》

很多精彩的IT 行业失败的故事和分析,大多是20世纪80年代 - 90年代PC 浪潮中的事件, 字处理软件,浏览器,网络计算机(NC)等。故事有些老,但是经验教训是非常类似的。

Information Rules: A Strategic Guide to the Network Economy by Carl Shapiro, Hal R. Varian

信息时代的产品和竞争和以往的竞争不同, 有一些特殊的规律, 这本书通过不少实例, 描述了这些规律。一个领域的先行者,就能制定规范,这是先发优势的一个例子。

Inside Intuit by Suzanne Taylor , Kathy Schroeder , John Doerr

Intuit 的创始人分析了市场上所有个人财务软件的情况,发 现市场上已存在46家公司,他们自嘲说自己有 47th Mover Advantage. 结果就是这第 47 个竞争者最后成为市场的老大,打败了包括微软公司在内的诸多对手。 微软在2009年宣布停止其个人财务软件 Money 项目,退出这个市场。

Intuit 早期的两个工程师还留下了最早的结对编程的记录(见第三章 两人合作)

浪潮之巅 作者:吴军

科技公司在各次浪潮中的命运,科技、商业、资本的结合。

Revolution in The Valley: The Insanely Great Story of How the Mac Was Made  by Andy Hertzfeld

作者Andy 就是Mac 团队的一员,他也在这个书单中的 "Programmers At Work",  "Dreaming in Code", "Steve Jobs" 出现过。 

盛田昭夫 日本制造精神是这样创造的 作者 [日] 江波户哲夫 马英萍 翻译

Walkman 的故事被收录在创新一节中。这本书(三册)有很多值得技术人员和企业家学习的地方。

Steve Jobs by Walter Isaacson

《乔布斯传》

这个传记里有很多关于创新,项目管理,企业成长的经验教训。



Where Wizards Stay Up Late: The Origins of the Internet by Matthew Lyon , Katie Hafner 

互联网在美国怎么建起来的过程,很多计算机科学和工程的早期人物在此中出现,很多我们现在习以为常的规矩 (例如email 中的 @ 符号)就是那时候出现的。

公司、团队的管理,创业和创新 

Competing Against Luck Clayton M. Christensen

这本书提出了 "Jobs To Be Hired" 理论,来指导如何提高创新产品的成功率,而不是只靠运气。 

Cross the Chasm by Geoffery A. Moore

著名的early adopter 和 early majority 之间的鸿沟(chasm) 就来自于这本书,非常有洞察力的分析方法。 2014年更新的第三版有很多新的案例分析。

Death by Meetings: A Leadership Fable, by Patrick Lencioni

如果说交流是团队合作的重要途径,那么,要开多少会,怎么开好会,很值得研究。 Lencioni 很会讲故事,故事之余他提供了一个 “以什么节奏开什么会,解决什么问题” 的框架。

Driven by Difference: How Great Companies Fuel Innovation Through Diversity by David Livermore

怎样让背景和思路各异的团队成员凝聚在同一目标下,达成最终结果?

书中提出很多独到的解决办法,其中 pre-postmortem 做法, 让团队成员想象现在就是产品发布后一个月, 但是产品失败了,让团队成员列出可能的原因。这样能促使团队成员讨论目前项目的风险在哪里,如何面对。

Escape Velocity: Free Your Company's Future from the Pull of the Past   by Geoffrey A. Moore

大家都在类似的轨道中打转,你怎么调整动能和势能,获得 “逃离速度”, 让你的产品比别人好一个等级? Geoffrey 的分析方法独具一格,从这个视频也能看出他的洞察力和激情。《构建之法》的创新一章中引用了其分析方法。

The Five Dysfunctions of a Team: A Leadership Fable by Patrick Lencioni

通过讲故事的形式,描述了领导团队崩溃的五个特征,以及怎么去解决这些问题。

Hackers and Painters by Paul Graham 

黑客与画家,第一章描写了书呆子,和对书呆子不利的学校环境,事实上一个碌碌无为的大企业,也会培养类似的环境。这对于学校和公司里钻研编程的同学是一个很好的启发。 作者比较推崇LISP 语言,但是他的创业系统也只有他负责的部分是用LISP 写的,其他的模块都不是。但是一些读者认为,这说明了 LISP 就是比其他语言都高大上的语言! 这告诉我们,不教条是多么的不容易。 

The Hard Thing About Hard Things: Building a Business When There Are No Easy Answers  by Ben Horowitz

创立一个企业是为什么?  Build To Win.

很多人觉得创业公司都很忙,没时间搞什么培训。作者在书里引用了Andy Grove 的计算培训价值的公式:

假设公司花了12小时的时间备课并给10个员工培训四小时。总共花费12 + 10*4 = 52 小时。在培训后的一年中,这10个员工会有20,000 个小时的工作时间,如果培训能提高1% 的效率,那么公司将会节约200 小时。 

In Search of Excellence: Lessons from America's Best-Run Companies by Thomas J. Peters , Robert H., Jr. Waterman

中文版《追求卓越》

这本1980 年代的书调查了当时美国优秀公司的管理经验,总结了卓越管理的几大要素,我大约是在1993年读到的,里面关于HP 公司的故事给我留下很深印象:

HP 的创始人看到公司管理人员下班时把仪器库房都锁起来了,就命令让库房都不上锁,这样员工可以拿仪器回家做各种实验。

当年的在这个书上作为正面例子的公司如HP、IBM都碰到了新挑战,有些公司已经不存在了(如王安电脑),是旧的管理原则不起作用了,还是新的领导层不再追求卓越?下面是这本书总结的管理原则:

(1) 崇尚行动    实施“走动管理”,到问题现场去;鼓励试验。(2) 贴近顾客 (3) 自主创新 

(4) 以人促产    用交流、培训、保障和奖励代替死板的员工手册;高层主管实行“不关门制度”,任何人都可以上门交流。

(5) 价值驱动    有效的价值体系应该致力于激励公司基层员工。

(6) 不离本行    不进行多元化,或只进行相关行业的多元化,尽量避免大规模的并购。

(7) 精兵简政    控制管理层规模;切分大的部门避免管理的复杂度。

(8) 宽严并济    宽松的工作氛围,严格的价值观体系。



Innovation: The Five Disciplines for Creating What Customers Want by Curtis R. Carlson, William W. Wilmot 

SRI 的专家总结了创新的方法,NABC,《构建之法》中的NABCD 就是来自这里。 



The Innovators Dilemma,  by Clayton M. Christensen

中文版《创新者的窘境》

成功的大公司, 能听取用户的意见,把精力投入增量改进现有产品中;成熟的价值链从多方面阻止公司去冒险尝试新兴领域; 同时公司为了争取更高的利润率,不得不忽视萌芽阶段的小市场;专家对新兴市场的分析往往基于现有经验,结论往往大错特错! 就这样,往往有一些名不见经传的小公司从薄利的小市场切入,使用比较粗糙的颠覆式技术,慢慢掀翻了大公司。 

The Innovator's Solution, by Clayton M. Christensen

Kiss Theory Goodbye, Bob Prosen

一本实话实说的领导力手册。每一本类似书籍都会提到分析问题并改进,大部分团队在实施改进计划后一段时间,又会人走灯灭,旧毛病又回来了。我欣赏他强调的是 ICA: Irreversible Corrective Action,怎样保证这个改进措施不会随着时间和人事的变动而消失?

The Myths of Innovation by Scott Burken

创新的迷思。《构建之法》中创新的很多内容受到这本书的影响。

Secret of Software Success  by by Cyriac R. Roeding, Gert Purkert, Sandro K. Kindner, Ralph Muller, Deltiv J. Hoch

中文版《软件业的成功奥秘》

1999 年出版。 麦肯锡的商业顾问们采访了全世界很多软件团队,总结经验并展望未来。成功的奥秘之一是: 每天都有成功的构建 - have working daily build. 

Six Thinking Hats by Edward De Bono

六顶不同颜色的思维帽子,非常有效的工具,能帮助团队思考问题,解决问题。

The Tipping Point by Malcolm Gladwell

中文版 《引爆点》为什么有些产品能迅速扩张?有什么产品之外的因素?

The Wisdom of Teams by Jon R. Katzenbach

什么是团队?一群各自行事,没有依赖关系的人可以叫 “工作组”, 而不是团队。 强行把一群人命名为团队,只会得到效率低下的假团队。 (构建之法第17章团队一节)

软件工程之理论和实践

After The Gold Rush by Steve McConnell

这是Steve McConnell 另一本著作 Professional Software Development  的beta 版本。 



Agile Project Management with Scrum by Ken Schwaber

敏捷开发的专家解释敏捷和SCRUM。 

Agile Software Development, Principles, Patterns, and Practices by Robert C. Martin

中文版 《敏捷软件开发 原则、模式和实践》

从实践出发,讲解了敏捷方法,OO设计原则和设计模式。这本书并不是静态地罗列并赞美 N 种设计原则和模式,而是分析原则和模式产生的必要性和使用的时机。 例如对于 Single Responsiblity Principle, Open-Close Principle, 作者写到:

变化的轴线仅当变化实际发生时才具有真正的意义。如果没有征兆,那么去应用 SRP,或者其他原则都是不明智的。

遵循OCP 的代价也是昂贵的……显然,我们希望把OCP的应用限定在可能会发生的变化上。… … 最终,我们会一直等到变化发生时才采取行动 。

回头看看我们在软件工程课上给学生布置的作业,有“变化的轴线么”?  有需求的变化么?没有! 那既然不用任何考虑变化,为何不把所有的功能放在一个大类里面,或者就写在main()函数里面,尽快实现就交作业了,管他什么SRP , OCP原则,什么内聚,耦合,信息隐藏?! 这说明我们的学生恰恰是明智地完成了老师布置的作业。没有足够复杂性,易变性的软件工程作业要求,反而让学生陷入 “我有银弹”, "软件工程的要求没啥用" 的误区:

“哎,你看我搞了一通宵,就写好了程序,得了高分。也不用啥软件设计的原则,事先也不用需求说明书,也不留什么文档,就搞定了!软件工程对我没用!”



Art of Project Management, by Scott Burken (后续版本叫 Make Things Happen)

中文版 项目管理的艺术

Scott 在1994 到 2003 在微软 IE 等团队做Program Manager,  后来又做了内部培训工作。他对以微软为代表的项目管理有很深的见解。(我参加了他离开微软前做的最后一次讲座,他喝了啤酒,弹起吉他...) 



Behind Closed Doors: Serects of Great Management by Johanna Rothman, Esther Derby

通过一个虚拟的项目,几个经理和员工交流的各种场景一个来串联很多关于交流和管理的建议。



Best Kept Secrets of Peer Code Review by Jason Cohen

很多关于代码复审的心得,同时还清晰地描述了 PSP, TSP, CMMI 的关系。 



Code Complete (2nd Ed)Steve McConnell ISBN: 9780735619678



中文版 代码大全 (第二版)斯蒂夫·迈克康奈尔 ISBN: 7121022982



大道至简 软件工程实践者的思想 作者 周爱民

我的书评



Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams by Steve Maguire

这本1994年出版的书总结了微软鼎盛时期的软件工程实践心得。 



Engineering—An Endless Frontier by Sunny Y. Auyang

中文版《工程学 无尽的前沿》 作者 欧阳莹之。 作者论证了:当今的工程学不仅是科学的合作者,而且两者同等重要。

译者之一李啸虎的解读:

哲学家的宗旨是:“我思,故我在。”

科学家的宗旨是:“我发现,故我在。”

而工程活动主体(工程师和企业家)的宗旨则是:“我构建,故我在。”



Engineering Software as a Service: An Agile Approach Using Cloud Computing by Armando Fox and David Patterson

UC Berkeley 的软件工程+云计算课程



Facts and Fallacies of Software Engineering by Robert Glass

几十个软件行业的传说,和一些谬论。作者从1954年(!)开始在软件行业工作,辗转工业界和学术界,1999 年成为 ACM Fellow. 



The Mythical Man-Month: Essays on Software Engineering by Fred Brooks Jr. 

中文版《人月神话》



PeopleWare: Productive Projects and Teams  by  Tom Demarco / Timothy Lister  中文版 《 人件》
由一群人组成的团队怎么样才能提高软件开发过程的效率?把办公区搞成整齐划一的格子间, 容易布线,但是对效率有正面还是负面的影响?以及很多值得深思的问题 (效率,人员去留,团队文化,领导力,如何应对过多的会议和邮件...) 




Professional Software Development by Steve McConnell
如果软件工程是一个独立的学科,它和“计算机科学”  有什么区别和联系?如果软件工程是一个独立的“职业”, 那么个人,机构,和整个行业应该有什么样的原则,规范和行为准则?
Rapid Development  Steve McConnell (ISBN 1-55615-900-5)

中文版 快速软件开发斯蒂夫·迈克康奈尔 著 译者: 席相霖 等 ISBN 9787505372856

Refactoring: Improving the Design of Existing Code by Martin Fowler

中文版 《重构 改善既有代码的设计》 

Make it work,  make it right, make it fast, make it extensible.  这本书提供了许多在OO 开发模式下 “make it right", "make it extensible" 的建议。 

重构是 ”不改变软件可观察行为的前提下改善其内部结构”。 如果软件的行为不变,为啥要折腾代码? 因为我们想把程序的结构变好,这样方便程序员理解,测试,维护(right),也方便将来的扩展(extensible).  大学生们交了软工大作业之后,还会有人去理解、测试、维护、扩展它么? 如果没有,那就解释了为何在大学里没有人理解重构的意义。 



Software Engineering: The Current Practice by Rajlich Vaclav

作者是资深的软件工程教授,对于程序理解(Program Comprehension)和软件重用很有研究。



Writing Solid Code by Steve Maguire

历久弥新的指南。



走出软件作坊  作者 阿朱

深入分析中国软件企业和员工的常见毛病,给出很多好的建议。

软件工程之人机交互与设计



About Face: The Essentials of Interaction Design   by Alan Cooper, et al. 

中文版:《软件观念革命》

Design of Everyday Things by Donald Norman

茶壶嘴和茶壶把手在同一边的茶壶就出自这本书。



Emotional Design: Why We Love (Or Hate) Everyday Things  by Donald A. Norman

在彩色显示器刚出现的时候,作者借了一个回家试用, 他总结彩色并没有给他的工作效率带来什么提升,但是他却不舍得把显示器还回去,为什么?

The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity by Alan Cooper

对以“技术人员为主导” 的设计给予辛辣的讽刺和鞭笞 (就像疯子在管理疯人院)。给出了怎么从普通用户出发做设计的办法。

Microinteractions: Full Color Edition: Designing with Details by Dan Saffer 

在小小的移动设备上,怎么做人机交互?

Success through Failure: The Paradox of Design by Henry Petroski

从PowerPoint的前生, 到各种桥梁的演化,设计思想也在各种失败中演进。

Subject To Change by Peter Merholz , Todd Wilkens , Brandon Schauer, David Verba 

怎么样从用户体验出发 (而不是从产品团队本身的技术出发)来设计产品。

Tog on Software Design by Bruce Tognazzini

人机交互专家 Tognazzini 在1995年对未来软件设计的展望。

软件工程之软件测试

Perfect Software and other illusions about testing by Gerald M. Weinberg 
简明而生动地描述了关于测试工作的种种误解和谬论。

《全程软件测试》 作者 朱少民 

对测试的理论,技术和最佳实践有全面的覆盖,主张软件测试工作应贯穿软件开发整个生命周期 , 比较结合实际。 

软件工程师的故事

Coders At Work   Peter Siebel,  ISBN-13: 978-1430219484  

对15 位顶级程序员的采访, 总共600页,非常多的心得可以在软件工程的实践中借鉴。我也写了一个读后感。

Eric Sink on the Business of Software by Eric Sink

如果把软件开发沿着某个维度推到一个极致:一个人搞定软件开发过程和相关的商业活动,能行么?这是最早的关于“全栈” 的探索。  作者 Eric Sink 开发过Internet Explorer 的前身和 SourceGear.

I.M. Wright's Hard Code: A Decade of Hard-Won Lessons from Microsoft  by Eric Brechner  

微软的开发经理以幽默的风格谈论在巨大的软件公司做复杂的软件的各种经验教训, 同时也覆盖了在这些公司的职业道路。 

The Old New Thing by Raymond Chen

微软Windows 资深工程师 Raymond Chen 用亲身经历讲述Windows 设计,发展,编程和debugging 的种种趣事和 “秘诀”.  

The Pragmatic Programmer: From Journeyman to Master by Andrew Hunt and David Thomas
中文版 《 程序员修炼之道》
从实践中提取的软件工程心得, 全面阐释了软件开发的各个阶段的最佳实践、个人发展的建议。我从中吸取了很多经验,发布了  现代软件工程 课件 软件工程师能力自我评价表
Programmers At Work,  Interview with 19 Programmers Who Shaped the Computer Industry,  Susan Lammers
1989 年左右,作者对19个程序员的采访
Programming Pearls    More Programming Pearls by Jon Bentley
深入浅出的编程心得和分析,很多题目可以作为软件工程课的个人/结对作业, 例如由简到繁实现一个命令驱动的图形生成器,最后变为解释图形说明语言。

Showstopper!: The Breakneck Race to Create Windows NT and the Next Generation at Microsoft  by C. Pascal Zachary

Windows NT 和创建它的团队的故事,其中描写了Dave Cutler 的职业生涯和独特性格

The Soul of a New Machine by Tracy Kidder

这是一本小说,讲述一个软件团队为成功发布一个新的小型计算机奋斗的故事,这本书和 Showstopper! 刚好对应, 讲的分别是虚拟和现实的故事。 

教学方法

Art & Fear Observations on the perils (and Rewards) of ARTMAKING by David Bayles & Ted Orland

除了莫扎特那样的天才,普通人能创造高质量的艺术品么?

这本薄薄的小书很受艺术爱好者欢迎,它的 29 页讲了这个故事:

陶艺课的老师在第一堂课宣布,坐在教室左半边的学生将以作品的数量和重量来考察,期末评价就以学生做了多少重量的陶器来衡量;教室右边的学生将以质量来衡量,期末只看一个完美的作品。

你猜高质量的作品是从哪一边出来的多?软件工程的教育和陶艺课类似么?

What the Best College Teachers Do by Ken Bain

这本书研究了优秀美国大学老师的教学经验(这些老师绝大多数都不是在名校教书)。总结的关键是 Natural Critical Learning Environment.  在《构建之法》中 “给老师和助教的建议” 可以看到详情。 

链接汇总:

 

前言

2         请看大学生们在微博上对软件工程课程的意见:软件工程讲义 0 微博上的软件工程 - SoftwareTeacher - 博客园  

3         所谓“做中学”的办法也不是包治百病的,这篇博客剖析了各种误区:(转)周舜钦:学习金字塔的误解  

4         参见:现代软件工程讲义 目录 《构建之法》 - SoftwareTeacher - 博客园

5         参见:现代软件工程 怎么教好课 (读书笔记) - SoftwareTeacher - 博客园  

6         参见:现代软件工程 教课心得 - SoftwareTeacher - 博客园  

7         参见:对大学 IT 专业教育的反馈 - SoftwareTeacher - 博客园  

8         参见:笔记 - 高等教育的创新 - SoftwareTeacher - 博客园

TO Teacher & TA, 给任课老师和助教的建议

1         参见:授课没营养 部分大学课堂师生心照不宣一起混_网易教育   

3         可以参见类似课程的打分情况,例如:期末成绩计算方法 - 现代程序设计助教 - 博客园  

5         参见:http://www.douban.com/note/260623954/

8         参见:404  

10       参见:“习而学的软件工程教育”,现代软件工程 习而学的软件工程教育 - SoftwareTeacher - 博客园

Ch 1  概论

练习与讨论

更多练习与讨论参见:现代软件工程 第一章 【概论】练习与讨论 - SoftwareTeacher - 博客园

7         团队阅读之 "Is 'Computer Science != Software Engineering' an excuse to teach programming poorly?" - Shine Team - 博客园  

8         Sina Visitor System

           中蟒 (中文 Python) 編程語言網站 chinesepython  

           中文编程_百度百科  

尾注

2         文档下载:http://homepages.cs.ncl.ac.uk/brian.randell/NATO/nato1968.PDF

3         参见:http://en.wikipedia.org/wiki/Kent_Couch

4         参看:http://en.wikipedia.org/wiki/Larry_Walters  

5         参见:http://en.wikipedia.org/wiki/Wright_Flyer

6         参见:http://en.wikipedia.org/wiki/Qantas_Flight_30  

7         参见:http://en.wikipedia.org/wiki/US_Airways_Flight_1549   

8         参见:http://en.wikipedia.org/wiki/Moores_law   又称摩尔定律。

12       参见:http://en.wikipedia.org/wiki/Engineering   翻译时略有删减。

14       Microsoft Academic Search项目地址:We are sorry, the resource you requested cannot be reached  

15       参见:The Science of Computing and the Engineering of Software  

18       这一文档可以从Software Engineering Course (SWEBOK) 下载。

19       参见:http://en.wikipedia.org/wiki/Software_bug#Etymology  

20       图片来源:http://en.wikipedia.org/wiki/File:H96566k.jpg   

22       来源: E.W. Dijkstra Archive: On the cruelty of really teaching computing science (EWD 1036)  

Ch 2  个人技术和流程

练习与讨论

更多练习和讨论参见:现代软件工程 第二章 【个人技术】 练习与讨论 - SoftwareTeacher - 博客园

2         博客园  

           Golan Levin: Software (as) art | TED Talk  

3         博客园  

           http://st-threath.blogspot.tw/2013/06/an-engineer.html  

           http://aknow-work.blogspot.tw/2013/06/reply-to-coder-hacker-and-architect.html

尾注

2      Shows | Microsoft Docs

3      参见:Software Engineering Institute  

4      参见:GitHub: Where the world builds software · GitHub  

5      详情见:GitHub Codespaces using Visual Studio or browser

6      参见:Home :: Bugzilla :: bugzilla.org  

7      Trac工具:The Trac Project

Ch 3 软件工程师的成长

正文:

         中国计算机协会计算机职业资格认证考试:http://cspro.ccf.org.cn

           以浙江大学计算机学院为首开发的计算机程序设计能力考试:http://pat.zju.edu.cn/

           结合中国软件行业的特点,我们可以归纳出在中国IT行业“好工程师”的要素,并做成一个自我评价清单(Check-list),供有志于这个职业的工程师们进行自我评价和跟踪。清单见博客:现代软件工程 课件 软件工程师能力自我评价表 - SoftwareTeacher - 博客园  

练习与讨论

更多练习和讨论参见:现代软件工程 第三章 【软件工程师的成长】练习与讨论 - SoftwareTeacher - 博客园

5         程序员的成长和代码行数的关系 | 程序师 - 程序员、编程语言、软件开发、编程技术  (翻译)Norris Numbers  (原文)

6         程序员的核心竞争力是什么?为什么? - 知乎博客园  登录 - 推酷   现代软件工程 课件 软件工程师能力自我评价表 - SoftwareTeacher - 博客园  

7         http://blog.jobbole.com/21881/ http://blog.jobbole.com/12176/  

8         Hakka IT School - Hakka

9         我们都是自信的傻瓜(上)| 果壳 科技有意思
          原文:http://www.psmag.com/health-and-behavior/confident-idiots-92793

尾注

1      参见:http://china.nba.com/stats/teams/teamStats/1610612745_2010_2_00.html

4      参见:http://sk.neea.edu.cn/jsjdj/index.jsp

5      参见:http://www.rkb.gov.cn/

6      参见:http://en.wikipedia.org/wiki/Microsoft_Certified_Professional

7      参见:http://en.wikipedia.org/wiki/Oracle_Certification_Program

8      参见:http://www.ieee.org/education_careers/education/professional_certification/index.html

9        参见:http://www.construx.com/uploadedFiles/Construx/Construx_Content/Resources/White_Papers/Construx%20Professional%20Dev%20Ladder.pdf

11    参见:http://pragprog.com/the-pragmatic-programmer/extracts/tips  

12    参见:“软件天才与技术民工” 软件天才与技术民工_bitfan(数字世界一凡人)的专栏-CSDN博客  

13    参见:http://www.billbuxton.com/xc.html  

14      参见:http://en.wikipedia.org/wiki/Margaret_Mitchell

Ch 4 两人合作

练习与讨论

更多的说明和讨论参见:现代软件工程 第四章 【结对编程】练习与讨论 - SoftwareTeacher - 博客园  

1         http://c2.com/cgi/wiki?PairProgrammingCaseStudyCase study: using pair programming in development of a complex module. - Free Online Libraryhttp://www.cs.utexas.edu/users/mckinley/305j/pair-hcs-2006.pdf   

3         代码复审检查表:http://blog.fogcreek.com/increase-defect-detection-with-our-code-review-checklist-example/

5         http://dhruba.name/2012/08/21/do-you-hate-reading-other-peoples-code/  微软资深软件工程师:阅读代码真的很难_知识库_博客园

尾注

1      让 {} 独占一行还有一个好处:一眼就能看出是否有多余的代码行,这在有些情况下是致命的错误,参见:meta/LPAR | Learning from Apple's goto fail  或搜索“apple code to fail source code”.

5      火车司机也有这样的例子:火车司机:职业神秘辛苦异常

7      关于这一点,请看史蒂夫·乔布斯的观点:Daring Fireball: Working Backwards to the Technology  

8         请看: http://en.wikipedia.org/wiki/Myers-Briggs_Type_Indicator

9         另外请参见 《对性格内向者的10个误解》: http://blog.jobbole.com/12488/

10       参见:http://www.vaikan.com/the-conventions-we-follow/     

           谷歌是如何做代码审查的 –

           http://scientopia.org/blogs/goodmath/2011/07/14/stuff-everyone-should-do-part-2-coding-standards/

Ch 5 团队和流程

正文中的链接

http://www.youtube.com/watch?v=X1c2--sP3o0

练习与讨论

更多说明和讨论请参见:现代软件工程 第五章 【团队和流程】练习与讨论 - SoftwareTeacher - 博客园

7         去了富士康,才明白生产手机流程多复杂-品玩  

8         http://blog.jobbole.com/19772/  

尾注

1      http://topic.csdn.net/u/20080623/13/25ff50e2-16a7-49c1-ac7b-fcbdda18fa86.html

6      请搜索 Miles Davis “So What”的视频。一个参考来源为:http://v.youku.com/v_show/id_XNTkzOTg4MTY=.html  

7      参见:http://en.wikipedia.org/wiki/Miles_Davis  

11    论文参见:http://en.wikipedia.org/wiki/Waterfall_model#CITEREFRoyce1970

12    参见:http://en.wikipedia.org/wiki/IBM_Rational_Unified_Process  

13    图片来源:http://en.wikipedia.org/wiki/IBM_Rational_Unified_Process#mediaviewer/File:Development-iterative.gif  

14        参见 What is the minimum viable product? - Venture Hacks

Ch 6 敏捷流程

正文

图灵社区

练习与讨论

更多内容与讨论请参见:现代软件工程 第六章 【敏捷流程】练习与讨论 - SoftwareTeacher - 博客园

表6-4

        http://www.cs.umd.edu/class/spring2003/cmsc838p/General/NoSilverBullet.html

        There Is a Silver Bullet | Dr Dobb's

        Big Ball of Mud

        http://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar

        A Generation Lost in the Bazaar - ACM Queue

中文版:

        图灵社区

        The Rise of “Worse is Better”

        The Rise of ``Worse is Better''

        Is Worse Really Better?

        http://dreamsongs.com/Files/IsWorseReallyBetter.pdf

        瀑布模型

        http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf

        对此模型的误解:

        http://www.youtube.com/watch?v=X1c2--sP3o0

        The New Methodology   

        http://pragdave.me/blog/2014/03/04/time-to-kill-agile/

        中文版(敏捷已死)

        the corruption of Agile

        The Corruption of Agile | Dr Dobb's  

        Erik Meijer: http://vimeo.com/110554082  

        "In Defense of Agile" by Nic Ferrier

        what hacking is   

        Manifesto for Software Craftsmanship

        http://agile.dzone.com/articles/jez-humble-why-software    

        Why Software Development Methodologies Suck - Continuous Delivery

尾注

1      参见:http://en.wikipedia.org/wiki/Agile_software_development#Agile_principles  

3      图片来源:http://en.wikipedia.org/w/index.php?title=File:Scrum_process.svg&page=1

4      参见:Collaborate [redirected] | Microsoft Docs

5      这里有几个 现代软件工程学生小组的Daily Scrum的过程:beta:scrum4 - ustc_msra_ase - 博客园Daily scrum beta 第九天! - SouthSeven - 博客园Daily Scrum 9.29 - Gun N' Rose - 博客园

6      忽悠敏捷流程的一个例子:scrum–yesterday once more - SoftwareTeacher - 博客园

8      参见:微软学术搜索项目 10个版本的历程 - SoftwareTeacher - 博客园

9      参见:http://en.wikipedia.org/wiki/Six_Sigma

10       大家可以观赏Scrum视频培训:Scrum Training Series: Free Scrum Master Training from Seattle

12    参见国外漫画系列Dilbert 的讽刺:Dilbert Comic Strip on 2007-11-26 | Dilbert by Scott Adams  

13    例如这篇文章描述了 Boehm 在1980年代提出的软件工程原则和二十年后的敏捷原则的关系:杂谈Barry Boehm的软件工程七原则与敏捷实践_麦哲思科技-CSDN博客

14    参见:http://en.wikipedia.org/wiki/Hawthorne_effect

15    网上关于敏捷流程中执行的具体问题描述例子:C项目敏捷实施(3)-5个迭代了 - 大卫张 - 博客园

16    参见:Manifesto for Software Craftsmanship

17    参见:软件工艺宣言发布最新的简体中文版-InfoQ

Ch 7 MSF

练习与讨论

更多内容与讨论请参见:现代软件工程 第七章 【MSF】练习与讨论 - SoftwareTeacher - 博客园

尾注

2         参见:2014年的介绍网页,Microsoft Solutions Framework (MSF) Overview | Microsoft Docs

3         参见:大松博文_百度百科

6      参见:Joel Spolsky, http://www.joelonsoftware.com/articles/Micro-ISV.html

9      参见:Seven Basic Principles of Software Engineering, Barry W. Boehm, 链接:Redirecting

10       北京禁止售货员用轻蔑审视眼光扫视顾客_新闻中心_新浪网

Ch 8 需求分析

练习与讨论

更多内容与讨论请参见:现代软件工程 第八章 【需求分析】练习与讨论 - SoftwareTeacher - 博客园

1         Steve McConnell 软件估计的10宗罪http://www.ewh.ieee.org/r5/central_texas/austin_cs/presentations/2004.08.26.pdf  
        Quora精选: 为什么软件开发周期总是预估的2~3倍http://jandan.net/2013/07/16/quora-software-development.html

3         具体项目练习:现代软件工程 团队作业 - 软件分析和用户需求调查 (2013 - 2014) - SoftwareTeacher - 博客园

尾注

3      参见:Tree Swing Cartoons (New Versions)  

4      如何做好深入面谈,也有各种诀窍:http://www.gv.com/lib/get-better-data-from-user-studies-16interviewing-tips

5      参见:http://en.wikipedia.org/wiki/Card_sorting  

6      参见:http://www.emarketing.net.cn/magazine/adetail.jsp?aid=1354

7      参见:Home Page | Sony Pictures Entertainment  

8      参见:真实的用户,真实的中国互联网 - meng-meng(萌萌) - 博客园

9      参见:春节回乡:三线城市三线小镇的数字生活_狂云子_新浪博客

10    参见:Eye tracking Web usability | ZDNet

11    参见:http://en.wikipedia.org/wiki/Participatory_design  

12    参见:http://en.wikipedia.org/wiki/Palm_(PDA)  

13    参见:The A/B Test: Inside the Technology That's Changing the Rules of Business | WIRED  

14    参见:http://glinden.blogspot.com/2007/06/ab-testing-at-amazon-and-microsoft.html  

15    参见:http://exp-platform.com/Documents/GuideControlledExperiments.pdf

16    参见:Web Experimentation with New Visitors - Code as Craft

17    参见:http://news.cnet.com/google-designer-leaves-blaming-data-centrism/#!  

18    参见:http://caddellinsightgroup.com/blog2/category/strategic-planning/

19    参见:有关创新的书

21    参见:http://en.wikipedia.org/wiki/Switching_costs  

24    参见:http://www.amazon.com/Software-Estimation-Demystifying-Practices-Microsoft  

25    参见:《...第八次全国代表大会第二次会议文件》,人民网--404页面

29       请看网上的方法介绍:http://www.stellman-greene.com/aspm/content/view/23/38/   http://en.wikipedia.org/wiki/Wide-band_delphiStop Promising Miracles | Dr Dobb's  

31    参见:四川老人198天骑行2.5万公里环游中国-骑行资讯-绿野户外网

32    参见:真人拳皇项目Alpha阶段的回顾——史经浩 - MSRA_SE_TEAM - 博客园

33    参见:http://lostgarden.com/2006/04/managing-game-design-risk-part-i.html 。该图参考了Danc的“Managing game design risk : Part I”

34    参见:http://en.wikipedia.org/wiki/Planning_poker

35    关于时间估计,这里有更多相关内容:Agile Estimating – Estimation Approaches - PMHut - Project Management Articles for Project Managers

36    参见:软件工程——homework1 - 霸王移山 - 博客园

37    参见:Team Homework 1 / 采访以往的软件工程项目:通用在线棋盘类游戏平台 - se2012 - 博客园

38    参见:http://www.linux.com/learn/resource-center/376-linux-is-everywhere-an-overview-of-the-linux-operating-system?start=2  

39    参见:The Innovation Mindset | Leading Blog: A Leadership Blog

Ch 9 项目经理

练习与讨论

更多内容与讨论请参见:现代软件工程 第九章 【项目经理】练习与讨论 - SoftwareTeacher - 博客园

1         http://v.youku.com/v_show/id_XMzE1Mzc2NTE2.html  

4         现代软件工程 团队作业 - 软件分析和用户需求调查 (2013 - 2014) - SoftwareTeacher - 博客园Sina Visitor System

尾注

1      参见:http://en.wikipedia.org/wiki/Charles_Simonyi  

2      参见:http://en.wikipedia.org/wiki/Wysiwyg  

4      参见:http://en.wikipedia.org/wiki/MITS_Altair_8800  

5      参见:How to be a program manager – Joel on Software  

6      参见:DevBlogs - Microsoft Developer Blogs

7      在别的团队中,也有产品经理的职位,例如这个博客(和书):人人都是产品经理——iamsujie 但不是每个人都能成为产品经理的。

8      参见:产品设计体会(0013)产品经理应该是管理者么 | 人人都是产品经理——iamsujie  

10    参见:DevBlogs - Microsoft Developer Blogs

11    斯科特·伯昆(Scott Berkun)也谈到了一些PM的副作用:The lost cult of Microsoft program managers | Scott Berkun  

12    参见:http://v.youku.com/v_show/id_XMTEzNDA4NDg4.html  

13    可以阅读很多相关博客和书籍,例如:The book: Making Things Happen | Scott Berkun  和 DevBlogs - Microsoft Developer Blogs

Ch 10 典型用户和场景

正文

关于这个“系鞋带的Spec”练习的完整说明,可以参见相关网页:现代软件工程 第十章 【典型用户和场景】 练习与讨论 - SoftwareTeacher - 博客园

练习与讨论

更多内容和讨论请参见:现代软件工程 第十章 【典型用户和场景】 练习与讨论 - SoftwareTeacher - 博客园

尾注

1      关于典型用户的讨论,参见:A Mort by Any Other Name … -- Visual Studio Magazine  以及 Mort, Elvis, Einstein, and You  

2      在TFS项目的门户网站中有定义典型用户的模板(路径一般是<网站名>Requirements/Persona.doc),可资参考。

3      参见电子书: Use-Case 2.0 ebook | Ivar Jacobson International

4         参见:三峡大坝到底可防几年一遇洪水|百年一遇_网易新闻

5      参见:http://www.nebulon.com/articles/fdd/latestfdd.html  以及 http://en.wikipedia.org/wiki/Feature_Driven_Development  

6      参见:本书“分而治之(Work Breakdown Structure)”一节

7         How to tie shoe laces - DOOM_buaascse - 博客园

8         [Sui Yuhao]完成任务(番外篇,与团队项目无关)——How To Tie Your Shoes - teamshit - 博客园

Ch 11 软件设计与实现

练习与讨论

        更多内容与讨论请参见:现代软件工程 第十一章 【软件设计与实现】 练习与讨论 - SoftwareTeacher - 博客园

4     在这个时候是否碰到“团队成员不给力”的问题?请看别的同学的吐槽:现代软件工程系列 学生的精彩文章 (5) 其实还是人的问题 - SoftwareTeacher - 博客园  

5     我们是在写代码解决问题呢,还是在搭建宏伟的架构?
       请看:痛苦的Java程序员 | OurJS  
       英文版:http://nsainsbury.svbtle.com/java-developers  

6     好的修改/重构是什么样的?请看几个例子:http://world.kankanews.com/w/2014-11-22/0015946771.shtml从把三千行代码重构成15行代码谈起 - 马非码 - 博客园  

尾注

1         图片来源于http://commons.wikimedia.org/wiki/File:MindMapGuidlines.svg  

2         请参考网上关于安全设计,威胁模式分析(Threat Modeling)的文章,例如: Uncover Security Design Flaws Using The STRIDE Approach | Microsoft Docs  

4         参见 文章 Death by UML Fever  作者 ALEX E. BELL, 和Grady Booch 在文章后的评论。  Death by UML Fever - ACM Queue

7         VS2010以及之后的版本还提供了燃尽图等功能,请参见相关同学的博客,例如

           [scrum]2011/9/30-----第九天 - OMG! 日记 - 博客园

Ch 12 用户体验

练习与讨论

更多内容与讨论请参见:现代软件工程 第十二章 【用户体验】练习与讨论 - SoftwareTeacher - 博客园  

1         究竟什么是用户体验呢?请看:What UX is and isn't?  
         (中文版)什么是用户体验,什么不是?_知识库_博客园

2         Graphical User Interface Timeline
           Windows File Explorer 的界面的演化:DevBlogs - Microsoft Developer Blogs

3         http://reynold.cn/archives/1314.htmlforms - Should I use Yes/No or Ok/Cancel on my message box? - User Experience Stack Exchange             

4         http://www.digitaljournal.com/article/317856

           Daring Fireball: On the Behavior of the iPhone Mute Switch

           Microinteractions (豆瓣)

5         产品设计的细节—汉堡包
          一些历史: 汉堡图标编年史-规范/资料-UICN用户体验设计平台
          它真的是普遍适用么?为什么要避免使用汉堡包菜单 - 手机界面设计,手机UI设计,手机图标设计,UI设计教程 - MobileUI莫贝网

6         请看VI编辑工具的设计是怎么来的:Here is why vim uses hjkl keys as arrow keyshttp://blog.jobbole.com/18650/  

尾注

1      参见:Amazon.com

2      参见:Sina Visitor System  

3      参见:http://dict.bing.com.cn/#empathy  

4      参见:必应  

5      参见:Malcolm Gladwell. Blink(ISBN 9780316172325). Back Bay Books, 2007.

6      参见:http://www.reuters.com/article/2011/06/21/us-airshow-button-idUSTRE75K1XR20110621

7      参见:Bad Designs - Yikes! I pressed the call button again!    

8      参见:The Opposite of Fitts' Law

9         图片来源:Amazon.com

10    参见:Kerry Patterson. Influencer: The Power to Change Anything(ISBN 007148499X). McGraw-Hill,2007.

11    参见:We are sorry, the resource you requested cannot be reached  

12    参见:http://blog.xiqiao.info/2010/12/21/917  

13       2013年,专家们在讨论新型的USB接头是否也将采取类似的设计。

14       参见 “防呆” 条目: http://zh.wikipedia.org/wiki/%E9%98%B2%E5%91%86

19    参见:http://en.wikipedia.org/wiki/Fitts_law  

20    参见:http://en.wikipedia.org/wiki/Heuristic_evaluation  

21       参见:Steve Jobs: You have to start with the customer experience and work backwards to the technology | iMore

Ch 13 软件测试

练习与讨论

更多内容与讨论请参见:现代软件工程 第十三章 【软件测试】 练习与讨论 - SoftwareTeacher - 博客园  

         计算机程序在处理闰年这个问题上出现过很多bug,请看相关的博客:现代软件工程讲义 9 测试 关于闰年的测试 - SoftwareTeacher - 博客园

历史上的20 大bug20 Famous Software Disasters20 Famous Software Disasters – Part 2  20 Famous Software Disasters – Part 3  20 Famous Software Disasters – Part 4

           http://www.safetyresearch.net/blog/articles/toyota-unintended-acceleration-and-big-bowl-%E2%80%9Cspaghetti%E2%80%9D-code

           http://www.safetyresearch.net/Library/BarrSlides_FINAL_SCRUBBED.pdf  

这是什么样的bug?要过37年才修复?src/usr.bin/head/head.c - view - 1.18src/usr.bin/head/head.c - diff - 1.18http://www.reddit.com/r/programming/comments/2ind4f/fix_a_37_year_old_bug_introduced_by_bill_joy_on/

Ch 14 质量保障

正文

“我们需要专职的QA 吗?”:我们需要专职的QA吗? | 酷 壳 - CoolShell

如果要以“产出”来评价某个角色的绩效,可以看看这个包装设计的视频:http://v.youku.com/v_show/id_XMzQ3NTUxOTU2.html

引起网上讨论的两篇文章在这里:关于测试和测试人员 –,

          http://www.quora.com/Is-it-true-that-Facebook-has-no-testers  

练习与讨论

更多内容和讨论请参见:现代软件工程 第十四章 【质量保障】 练习与讨论 - SoftwareTeacher - 博客园

尾注

2      参见:http://en.wikipedia.org/wiki/Precision_and_recall

6      参见:关于测试和测试人员 –

7         参见:密码外泄门_百度百科

9         参见:http://www.wooyun.org/bugs/wooyun-2010-04728

10       参见:亚当·斯密_百度百科

11    参见:OpenSSL新漏洞曝光:可被用于“中间人”攻击|OpenSSL|心脏流血_互联网_新浪科技_新浪网

12    参见:http://en.wikipedia.org/wiki/Heartbleed

13    参见 http://en.wikipedia.org/wiki/Shellshock_(software_bug)   和  bash代码注入的安全漏洞 | 酷 壳 - CoolShell

Ch 15 稳定和发布阶段

练习与讨论

更多内容和讨论请参见:现代软件工程 第十五章 【稳定和发布阶段】练习与讨论 - SoftwareTeacher - 博客园  

4         Denver Airport Baggage System Case Study – Why Do Projects Fail?http://www.nytimes.com/2005/08/27/national/27denver.htmlUnited axes troubled baggage system at Denver airport | Computerworld  

尾注

1      参见:http://www.engadget.com/2009/03/17/iphone-finally-gets-copy-and-paste/  

3      参见:采访《对话洪锋:小米米柚(MIUI)如何迭代开发》对话洪锋:小米米柚(MIUI)如何迭代开发 : 经理人分享  

4         参见微软官方博客:http://blogs.windows.com/bloggingwindows/2014/10/21/were-rolling-out-our-first-new-build-to-the-windows-insider-program/  

5         参见:http://en.wikipedia.org/wiki/Retrospective#Software_development  

6         跳票 - Shine Team - 博客园

Ch 16 IT 行业的创新

练习与讨论

更多内容与讨论请参见:现代软件工程 第十六章 【IT 行业的创新】练习与讨论 - SoftwareTeacher - 博客园  

1         材料:创新, FMA & SMA 世界第一台VCD机的故事 - SoftwareTeacher - 博客园

2         www.stackoverflow.com  

5         http://www.ccf.org.cn/resources/1190201776262/2014/06/11/1.pdf

6         How New Ideas Almost Killed Our Startup | Vinicius Vacantihttp://buzzorange.com/techorange/2012/05/29/new-ideas-can-kill-your-startup/

7         Butler W. LampsonButler W. LampsonButler W. Lampson

尾注

3      限于篇幅,更多内容参见:http://www.cnblogs.com/xinz/archive/2011/07/09/2102052.html

4      参见:积分兑换平台(这是一种剥削么?强烈求拍砖) - CodingCrazy 小组 - 博客园

5      参见:Early Model Telephone | ClipArt ETC

6      参见:网络中国翻译网站

8      参见:Microsoft researchers and engineers working around the world  
           Armando Fox,David Patterson. Engineering Software as a Service. Strawberry Canyon LLC,2013.第三章也有记录

9      参见:7 Reasons to Switch to the Dvorak Keyboard Layout

11       参见:http://en.wikipedia.org/wiki/Personal_Jukebox

12       参见:http://support.microsoft.com/kb/2118008  

14       参见:Blog Posts | JeremyHouchens.com   
           另外参见 “促进中国高科技科研创新的想法”作者 李凯 http://www.ccf.org.cn/resources/1190201776262/2014/06/11/1.pdf  

15       参见:http://en.wikipedia.org/wiki/Digital_Equipment_Corporation  

17       参见:http://www.gartner.com/it/content/1395400/1395423/august_4_whats_hot_hype_2010_jfenn.pdf

18       参见:http://people.hofstra.edu/geotrans/eng/ch7en/conc7en/stages_in_a_bubble.html  

19       传统行业也有这方面的尝试,例如海尔集团。
           参见:Sina Visitor System

24       参见:信产部娄勤俭:中国软件业还在手工作坊阶段 [热点追击]

25       参见:Exploring Micro-ISVs

26       参见:http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/ussoftware12142004.mspx?mfr=true

27       成功的例子看周奕的故事:新浪网_科技时代_专栏文章_李学凌专栏

29       图片来源:hewlett packard garage - Bing images

30       参见:Archived MSDN and TechNet Blogs | Microsoft Docs  

31       参见:http://www.nytimes.com/2009/10/27/opinion/27iht-edma.html  如果访问有困难可以搜索Jack MA, Small is Beautiful.

Ch 17 人、绩效和职业道德

练习与讨论

更多内容与讨论请参见:现代软件工程 第十七章 【人、绩效和职业道德】 练习与讨论 - SoftwareTeacher - 博客园

2         http://china.nba.com/news/4/2014-11-12/1048/24547.html科比成NBA第一打铁王_体育频道_凤凰网

3         《梦断代码》读后感 - 驱动,责任,交流,远虑 - SoftwareTeacher - 博客园  Incentive Pay Considered Harmful – Joel on Software

5         The Human Spark | PBSThink Different? | WIRED

7         Yahoo  

11       http://blog.jobbole.com/79450/

12       阿里重罚锤子手机数据造假员工:一人降级 两人开除|天猫|罗永浩_凤凰科技http://www.chinahightech.com/html/727/2014/1020/15575128.html  中国的软件行业为什么发展缓慢? - 知乎独立游戏制作人作品被盗后的“狗血”大逆转 - 触乐Sina Visitor System  

13       Sina Visitor System解密内幕:一位Adobe中国区遭裁员工的“陈述”-CSDN.NET  【畅言】从“码农”说起-CSDN.NET

尾注

1      猪和鸡的故事也可参见:http://en.wikipedia.org/wiki/The_Chicken_and_the_Pig

2      参见:项目百态 (豆瓣)

3      参见:http://blog.handsbrain.com/weiyu/entry/10063

5      参见:http://www.kaner.com/pdfs/Bugcount.pdf  

6      参见:http://dustyvolumes.com/archives/497,  
另见:Sackman, H., W. I. Erikson, and E. E. Grant. 1968. “Exploratory Experimental Studies Comparing Online and Offline Programming Performances.” Communications of the ACM, Jan.

7         参见:Valve Corporation  

8       参见:http://media.steampowered.com/apps/valve/Valve_Handbook_LowRes.pdf

13     参见:About ACM  

14     我和学生们翻译了完整内容,参见:软件工程 软件工程师的誓言 - SoftwareTeacher - 博客园  译文还有不准确之处,请在博客上留言指正。

16       国外还有Social awareness + emotional skills = successful kids的说法,据说此类教育在小孩到了高中甚至成年都有积极的影响。

           参见: Social awareness + emotional skills = successful kids

你可能感兴趣的:(微软,敏捷开发,toa,j2ee,systemd)