《梦断代码》阅读笔记一:第0章到第2章

“本书是讲一事,也是讲百千事;是写一软件,也是写百千软件;是写一群人,也是写百千人。任何一个在软件领域稍有经验的技术人员看完本书,必掩卷长叹:做软件真难。”卷首的这段话着实把握给唬住了,这本书一定和我以前看的专业类的书籍不一样(ps:特别讨厌《20天XXX从菜鸟到大师》、《15零基础学会XXX》)。翻到目录果然是和我以前看的专业类的书有着天壤之别,光看目录就有立刻阅读的冲动。像第一章的“死定了”,第四章的”乐高王国“,第五章的”管束奇客和狗“,这样的题目很难想像会出在与软件工程有关的书上面。更加让我好奇的是居然出现了”第0章“,我已经迫不及待的等着阅读这本“另类”的专业书籍。

第0章 软件时间

本章开始介绍半个世纪前,当作者还是一个沉迷于游戏的十五岁少年的时候与计算机和编程结下的不解之缘。从开始玩游戏中的已有关卡,到学习简单的basic语言设计自己想像的关卡,并且乐在其中,至此作者开始了他的开发软件的生涯。半个世纪后,作者已经是在线杂志Salon的创始人和总编,并且负责一个软件开发项目。此次的软件项目没有想象的那么顺利,团队废寝忘食的加班加点才最后将软件开发勉强完成。“科技行业的兴盛,带来了”互联网时间“,多指快速之意。数字时代的时间机制下,一切皆有可能——技术产生、公司创立、创造财富——而且速度惊人。这意味着你没有时间做到尽善尽美——无需担心,因为别人也一样。”我对这句话有点疑义,如果软件一个软件可以方便人们的生活,甚至可以利用某软件做成自己的事业的时候,我们就必须要做到尽善尽美。对于“第0章”作者有自己的一番解释,很是新颖:计算机是从0开始计数的,程序员也训练自己这样计数,以免让他们要指示操作的计算机产生误解。而后又由各种实体的建筑,摩天大楼、水坝进行发问:为什么不能像造桥那样造软件呢?因为现代文明,人类生活之所需都系于计算机,软件这根细线之上。但是软件错误、软件项目的延误和超出预算让很多的项目无极而终。对此很多从事软件行业的人对此很是沮丧,甚至于想要摧毁整个软件大厦。但是明显软件对于我们来说,需要远甚于仇恨。梦之所寄,行之所为——软件带给我们挫败和束缚,必将在开发出完美软件之后云销雨霁。

第二章  死定了

本章开篇就讲到一个团队在软件开发的过程中遇到的常见的也是很棘手的问题:程序员的开发进度问题。很普遍的解决办法就是,项目团队每天进行例会公布每天的进度,并且填写软件缺陷表,但是还是无法完全解决此类问题。究其原因,软件设计之前没有蓝图,所以会碰到无法预料的问题;因为是同一个项目的不同部分,你需要的时间取决于其他人所花的时间;对于从没遇见的问题我们有害怕的心理。害怕的并不是问题本身,而是我们不清楚问题是什么,以及要花费的时间。

接着作者又讲到开源的问题。作者认为源代码是一笔全人类的财富,开源有利于彻底改变软件开发的具体过程。开源本身是让程序员学习和拓展源代码,“乐享及高效”嘛。

第二章  Agenda之魂

angenda项目是为了解决提醒、要做的事、好主意、建议等一些很难分类的信息,让计算机进行分拣,并能快速找到。虽然是一个简单的列表管理软件,但是几个突出的特性让其成为传奇: 引入了一种管理数据的新手段;突破了计算机的严密逻辑和人类语言不详之间的阻隔。用户不关心软件的存储结构,只管输入数据;用户能够轻易修改和拓展数据结构、添加新的分类;用户能够用自己的方式产看数据。很难想到这是二十多年前的成果,它完全达到了现在很多软件的都达不到的水平。而对于软件灾难,我们不应该太过于在意,不然很难将代码写下去,所以“程序员都是乐天派”。

未完待续。。。。

时间: 2024-10-29 19:12:10

《梦断代码》阅读笔记一:第0章到第2章的相关文章

梦断代码阅读笔记有感之二

08梦断代码阅读笔记有感之二 在梦断代码的一开始我们就学会了如何去写代码,如何成功的去做一个软件工程师. 在现在人的严重,也许软件工程师写出的代码只是让人在玩游戏,在用一些简单的用代码写出的软件.只是认为工程师在不断地重复着一个动作:写代码.但我只能说你们大错特错,就像在文章中说的那样,其实软件工程师是在:“改变世界”,他们利用他们的手用键盘在电脑上打出一行一行的代码,程序产生了,一个新的软件也就产生了.而且,众所周知的,工程师做一个软件,总是在无限制的更新他的内容,让我们的软件更加的先进化,就

梦断代码阅读笔记有感之三

09梦断代码阅读笔记之三 这是最后一篇的阅读笔记,我发现时间真的过的好快好快. 想想以前,我们总是在应付一切的差事,但是真正的到最后,我们才发现,到最后吃亏的还是我们自己. 从前的我们,我们总是对自己大脑中的东西一片一片的特别的混乱.其实我们就像作者所说的,我们就像放任胡乱的cd随地的乱放,到最后不知道哪是哪.我们应该学会分类去放置,例如:我们可以根据歌唱者的名字,音乐的类型等等,其实这些东西对于我们写代码也同样的试用,刚开始的上大一时候,我们第一次的学习C++,我们只是随时随地的在写代码,并不

