编程大师访谈录读后感10篇
《编程大师访谈录》是一本由Susan Lammers著作,人民邮电出版社出版的平装图书,本书定价:59.00元,页数:357,特精心从网络上整理的一些读者的读后感,希望对大家能有帮助。
《编程大师访谈录》读后感(一):有一定开发经验后回味
最开始是从图书馆里借的,当时没读几页就还回去了。主要是因为看了黑客与画家之后,想了解更多的LISP的事情。当然看完LISP相关内容就没怎么读其他的了。
开发过程中开始关注经常使用的软件的设计,于是在KINDLE上又买了这本书阅读,每读一篇感触颇深。非常适合有一定项目管理经验的人读。
《编程大师访谈录》读后感(二):窥见中国工程教育的不足
绝大多数被采访的程序员都有暑假替学校打工的经历。从言谈中看出,他们很看中这样的经历,很强调这些工作的实际背景和内容,并认为由此加深了对编程工作的理解。很多人就是通过这些暑假工作爱上了编程。
但是,他们从未提及在这些工作中获得了什么荣誉称号什么的,而这正是许多中国学生做项目的时候非常在意的。
我不得不说现在的高校真的是浮夸、不务实到成了习惯,吹牛吹到自己都信以为真的地步了。那种想踏实进步的人反倒成了另类。大家都懂的,说也懒得说了。
《编程大师访谈录》读后感(三):一帮很有趣的人
这本书让我感受到以下几点:
1. 他们都是基于某些巧合接触到了计算机,然后发现自己对计算机产生了极大的爱好,才逐渐走上了编程道路的;
2. 他们学的专业大都不是计算机专业,而且有好几位大师建议本科时最好学习数学、物理,甚至是历史,然后在研究生阶段再学习计算机,这样比较好;
3. 大多数人认为计算机不是科学,只是工程应用的一种而已;
4. 他们都非常的务实,穿着随意,举止谦虚,崇尚自由,对于大公司都不太满意;
5. 在那个计算机刚刚面世的时代,计算机大多被用来办公,譬如提供数据库,字处理软件等等,大概是由于那个时代计算机还非常贵,普通家庭买不起,所以软件都集中在办公,而不是娱乐;
6. 那个时代创业真的很容易啊,随便写个软件就可以开公司了;
7. 大多数人预期的计算机“未来”都不太对,可见人们对于未来的预测是多么的不靠谱;
8. 施乐公司真的是编程大师的“黄埔军校”啊;
9. 这些大师都有比较高的学历,有的还是MIT等常春藤高校的学历,要么是硕士,要么是博士学历,本科学历的非常少;
10. 外国的大学很有意思,都可以先工作几年,然后再回去读研究生的;
《编程大师访谈录》读后感(四):编程师众态
这是作者对当代最有名望的19位程序员(70后)进行系列访问的书籍。书中涉及苹果Macintosh操作系统,Lotus1-2-3应用程序、《吃豆人》游戏等编程实例和一些代码片段。
在访谈过程中,作者尽可能问所有程序员相同的问题,以便读者可以比较访谈内容,突出各编程方法间的相似与差异,让每个程序员的个性和特殊兴趣都显现出来。
作者提问的大概范围是从最开始怎样接触计算机程序?编程中的想法是从哪里来的?把想法转化为现实有多难?开发大型程序是什么感觉?这是一门艺术还是一门科学?是手艺还是技能?同样的事情还能再做一次吗?
大部分代码在写下来之前就已经在脑中形成,维护的数据结构才是关键。最优算的知识当属科学,结构的想象则是艺术。代码的效率随着开发同一个程序的人员数量的增加而有所降低(查尔斯西蒙尼)。
千万不要过分迷恋一个想法,决不要固守某样东西以致不能在必要时把它丢掉,这才是程序员应有的态度。
好的程序在于它能保持平衡,而不是靠什么奇技淫巧。信息时代是一个巨大的反馈环路,用的每个新工具都可以帮你构建更大的工具。未来可能会更具爆炸性的增长(约翰沃诺克)。
计算机有助于印刷业脱离机械化的过程:操作印刷机、手工排版和黏贴、设置相机,半导体将取代机械化的过程。编程一来的是信念而不是理性(加里基尔代尔)。
一个优秀的程序员会一直不断地思考所开发的程序,无论是开车还是吃饭。不停地思考问题,需要耗费大量的脑力。许多人参与项目的时候,要保持项目团队精简;确保小组中每个程序员都非常聪明;为他们提供强大的工具;有一套公用术语,以便大家很有效地沟通。数学与编程有着天然的关系。成为程序员的最佳途径是编写程序并研究其他人编写的优秀程序(比尔盖茨)。
想出编程的新思路是与客户保持联系,通过开展‘采纳经销商(半导体产业、硬件、软件和销售从业人员)建议’的营销计划来访问经销商。许多相当成功的程序员把开飞机当成消遣原因之一是有财力,之二是涉及操纵复杂的事物,这是工程师喜欢做的(约翰佩奇)。
非常多的程序员只考虑该怎样写程序,从来没做过销售。可能是好的程序员,但他们没有想过真正的市场需求(C韦恩莱特莱夫)。
在编程领域,有很多关于组织和条理方面的技术可以教。很多科学主要是理解交互关系的复杂性。但对编程本身而言,更多的是工程规范(鲍勃弗兰克斯顿)。
好的程序员是天赋、气质、动机和努力工作的结合(乔纳森萨奇)。
游戏设计师必须洞察人们的心灵,并拥有足够的创造力,想象出别人想不到或者无法想象的东西。十年后的游戏会更接近电影。和陌生人对战其乐无穷(岩谷徹)。
计算机本身没有什么特性。因为他们的思想是空的。所以它们的特性完全由人来决定,其程度超过任何其他人类活动活动的领域(加隆兰尼尔)。
本书以个性化、深入的方式展示软件设计人员的经验、方法和哲理,给读者一个以谈话为窗口来了解软件从业人员的思想。
《编程大师访谈录》读后感(五):编程的动机|《编程大师访谈录》
自认对编程还是有些天赋的。大学里C语言考试很多人不及格,我还考了高分。自己组装买了电脑,终于还是在沉迷电脑游戏里了。在实践和接触编程的时候,一开始觉得很奇妙,强大的计算机被几个代码控制;慢慢觉得又很枯燥,复杂的算法和不断的报错消磨掉很多耐心。日新月异的新技术出现,终于让我放弃软件方面的进一步探索。在几个同学逐渐成为编程高手的时候,我的工作和兴趣也离软件越来越远,更多地偏向硬件,系统,工程以及最近的人文类学科。
在研发团队里有个编程高手是收益无穷的。我们的以前团队里就有一个,后来他跳槽去了大众点评。他根据项目的需求做了几个小工具,非常实用,完全不用到EXCEL表格里去找数据和公式填写了,界面也很优美,可以立刻示意运作结果,提高很多效率。电脑和手机进一步强大,强大到有可以替代人脑了论调,新的计算机语言更加智能化,没有那么多报错了。再一次唤起我对编程和软件的兴趣,计算机作为伟大的工具,我们不会编程显然太可惜了。
《编程大师访谈录》可以作为这个二次入门的开始。从我视角来看,我更加关注这些大师的动机,兴趣乐,趣,生活工作习惯和烦恼。
这里有好几个大师都已经去世了,有的寿命只到50-60岁,这是远低于美国平均寿命的(80岁)。 这里有没有和他们习惯熬夜工作有关呢?但也有经常熬夜还在世的,这就不好评价了。
有一些大师一开始并不喜欢编程,有的喜欢音乐,有的喜欢文学,有的喜欢数学等。这也是当时社会风气的影响,因为当时的计算机应用大部分是大型企业或机构,主要用于科研军事等。比如NASA,收入偏低。但个人电脑市场的打开,进一步冲击了市场需求,也带来很多商机,比如一位大师是IT撰稿人,自己研究新的语言编程。后来有人看到他的文章,并提出与他合作,表示可以提高收入,并且大获成功。
还有的对公司管理,市场运营,团队管理提出了意见。比如股票分红,造成一部分研究股票,只关注自己的收入,而专心技术的人因为过于专注自己的技术提高而错失公司内部股票发财机会,造成不平衡的结果,最后公司也因为这些事情深受其害。也有技术持有人与精通市场的人合作,但因为对技术和市场的理解不同,最终不欢而散。最高效的团队就是一个人,但是显然不适用大型软件,所以5人左右的精英团队是最合适最舒心的。
对于爱情,生活的直接涉及不多,但可以见到这些大师对家庭还是非常看重的。
最后,大师们畅谈计算机技术的时候,也不会忌讳谈他们对金钱的渴望。在为对人类命运因计算机技术改变而激动人心的时候,埋头数钱也同样激动。
以下是我对这些大师的一句话简评。
部分受访者名单及一句话简评:
1 查尔斯·西蒙尼- Microsoft Word 和 Microsoft Excel 等著名软件的领导开发者。斯坦福博士学位。
有个人风格的代码,太空旅行可以思考科学的高度。
2 巴特勒·兰普森- 微软公司科技院士。麻省理工兼职教授
计算机就是高级玩具,编程艺术和建造艺术类似。
3 约翰·沃诺克- Adobe 公司的联合创始人,Postscript 语言的开发者。犹他大学数学学士和硕士,计算机科学博士。
年龄增长了经验,但也损失了活力,对于编程来说,两者同样重要,所以经验增长不会有助于编程水平提高。
4 加里·基尔代尔- CP/M 操作系统与 PL/1 编程语言的开发者。华盛顿大学计算机博士毕业。
程序员喜欢开飞机,过程和结果都像编程,但是开飞机更真实。
5 比尔·盖茨
我不是首富,我只是一个程序员。
6 杰夫·拉斯金- 苹果电脑公司 Macintosh 项目的发起人。
乔布斯是个粗暴的管理者,窃取了我们的成果。
7 岩谷徹- 南梦宫吃豆人游戏的缔造者。
我觉得我会开发比吃豆人更好玩的游戏,但别人不相信。
(2018年第七本)
《编程大师访谈录》读后感(六):编程大师访谈人物——比尔·盖茨(样章)
《编程大师访谈录》已经上市,在本书中,最具影响力的当属比尔·盖茨,图灵社区将此篇访谈公布出来,供大家赏读。在访谈开始之前,先让我们了解一下这位大师级人物。
威廉·亨利·盖茨 (William Henry Gates)
昵称比尔·盖茨 (Bill Gates) 1955年10月28日出生,在西雅图长大。他的父亲威廉·亨利·盖茨是一位律师,母亲是一位教师,性格坚强,富有独立性,善于与人交往。盖茨是家中三个孩子中唯一的男孩,排行第二。从少年时代热衷于电脑游戏,富于想像力,14时不再上数学课,因为他已很好地掌握了数学知识。1973年进入哈佛大学法律系学习,19岁时退学,与同伴保罗·艾伦(Paul Allen)创办电脑公司,直到后来创办了微软公司,自任董事长、总裁兼首席执行官。1998年1月,他将总裁一职让给史蒂夫·鲍尔默,2000年1月13日,他宣布不再担任该公司的首席执行官一职,以便从对公司日常事务的管理中脱出身来,集中精力推进下一代视窗因特网平台及其服务工作。 2008年6月27日是盖茨在微软全职工作的最后一天。不过,现在他依然担任微软的非执行主席。
进入访谈:
作为微软的CEO,威廉•H. 比尔•盖茨(William H. Bill Gates)被认为是当今个人计算领域和办公自动化行业一个强有力的推动者。比尔•盖茨从年轻时就开始了计算机软件的职业生涯。当盖茨和微软的联合创始人保罗•艾伦还在华盛顿州的西雅图上高中时,两人就开始做起了编程顾问的工作。1974年,盖茨在哈佛大学读本科时,他与艾伦合作为第一台商用微型计算机MITS Altair开发了一套BASIC编程语言。在那个项目顺利完成后,两人创办了微软公司,为新兴的微机市场开发并销售软件。
微软为软件产业在编程语言、操作系统和应用软件等各方面设定了标准。盖茨为微软提出了新产品的创意和技术发展的远景。在开发新产品时,他还会亲自指导技术小组,投入时间复审和完善微软所销售的软件。盖茨出生于1955年,是西雅图本地人,至今一直居住在那里。
***
采访者:显然,作为微软的CEO,你的责任重大。你现在仍在编程吗?
盖茨:我现在不编程了。我仍会在算法设计和基本方法上提供帮助,有时也会看看代码。但自从完成IBM PC BASIC和Model 100上的工作后,我就再也没机会自己动手编写程序了。
采访者:在微软的软件开发过程中,你扮演了什么样的角色?
盖茨:我做两件关键的事情。一是选择在程序中放入哪些功能。为了做到这一点,必须合理把握什么事情容易做、什么事情不容易做。还必须明白你追求的产品系列的策略是什么样的,并要关注硬件领域的进展。此外,我还致力于实现新功能的最佳方案,也就是如何把新功能做得既小又快。例如,我写过一个备忘录,是关于如何设计和实施Excel中的一项功能的:每当屏幕发生变化时,程序都要重新计算其中的公式。
在公司成立后最初的4年,我参与编写和设计了微软所有的程序。在所有这些最初的产品中,无论是BASIC、FORTRAN、BASIC 6800还是BASIC 6502,没有一行代码是我没有检查过的。但现在我们有大约160名程序员了,所以我主要是做产品和算法的复查。
采访者:你认为你在编程上最大的成就是什么? 盖茨:那得说是为8080编写的BASIC了,因为程序当时所产生的影响,而且因为我们设法把程序做得很小巧,非常适合当时的使用场景。那是我们决定创办微软时所编写的最早的程序。
我们三个人都清楚地记得那个最早的程序。我们得到了一个机会,在新墨西哥州的阿尔伯克基花了整整一个夏天,把程序彻底重写了一遍。我认为可以节省几个字节,让程序更精简。我们非常非常仔细地调试着,最终得到了那个4K的BASIC解释程序。
当你非常了解一个程序,觉得没有人在看了程序后会说“还可以做得更好”时,那种感觉真是太棒了,而且程序用在了很多机器中,让人觉得编写那样一个程序是件很兴奋的事情。
我还非常喜欢为Model 100编写的那个程序,特别是我们把一个非常有用的小编辑器压缩到了软件中。我和一个名叫杰米•铃木(Jey Suzuki)的日本程序员合作完成了那项工作。我们在非常有限的时间内完成了那个项目。如果编写的软件要烧入ROM,你是没有机会可以犯错的。
采访者:你认为计算机编程中最困难的部分是什么?
盖茨:最困难的部分是确定采用什么算法,然后还要尽可能地简化算法。做到最简单的形式是很难的。必须在心中模拟程序是如何工作的,必须完全了解程序各部分是如何一起工作的。最好的软件是其中有一个程序员完全了解程序的工作方式。要做到这一点,必须要特别热爱编程,集中精力让程序变得极为简洁。
采访者:随着计算机能力越来越强大、内存越来越多,编程会变得越来越复杂,还是会变得越来越拙劣呢?这对人们编写程序的方式会产生什么样的影响?
盖茨:我们已经不再生活在每一个程序都精雕细琢的时代了。但是你会发现,程序要做到顶尖,最重要的是,那些关键的内部代码都是由少数几个知道自己在做些什么的人编写出来的。
现在把程序压缩到4K的内存区域中已经不那么重要了。你在很多情况下会看到人们使用C语言,而不再使用汇编语言了。遗憾的是,很多程序都太大了,已经没有一个人可以真正了解整个程序的所有部分了,所以能得到的共享代码也不是很多。此外,因为一直要在同一个程序中添加新功能,所以也没有太多机会让你回去重写代码。
最糟糕的程序是原来的程序员在开始时没有打好基础,而他们也没有再参与到程序的后续开发中。在这类程序上继续工作就会遇到一种我所说的“实验性程序”的情况。程序员对那些程序了解得太少,他们不知道改动之后会影响什么,比如说会不会影响运行速度。他们可能会使用已经存在的代码,他们也有可能并不知道如果修改了代码,会破坏何种依赖关系。于是他们加入了新代码,并在运行之后说:“噢,看哪,它不是那样运行的。”这种处理程序的方法效率非常非常低,但很多项目到了最后却都是这样的。
采访者:在一个像微软这样有160名程序员的公司中,你是如何创造一个环境以确保能开发出成功软件的?
盖茨:一种方法是建立小型的项目团队,通常是四五个人一组,其中一个人经证实有能力掌控整个程序。如果这个项目带头人遇到不确定的事情,他会与经验更为丰富的程序员一起讨论。
我们的部分策略是让所有程序员在进入编码阶段之前都先想清楚每一件事情。编写程序设计文档是至关重要的,因为在把问题当做算法看的时候,问题会得到很大的简化。可以说算法是最简单的形式,从中可以看出问题在什么地方是重叠的。
另一个重要因素是代码复查,要确保代码是看过的,看看资深人士是否能提出如何做得更好的建议。而且你必须参考类似的、做得特别特别好的项目。程序员可以看看以前其他人是怎么做的,从其他项目获得改进自己程序的想法和经验。
采访者:那些程序的构思是怎么来的?
盖茨:嗯,说实在的,还真没有什么正式的流程。在微软,通常在晚上或周末会有一个集思会。大家会有些大致的想法,比如说,我们要做世界上最好的字处理器,我们希望技术出版部门借助这个字处理器能够做他们想做的每一件事。为此我们会坐下来讨论:怎样才能让程序真正快捷?能够嵌入绘图功能吗?能够让字体平滑但又不降低程序的效率吗?各种各样的问题都会透彻地讨论,接着就会出现一些好的想法。
采访者:大体说来,程序的构思是集体智慧的结晶?
盖茨:对于决定要开发哪些程序,我们有一个相当大的团队来提出建议。然后会有一个筛选的过程,最后由我决定哪些想法是有意义的。我要确保项目有一些项目带头人,能够亲自参与项目,确保产品开发成功。为了开发一个产品并制定新的世界级的标准,需要投入非常大量的资源,所以我们选择的项目会非常非常少。
采访者:很多人都在谈论大型软件公司要想吸引能开发出优秀软件的人才有多难,因为这些大侠都太特立独行了,他们喜欢独自作战。在微软,你们是如何吸引并留住那些优秀人才的?
盖茨:优秀的程序员对于软件产品的开发是至关重要的。但是我们不赞同独行侠的做法,不会仅仅因为一个人很优秀,就允许他在代码中不添加注释,或允许他不与其他人沟通,或是允许他把自己的想法强加给别人。
我们希望程序员能够相互尊重。我认为大多数优秀的程序员都希望周围有其他优秀的程序员。当他们想出了一个很好的算法时,他们希望周围有能够欣赏其绝妙之处的同事。因为你在构想那个算法、脑海中产生那样一个模型时,那是个寂寞的事情。如果你原来以为处理过程很复杂,但却找到一个办法,让过程变得很简单,那种感觉好极了。不过你需要从其他程序员那里得到一些反馈。如果已经有了几个优秀的程序员,就会吸引更多优秀的程序员。
传统的管理规则是,程序员的管理者总是一个更加出色的程序员,没有我们所说的“技术倒挂”,让程序员为一个不知道编程为何物的人工作。我们仍旧遵循这一理念:在一定的级别上,我们会用业务经理,但不会用非程序员管理正在开发的软件项目。
采访者:你认为开发优秀的程序有什么特定规则吗?
盖茨:有些人刚一进到项目中就开始坐下来编码,而有些人则在编码之前把所有的过程都想清楚,我认为你会发现那些一开始就坐下来编码的程序员只是在把那些代码当做草稿使用。那些在他们头脑中思考的内容才是最重要的。
你必须得有非常聪明的程序员。一个优秀的程序员会一直不断地思考所开发的程序,无论是开车还是吃饭。不停地思考问题,需要耗费大量的脑力。
全文请点击:http://www.ituring.com.cn/article/details/736
猜你喜欢
推荐读后感