• 程序员修炼之道1


    程序员修炼之道总共分八个模块,今天说的是第一个模块的进度总结:

    Chap1 注重实效的哲学

    程序员所应该遵循的实用主义原则。

    我的源码让猫给吃了:出现错误时,要诚实,不要推诿或者找借口。要提供各种可能的解决方案与后果并与他人沟通,而不是提供借口。

    软件的熵:这是著名的破窗户原理。项目中一个小的、无人料理的问题可能带来后续编码时的懈怠,从而造成更大的问题。不要容忍任何小的错误,解决它或至少打上TODO标签。

    石头汤与煮青蛙:这个小节很有趣,它讲述了小的变化如何能渐进式地演变为大的变化。

    一方面,在面对一个毫无生气的团体、试图催生积极的变化时,可以去做第一个带来改变的人。这样,就会有人随之作出改变。可能每个改变都非常微小,但可以渐变式地带来大的改变。

    另一方面,不管是个人和团体都很容易对于小的改变疏忽大意。这意味着有些时候小的改变会在不经意间催生出巨大的改变。不管是有人恶意为之还是意外累积而成,小的坏习惯、坏改变可能会积累成很大的问题,而程序员又可能最后才看出问题来。

    这里有一个有趣的问题。石头汤显示我们可以通过小的积极改变催生大的积极改变,而煮青蛙显示我们可能会被小的消极改变迷惑,而忽略了他们在催生大的消极改变。在个体试图催生变化时如何判断是哪一种,消极与积极的改变又以什么作为判断标准?

    我以为,催生改变有些时候是有用的,但仅当团体已经死气沉沉、无法通过常规方式作出改变时。当一个团体活力旺盛时,不应用欺骗式的方式催生改变,而应该对所有改变保持警觉,并保持良好的沟通,保证大家时刻都知道自己在做什么。这同样适用于个人。

    足够好的软件:完美的软件是不存在的,幸运的是我们只需要制作足够好的软件。判断软件是否“足够好”时要让用户需求加入判断。

    你的知识资产:cs行业变化迅速,所以不应止步不前。只有对知识投资才能有回报。要定期学习新的东西,并学习多元化的知识、管理风险。本书建议了一个知识投资计划:

    每年至少学习一种新语言;每季度阅读一本技术书籍;也要阅读非技术书籍;上课;参加本地用户组织;试验不同的环境;跟上潮流;上网。

    学习过程中,遇到问题时,要作为挑战并积极地寻找解答。另外,学习时要养成批判性的思维,不要迷信任何知识(大概也包括这本书提供的知识)。

    交流:交流非常有用,但要学会高效交流。注意这些问题:想清楚自己要说什么,了解自己的听众,选择时机、选择风格,让文档保持美观并让用户加入文档的编写,也要倾听并回应他人。

  • 相关阅读:
    Suricata 1.3.3 发布,入侵检测系统
    Blue Mind 1.0 正式版发布,消息和协作平台
    Ceylon M4 和 Ceylon IDE M4 发布
    微软正式开放 Windows Phone 8 SDK 下载
    SchemaCrawler 9.3 发布
    ASP.NET防伪令牌与JSON有效载荷
    WinRT控件:图表、图示、地图和其他
    dhtmlxSpreadsheet 2.0 发布,表格生成工具
    Funcito 1.2.0 发布,Java 函数式编程库
    Rabel 1.3.9 发布,让论坛回归交流本质
  • 原文地址:https://www.cnblogs.com/092e/p/14142131.html
Copyright © 2020-2023  润新知