《软件随想录》读书笔记

    转载请说明出处: http://blog.csdn.net/cywosp/article/details/10025317
    全名《软件随想录:程序员部落酋长Joel谈软件》

    前段时间花了点时间读这本“软件部落酋长”的书(joel),作为一名IT行业的从业人员利用晚上睡觉前的一两个小时来阅读一些非技术型的书籍个人感觉很有必要,所以在翻阅了各大售书网站的评分排行版之后我买了这本书也读了这本书。从内容上来讲,这是一本个人网志(我理解为现在的Blog)的集合,严格意义上这并不能算是一本很有逻辑和条理性的书。(现在也有很多人在Blog上写文章,后来发现别人对文章的评价很好于是也整理成了书推向市场)。个人觉得这本书写得很不错,非常值得阅读,但是书中也有很多过于偏激的地方。对于现在的软件开发来说,尤其是互联网软件:开发周期短,迭代速度快,必须快速的推出软件原型,在使用过程中持续改进,发现问题快速调整。该书关于软件开发的一些做法或许更适合做企业级软件,而书中关于员工方面的做法我极为赞同。以下是在阅读过程中个人感觉不错的语句:
1. 如果你为“麻烦事”找到了解决方法,市场就会向你支付报酬。解决轻而易举的事情是拿不到钱的,“要挣钱,就别怕脏”。

2. 从长远的观点来看,那些不关心效率,不关心程序是否臃肿,一个劲往软件中加入高级功能的程序员最终将拥有更好的产品。

3. 寻找一种代码书写的规范,让错误的代码变得容易被看出,让代码中的相关信息在显示屏上集中在一起,使你能够当场发现和改正某些种类的错误。

4. 布鲁克斯法则:向一个已经延误的软件项目增加人手,只会使它更加延误。——布鲁克斯:《人月神话》的作者

5. 如果你的顾客人数较少,那么你最好经常性的发布小幅修改的新版本。

6. 如果你已经有了(或者想要有)大量的付费用户,那么你最好不要太频繁地发布新版本。

7. 对于那些有几百万用户和几百万整合点(intergration point)的软件系统,最好偶尔才发布新版本。
   5、 6、7并不适合现在的互联网应用

8. 易用性原则:一个应用程序的行为方法与用户期待的方式一致,那么它就是易用的。

9. 定价是一门很深奥很难以琢磨的神秘学问,专家告诉你,软件公司犯下的最大错误就是定价太低,那样他们就没有足够的收入,不得不关门歇业。但是,还有更大的错误(对,就是比最大错误还要大的错误),那就是定价太高,那样你的公司就没有足够的顾客,不得不关门歇业。

10. 和所有行业一样,优秀的程序员是不会出现在招聘市场上的。

11. 公司完蛋的另一个可能的原因是,既然雇佣了一个不合格的程序员,就可能雇佣一大堆不合格的程序员,累积起来就导致了最终的失败。

12. 带上耳机隔绝噪音被证明会降低程序员的工作质量。

13. 没有理由不给程序员配备顶级电脑。至少两块大(21寸-30寸)液晶屏幕,自由在(amazon)订阅他们想看的书。

14. 程序员希望之所以被雇佣,是因为自己的技能,希望被别人当做专家那样对待,有权力在自己的专业领域中做出决定。

15. 士兵应该害怕他们的长官,甚于害怕任何他们将要面对的危险。亲密永远不会让普通士兵面对危险时挺身而出,只有恐惧才会让他这么做。——腓特烈大帝

16. 认同法就是创造一个有凝聚力,像胶水粘在一起的团队,人们就产生了忠诚感和义务感,同时还要提供必要信息,是公司向正确的方向前进。

17. 看东西的时候,你的视力只是在视野中很小的一块区域的高分辨率,眼睛能快速移动,并且神经将移动过程完全抽象掉了。

18. 有一些程序员将大量的经历投入优化工作,将程序变得更紧凑、更快速。但某一天发现自己是白忙异常,因为CPU,带宽等等发展的太快了,这种努力“不会带来长期的竞争优势”。

19. 这是我远离朋友和家人的地方,我会长年累月的呆着这里,所以办公室必须好 。

20. 不要因为“反正迟早要做”,而去开发那些不重要的有趣味性的功能。

21. 将功能定价,然后限定总价,选出值得做的功能。

22. 给计算机系学生的建议:
    (1)毕业前练好写作
    (2)毕业前学好C语言
    (3)毕业前学好微观经济学
    (4)不要因为枯燥就不选修非计算机专业的课程
    (5)学修有大量编程实践的课程
    (6)别担心所有工作都被印度人抢走
    (7)找一份好的暑期实习工作
    (8)寻求专业人士的帮助,培养你的自信心

注:作者Avram Joel Spolsky生于1965年,他是一位软件工程师和作家。他是“Joel on Software”博客的作者。他从1991年到1994年间担任Microsoft Excel团队的项目经理。在2000年,他创立了 Fog Creek软件并开启了“Joel on Software”博客。2008年,他和Jeff Atwood一起启动了如今极为成功的Stack Overflow程序员问答网站。他们用Stack Exchange软件产品作为Stack  Overflow的引擎。现如今Stack Exchange网络已经包含了91个站点。


你可能感兴趣的:(程序员,职场,软件)