zoukankan      html  css  js  c++  java
  • 《高效程序员的修炼》读后感


    本文来自http://blog.csdn.net/liuxian13183/ ,引用必须注明出处!

         

           首先非常感谢陆经理的赠书,如有想购买的同学,可到京东购买,地址:http://item.jd.com/11279666.html


            这本书讲的并不是通常市面所见到:教你如何使用一个类,研究它的内存与引用之间的关系;也不会教你如何实现一个功能或者一个界面;其实这本书是面对一个技术总监的书,如果你有志于CTO,那么我可以负责任的告诉你:你可以去购买它!


           这是stackflow创始人jeff atwood所写,对于创办过两个成功网站的人来说,他的经验是非常宝贵的。下面是这本书的目录:


    《高效能程序员的修炼》 

    第1章 入门须知1 

    你想成为一个程序员1 

    程序员的八种境界6 

    如何培养写作习惯9 


    第2章 把一堆烂事搞定的艺术13 

    学海无边13 

    磨刀不误砍柴工17 

    一路向前冲21 

    关于多任务的神话25 


    第3章 高效编程之原则28 

    第一条法则:永远都是你的错28 

    大道至简30 

    避免写注释33 

    学会读源代码36 

    向橡皮鸭求助40 

    创新以人为本44 

    你的团队能通过电梯测试吗47 

    性能致胜52 


    第4章 招聘程序员须得其法60 

    .为什么程序员不会编程60 
    怎样招聘程序员63 
    如何做好电话面试筛选68 
    工作经验年数之神话72 
    与程序员面谈75 
    史上最难的面试谜题77 

    第5章 促使团队紧密协作81 
    不管怎么说,那总是人的问题81 
    领导须以身作则83 
    程序员与系统管理员的黑夜传说87 
    结对编程与代码评审91 
    会议是浪费工作时间的最佳去处94 
    处理坏苹果96 
    坏苹果是团队的毒药99 
    关于远程办公102 

    第6章 蝙蝠洞:程序员的高效工作场所109 
    程序员的《权利法案》109 
    电脑工作站的人体工程学111 
    多显示器能提高生产力吗115 
    购置优质的电脑椅118 
    背景光的功效123 

    第7章 设计时要把用户放在心上127 
    你永远不会有足够的奶酪127 
    细节决定成败129 
    用户界面代表了软件134 
    用户界面须优先设计136 
    分页显示该休矣140 
    对待弱视的用户144 
    再谈浏览器底栏149 
    费茨定律与无限宽度152 
    单元测试的终极失败156 
    第一版做得不好,但照样发布159 

    第8章 安全基础:保护用户数据162 
    所有网络通信都应该加密吗162 
    防范字典式攻击166 
    快速哈希170 
    关于网络密码的可怕真相177 

    第9章 加强代码测试,别让它太差劲182 
    与客户患难与共182 
    结交“混世魔猴”184 
    代码评审:说做就做187 
    加大测试力度189 
    我同情那些不写单元测试的傻瓜193 
    单元测试与beta测试的对比196 
    低保真的可用性测试197 
    比程序崩溃更糟糕的是什么201 

    第10章 创建并管理社区,同时从中受益204 
    倾听社区的声音,但别被它们牵着鼻子走204 
    我重申:别盲目听从你的用户209 
    游戏化213 
    暂停,禁止,或者打入地狱220 

    第11章 揭露营销伎俩,以及如何规避225 
    谨防九种营销诡计225 
    网络广告该休矣233 
    从《偷天情缘》看a/b测试 的问题238 
    如果流于俗套,请即刻改变242 
    软件定价:我们深谙其道吗245 

    第12章 轻重缓急,了然于心248 
    程序员,你幸福吗248 
    来也匆匆,去也匆匆,到头来两手空空252 
    附录 程序员必读之书257 
     

            同行人经常拿我们跟小偷做比较--回家最晚、夜晚不定时加班。夜间一人在路上行走,警官只需要问8变2的最快试是什么,就可以区别出程序员还是小偷,程序员当然会回答右移2位,小偷的回答可能就千奇百怪了。当然这只是一个笑话!


            一般来说,软件流程规范的公司不会加班或者很少加班,同学们过的都很幸福,公司上班的白领一族。选一个牛逼的开发经理,配合态度温和而睿智的产品经理,加上一个优秀的开发团队、测试团队,项目井然有序如期完成,不存在什么特殊问题。但国内大多企业却不尽如人意,加班成为常态;一方面可能由于开发经理制定计划不周密,出现难题、员工离职、IT出错、团队不融洽,另一方面可能是产品经理不行,经常变更已经定好的需求;由于开发人员能力问题而导致的加班,在想干大事却开不起工资或激情不够的公司也比较常见;作为一名编程人员,我们不能从流程上来要求别人怎样怎样,却可以加强自己算法的修炼,养成良好代码习惯,总结出好的学习方法,取长补短,来提高自己。不过,显然这本书不是面对编程人员的,而是技术负责人--CTO!


            程序员是项目完成的基础,是项目的实施者,那么首先来讲一讲程序员,程序员境界:烂、低调、业余、普通、胜任、知名到成功、不朽,这是八个等级。我们知道,带出两个普通程序员,我们就是普通的CTO;带出两个胜任的程序员,我们就是可以用途的CTO;带出两个知名的CTO,我们就很牛逼;带出成功的以及不朽的程序员,那是可遇而不可求的,Bill、图灵这一类人。在我看来,程序员是一堆艺术家,把生命注入硬件;作为写项目的人,写的功底自然是可以提升的一方面,因此平常不仅仅写项目,也要写写blog,发表下评论来提升自己的逻辑思维和全局观念,平常看看工具书和专业博客,写代码时要一心一意,遇到难题可以先越过去,要知道你现在记住了几个类,之间的调用关系,第二天来会忘光的。


            写代码出错,无条件认为是自己的错,这时如果条件允许,找一个同事一起来找bug,相信比你一个人时找的快,也可以看看源码,分析下人家是怎么实现的,这样对自己都是大有裨益;程序员代码时,注意性能的提高,让用户3秒内明白你要他怎么操作;如果团队有创新的想法,那么确认后去实现它,处于空想或者未付诸行动的计划永远价值为0,哪怕失败价值依然存在。


            招聘是重要的一关,意味着你将和怎么样的同事一起工作,这点至关重要!那么要求他手写一段代码,看是否熟练,有没有自己的浏览器收藏夹、认同公司文化、电话面试,给个小项目试用两周,然后再单独谈话,相对于之后要聘用他很长时间,两三周的时间来招聘一个人是必须的。能不能做事,会不会做事,做的怎么样,意味着团队的整体实力的升与降,如果后来再发现不合适而换人,那么代价是巨大的,士气、情绪、计划、团队、金钱等都要受到影响。总之,招聘程序员是很难的,除了要防止他坑蒙拐骗,还要保证他是个专家,符合公司文化需求。像数组找出最大数、图形建模、正则表达式、数据结构、位与字节、乘法表等一些简单而又有些深度的问题,不要问太难的问题不然什么也问不出来,在电话面试里要进行合适的挑选,不要求回答完美,思路清晰完整即可。


           团队是一个持久不变的问题,这一生中跟同事相处的时间要远多于家人,相处是否融洽,彼此是否忠诚,是否乐于共享助人,彼此是否绝对信任,拥有创新执行能力,是捍卫者而非被奴役者,忠诚可靠并且喜欢他们,就像刚看过的《侏罗纪公园2》当中,建造者的女婿为其写管理软件,却监守自盗,导致公园的混乱和失败,这是不行的。所以一个团队,成员能走到一块,那是一种缘分,只可遇见不可强求;找工作也是这个道理。业内《蘑菇街》的创始人魏一搏就提出一个很好的方案,每加入一个成员,他考核完毕,还要大家考核通过,这样大家都接受新成员,日后合作起来也更加团队;如不合适,要及时清除,即使浪费一些钱财,但这肯定比最终失败的结果要好;告诉你,这并不是危言耸听!给足钱(money,期权、股票、房产),安其心,定立一个快速成长的目标,带领团队攻坚,以身作则,打下一个又一个“胜仗”,相信再苦再难,他们也不会离开你了。代码写出来了,Code Review也是件重要的事,submit前重要的一关,意味着这些代码要加入这个巨大的工程,但一只老鼠会坏一锅汤,重要性不言而喻。会议不是俯的一种形式,而是组织宣布目标鼓劲的一种手续,会前预习或通知,会议一小时内要结束,不然就成个人宣讲会,大家注意力已经不能集中,只能浪费大家的的时间和精力,还会有损最重要的事情。同时会议纪要和邮件通知是必要的,以纪录的方式给大家以实施的依据。


            程序员的办公设备,毫无疑问,好的办公环境带来高效率!网速、运行快速的电脑、显示屏、转椅、灯光是需要注意到的,高档的东西会带来舒适度,相应更集中精神;也许你会说无所谓,程序员嘛,但要知道程序员是唯一“干活”的人,他们才是公司的最大财富,可以想象心情经常不好的程序员会写出什么样的代码来。


            关于产品设计,用户界面是第一要素,其次本书也通过对浏览器的剖析解释了分页、导航以及对待弱势群体的一些问题,有一定的参考价值,最后讲到产品上线的若干问题,其中要求程序员从大局着想,少考虑单元测试的建议是中肯的,第一版做出来怎样先发布,stackflow第一版的bug也修改了三个月的时间。接下来,本书讨论了关于密码、用户反馈处理、代码测试与用户满意度之间的一些问题。最后是营销一些问题,如利用消费惯性、免费诱惑、制造不合理愿望等也有较大的理念上升。


            总体来说,如果现在你手边没有其他材料,却想研发一款风靡的应用的话,这本书你可以拿来参考!


            购书地址:http://item.jd.com/11279666.html

       另一本《程序员的修练》,两本一起购书地址:http://item.jd.com/1728422864.html


    PS:陆总最终在一次演讲中(目前任爱奇艺PC端总监),对他的书做了更加详细的讲解,《程序员不是码农》欢迎查看,

    爱奇艺地址:http://www.iqiyi.com/w_19rswg9skh.html  密码是iqiyi2016


    非常感谢CSDN推荐到首页,因此又编辑了一下,以示重视,再次感谢,希望程序员同学们也能喜欢这本书。

            

  • 相关阅读:
    18、排序算法-快速排序
    centos7.x 端口映射
    SpringBoot多环境分离resources和lib进行打包
    Java枚举储存的一种索引实现方式
    Maven项目pom文件设置JDK版本
    Java提取URL某个参数的值
    使用正则替换script及其内容
    Oracle设置主键自增
    Maven配置ojdbc14-10.2.0.4.0.jar
    使用maven生成可执行jar包(包含依赖)
  • 原文地址:https://www.cnblogs.com/fengju/p/6174454.html
Copyright © 2011-2022 走看看