<<梦断代码>>阅读笔记一

没有想象中的枯燥,甚至有些有趣.这就是我对<梦断代码>这一本书的第一印象.而且,作为一本面向程序员的书籍,作者很有意义地从第0章开始,那我也从第0章开始说.这第一次读书笔记是针对0~2 章的. 首先,作者一开始就向我们介绍了程序员的真实生活:代码.日期.紧张.焦虑.这是我从书中体会出来代表程序员的词 语.我第一次感到编程可能是一件辛苦的事,回想自己编程的时候,只是歇一歇简单的短的程序,没有压力,没有焦虑,但是在真正的公司.项目中,程序员要面对的是茫茫代码以及对未来的未知,因为没有人能确定自己从

01梦断代码阅读笔记之一

在看完构建之法之后,我又开始了梦断代码的阅读. 在梦断代码的第0章就写作者从15岁的玩游戏,但是对于当时的他来说,并不是在沉迷于游戏,而是为了做到打补丁.使得自己的少年的梦想得到浇筑.其实他的做法正应该体现在我们现在学习软件人的身上,我们现在就应该学会怎样的去做自己的梦想,更重要的是练习自己对于软件的好奇心以及热爱,在作者40岁的时候,我们体现的又是另一种的感觉,其实他们和我们没有差别,就像我们在做一个软件的时候,我们在到达最后的期限的时候,其实在哪个时候我们才发现我们什么都没有做出来,问自己为

梦断代码阅读笔记之一

最近阅读了罗森伯格的<梦断代码>,算是近距离观察了十几年前软件开发的状态.这本书是作者对OSAF主持的Chandler项目进行田野调查  而写的一本书.本书是在讲一事,也是在讲百千事:是写一软件,也是在写千百软件.在描述Chandler项目的过程当中亦提出了很多观点,带给我们很多思考.让我们这些软件工程专业的学生对软件开发有了一个更深层次的认知. 在本书第一章,作者为我们介绍了一个布鲁克斯法则:"往已延误的项目里补充人力,只会使其继续延误". 布鲁克斯曾是IBM的资深程序经

&lt;&lt;梦断代码&gt;&gt;阅读笔记三

看完了这最后三分之一的<梦断代码>,意味着这本软件行业的著作已经被我粗略地过了一遍. 在这最后三分之一的内容中,我深入了解了在大型软件项目的运作过程中存在的困难和艰辛.一个大型软件项目的成功代表着这团队所付出的所有心血,以及那不为 人知的无数个‘人月’.而联想自己的专业,产生了一点迷惘,这就是我今后要走的道路么,我能走得多远,我能否像书中所提到的那些人一样百折不挠,这一切我 都无从得知.但是我只能向前走,别无选择,没有人会承认自己不如别人,哪怕现在不如,但总会寄托于未来,未来是未知的,但又是现

梦断代码阅读笔记二(4-7章)

在上一周<梦断代码>读完了第七章,全书已经过半,对于这本书有了更深的体会,对于软件开发之难也更加理解.      乐高王国一章中引出了一个代码世界或者说程序员世界里的美好设想——程序将由可复用的部件组合而成,软件部件将在全球范围内提供,软件工程将从编程的窠臼中解放出来.软件组件就像乐高积木一样,细小.不能再分.可被替代.可以自由组合.这是代码复用的概念,这会省去编写代码的麻烦,但是也存在不少问题,诸如大型可复用组件的稀少,有些程序员不愿拾人牙慧等等.其实我认为这是一个不错的设想,也是一个值得努

梦断代码阅读笔记三(8章—完)

<梦断代码>在读读停停.时快时慢中读完了.在最后我不禁想起全书开始处内容简介里的话——“本书是讲一事,也是讲百千事:是写一软件,也是写百千软件:是写一群人,也是写百千万人.任何一个在软件领域稍有经验的技术人员看完本书,必掩卷长叹:做软件难.” 诚然,我还不属于“软件领域稍有经验的技术人员”,但是我也从书中了解到了做软件之难.这里来写写最后几章的感受. 第8章中描述了即时贴的概念,依然是在漫长的Chandler开发过程中的一次会议上,杜索特提出每人在白板上贴自己的即时贴,每张纸表示大致同等的工作

梦断代码阅读笔记01

大致浏览了一下<梦断代码>这本书,觉得还是挺感兴趣的.第一章软件时间,作者以一名程序员的身份自述,故事性很强,读起来不会感觉枯燥.在第一章中作者认为程序员与其他人的不同之处在于他们从一开始,而我们从零开始,想来也正是如此,他谈了软件的发展历程以及过程中好多伟大的研究者为其发展而做的贡献,这个行业也是很多前辈付出了诸多努力才推出来的,所以需要我们付出更多的努力去发展他. 第二章中作者讲到我们做任务需要蓝图,也就是需要有计划,提前计划好,按计划来做任务,这样对于碰到一些问题才不至于举手无措,另外在

梦断代码阅读笔记二

今天看了<梦断代码>的第2章-Agenda之魂,刚开始看时不知道Agenda是什么东西,看完之后才知道是什么东东,这里先不做解释,下面会详细介绍到.说到Agenda,就必须提一下米奇·卡普尔这个人,卡普尔曾被冠以“反盖茨”的名号,由于他不喜欢使用Exchange,但当时小型组织的日程管理没有其他方案可选,但是用Exchange的代价不低,你得购置一台服务器,购买Windows许可,购买Exchange软件许可,如果没有全职技术人员,还得雇个咨询师.可能基于这个背景的情况下,卡普尔大胆押宝,创建