构建系统,而非英雄

主要观点:企业编程是系统复杂性的管理,多数企业项目目标是减少漏洞、确保可扩展性和尽快发布,依赖个体技能而非系统方法难以实现这些目标。个体效率重要但不应过度依赖,应重视系统方法,如通过设置规则防止人为错误、推动流程改进等。

关键信息

  • 个体技能展示如视频中工人工作出色,但流程低效,个体离开会影响工作。
  • 系统基于个体易受人为因素影响,需规则减少问题。
  • 应改善工作流程而非个体,重视过程优先于人,流程如编程测试,能固化问题解决决策。
  • 编程中典型系统解决方案包括基于书面对话做决策、需材料证据支持等。
  • 引入系统方法会遭团队抵制,如某程序员因“过早优化”抵制引入 memoize 规则。

重要细节

  • 如仓库所有者可设置自动拒绝直接推送到 master 分支的规则,防止程序员误操作。
  • 流程应使项目人员更替后系统仍能正常运行,工作输出应为代码等 artifacts。
  • 规则可自动化避免问题,强规则下无需担心程序员技能,可强制写不易有漏洞的代码。
阅读 9
0 条评论