首页 > 编程语言 >《程序员修炼之道:从小工到专家》读书笔记1

《程序员修炼之道:从小工到专家》读书笔记1

时间:2022-09-29 22:36:20浏览次数:49  
标签:读书笔记 小工 知识 石头 程序员 质量 士兵 软件

之所以选择这本书作为第一本书,是因为这本书描述了一些程序员编写大型项目时所应该遵循的最基本的原则和可以使用的最基本的工具。它没有描述某一种特定的语言、特定的算法,也没有推荐一种编程方法作为万灵药,而是介绍了实用主义的思想,并介绍了一整套方法论帮助程序员与团体避免错误、避免浪费无谓的时间,更有效地开发程序。

第一节:我的源码让猫给吃了。

1、开发过程中出现未曾预料的技术问题,交付晚了等情况,没关系,这些是无法避免的。发生了,我们就要尽可能想方设法地职业的去处理它们。程序员这个职业需要诚实和坦率,要敢于承认自己的错误。

2、要对担负的东西负责,如果某些东西真的超出了你的控制范围可以不处理,需要尽早提出这个不可控的点。自己职责所在的事情就需要为其结果负责。当结果不达标,比如磁盘垮了,但你却没有备份代码,那这就是你的错。不要为出错的情况找借口,想老板说"我的源码让猫给吃了”,对问题没有任何帮助,而要向他们提供可行的解决方案,做什么能够最大的挽回局面。

第二节:软件的熵

1、熵是一个热力学概念,指的是在某个系统中的“无序”的总量,热力学定律指出宇宙中的熵总是倾向于最大化。软件工程里中也存在这么一个定律,工程越庞大,代码的“无序”状态越严重。

2、破窗理论指出,当一个东西本身就破旧时,不但没人爱惜,还会朝他仍石头,导致更多破窗。软件开发中也一样,如果我们项目留有很多“破窗户”(低劣的设计、错误的决策、糟糕的代码),之后接手的人也会倾向于是它变得更糟糕。如果代码很漂亮,你自己以及之后接手的人,都可能会格外注意,不把它弄脏的。所以我们应该尽早处理工程中遗留的问题。

第三节:石头汤和煮青蛙

1、三个士兵返乡,路上饿了,路过一个村子,想跟村民借点吃的,但村民粮食贫乏不愿意出借。士兵们没有气馁,他们煮开了一锅水,往里面放了几块石头。村民好奇为他们在干嘛,士兵解释,这叫石头汤,如果能放点胡萝卜的话会更好喝。村民跑回家拿来了胡萝卜,士兵说如果放些土豆会更美味,又有人跑回家带来了土豆。后面又有人加了别的东西,最后士兵和大家一起吃了一顿饱饭。

2、有时候你确切的知道自己需要什么以及怎么做,但请求许可这件事往往会遭遇拖延和漠然,每个人都会护卫他们自己的资源,这让事情变得复杂,这叫“启动杂役”(start-up fatigue)。这时候我们不应该等着所有事情都准备好,而应该先拿出“石头”煮起来,就是想让事情启动起来。只要是有益的事情,你把做出的一部分结果拿给别人看,然后告诉他们如果加的别的什么会更好,大家一般都会帮忙的。

第四节:足够好的软件

1、使质量成为需求问题。很多时候对于质量的评估都是开发人员在进行,我们对质量要求低,交付时会出现很多问题,我们对质量要求高,会很大程度延误工期。所以指定需求时,把质量这一块考虑进去,在商定的时间内,由产品或者客户决定他们可以接受的质量是什么样的。

2、没有完美的软件,应该知道何时止步。今天了不起的软件常常比明天的完美软件更可取。及早让客户使用,他们的反馈常常会把你引向更好的解决方案。

第五节:你的知识资产

1、本杰明·富兰克林说过:知识上的投资总能得到最好的回报。这没问题,但遗憾的是知识是有时效的资产,特别是计算机领域。我们可以把我们了解的技术实现、工作经验视为知识资产,并使用管理金融资产的形式管理这些知识。

