master programming
时间
- 分块: 将大的项目分成小块,根据当下的情况,合理安排这些小块。总是可以重组这些小块,来适应不同的情况。
- 一次做一件事: 专注带来效率。
- 跑起来,结果正确,跑得快: 任何小功能的实验,都可以这样的步骤实现。
- 让改变容易: 面对改变时,先让需要改变的对象变得简单,再进行改变。
- 专注: 一次只改变一个地方。
- 隔离: 明确改变的边界。
- 基线评估: 测量了当下,你才能评估你的改变是否有价值。
学习
- 指哪打哪: 运行代码前,对结果要有预期。
- 具体的假设: 调试错误时,改动代码前,对错误要有具体的假设。
- 去掉不必要的细节
- 不同维度思考: 技术,设计,测试,人。
逻辑之外
- 对称: 相似的东西,可以被拆成,完全一样的部分,加上明显不一样的部分。
- 美学: 美会带来力量,也可能带来嘲笑。
- 节奏: 保存力量,等待时机,时机一到,全力以赴。
- 权衡: 所有的决定都基于权衡妥协。知晓「条件」比知晓选择和结果更重要。
冒险
- 趣物清单: 有趣的想法产生,先记下来。等待空闲时间。
- 喂养想法: 你不喂养想法,他就会远离你。一旦有想法,研究它,花尽可能少的时间证伪。
- 80/15/5: 80%时间做低风险有固定产出的事,15%时间做高风险高收益的事,5%做那些停留在心里,让你心痒的事。