2、经营知识资产可以从以下方面进行:

  • 定期投资:定期投入时间学习,即使很小的投资也是很重要的。
  • 多元化:作为底线我们需要对当前所从事的技术熟练掌握。但不要就此止步,技术的发展变化很快,掌握的知识越多,就越能更好的进行调整,赶上变化。
  • 管理风险:不要把所有的“技术鸡蛋”放到一个篮子里。
  • 低买高卖:新技术流行之前就掌握它往往比之后跟风再学得到更大的回报。

这些知道方针里最重要也是最简单的就是:定期为你的知识资产投资。

3、具体方案介绍

  • 每年至少学习一种新语言。
  • 每季度阅读一本技术书籍,习惯之后可以一个月就阅读一本。
  • 也要阅读非技术书籍,记住计算机是由人使用的。
  • 在本地大学或者网上系统地学一门课程。
  • 体验不同的环境,如果你只在 Windows 上工作,可以试下 Unix。如果你只使用某一种 IDE 那可以试试其他 IDE。

标签:读书笔记,小工,知识,石头,程序员,质量,士兵,软件
From: https://www.cnblogs.com/daitu66/p/16743327.html

相关文章

  • 程序员修炼之道:从小工到专家(九月二)
    在第一章第三节中作者讲述了关于石头汤的故事,当破窗户逐渐发展成破败的建筑,我们已经知道要做什么以及怎么做,但当我们请求许可去处理整件事情的时候,我们会遇到拖延和漠视,这......
  • 程序员的修炼之道:从小工到专家(九月一)
    作者在第一章第一节开头就告诉我们:在所有弱点中,最大的弱点就是害怕暴露弱点。对这句话我深有感触,当我们在做某些事情比如写代码的时候,我们会受到自尊心得影响,一方面希望可......
  • 程序员修炼之道之从小工到专家读后感
    在老师的推荐下阅读了这本书,在起始部分作者点名了本书注重培养时效性,并说明了一个注重实效的程序员应该拥有的特点:”每个开发者都是独立的有着个人的力量和弱点“但对于一......
  • 读书笔记1
    每一程序员都有属于自己的编程风格,每个人都有自己擅长的和不擅长的,随着时间的推移会逐渐形成属于自己的编程环境。一个成功的程序员成功的一个关键是他们会对自己所做的事......
  • 《程序员修炼之道:从小工到专家》阅读笔记2
    在某些方面,编程就像是绘画。你从空白的画布和某些基本原材料开始,通过知识、艺术和技艺的结合去确定用前者做些什么。你勾画出全景,绘制背景,然后填入各种细节。你不时后退一......
  • 《程序员修炼之道:从小工到专家》阅读笔记
    当我读了《程序员修炼之道:从小工到专家》之后,我最感同身受的是在所有弱点中,最大的弱点就是害怕暴露弱点。我本人就是一个害怕暴露弱点的人。喜欢把强势的一面表现出来而把......
  • 程序员2年攒74万,晒出工资单网友:卧槽!
    AI算法工程师走下神坛了?这几年来,圈子内越来越卷的话题持续不下,再加上大厂程序员“被毕业”、“再就业”的新闻层出不穷,贩卖给人们的焦虑也越来越多:2016年——深度学习的春天......
  • 第十一章读书笔记
    第十一章读书笔记11.1EXT2文件系统EXT2:Linux一直在用的默认文件系统EXT3:在EXT2之上拓展了任务日志功能EXT4:EXT4不再分配不连续的磁盘块,而是分配连续的磁盘块,称为区段......
  • 小工具-将awr报告转换为markdown格式
    将awr报告转换为markdown格式,后期可容易解析并分析awr报告。效果......
  • WPF 开源二维绘画小工具 GeometryToolDemo 项目
    这是一个演示WPF进行二维绘画的小工具Demo项目,基于MIT协议在GitHub上完全开源源作者是YuWeiCong我只是帮助开源的工具人软件运行界面效果:开源地址:https://g......