原文地址:chriskiehl.com/article/tho…
原文作者:chriskiehl.com
发布时间:2021-01-23
我改变了主意的事情。
我现在相信的东西,过去的我都会争论不休。
- 强类型语言在不同经验水平的团队中工作时效果更好
- Standup(站会)其实是很有用的,可以监视新手。
- Sprint(敏捷开发)回顾也有它的作用,只要它们是用于实际的路线修正(例如 "我靠,这太差劲了!"),而不是一些可怕的 "敏捷"/"渣滓大师 "驱动的浪费大家的时间。
- 软件架构可能比其他任何东西都重要。一个好的抽象的低劣的实现不会对代码库造成净伤害。一个坏的抽象或缺失的层会导致一切都腐烂。
- Java并不是那么可怕的语言。
- 聪明的代码通常不是好代码。清晰度胜过所有其他关注点。
- 糟糕的代码可以用任何范式来写。
- 所谓的 "最佳实践 "都是因地制宜的,不能广泛适用。盲目追随它们会让你成为一个白痴
- 在不需要的时候设计可扩展的系统会让你成为一个糟糕的工程师。
- 静态分析很有用
- DRY是为了避免一个具体的问题,而不是一个最终的目标。
- 一般来说,RDBMS > NoSql。
- 函数式编程是另一种工具,不是万能药。
我在这一过程中得到的意见
- YAGNI, SOLID, DRY。从高到低。
- 铅笔和纸是最好的编程工具,也是使用率极低的工具
- 以纯度换取实用性,通常是一个好的选择。
- 增加更多的技术很少是一个好的呼吁
- 直接与客户交谈总是能在更短的时间内发现更多的问题,而且准确率更高。
- "可扩展 "这个词对软件工程师的心灵有一种神秘而惊人的力量。仅仅是它的一句话,就能把他们鞭策得堕落疯狂。严峻的行动都是用这个词来证明的。
- 尽管被称为 "工程师",但大多数的决策都是纯粹的货色崇拜,没有任何背地的分析、数据和数字的支持
- 90%--也许93%的项目经理,可能明天就会消失,要么没有影响,要么效率净增。
- 在进行了100多场面试之后:面试已经彻底坏了。我也不知道如何真正让它变得更好。
老观点不变。
- 那些为代码风格、排版规则或其他琐事而紧张的人,都是疯狂的怪人。
- 代码覆盖率与代码质量完全无关
- 在大多数情况下,单体服务(相对于微服务架构)是相当不错的。
- TDD纯粹主义者是最糟糕的。他们脆弱的小脑袋无法处理不同工作流程的存在。
我们将看看在第10年的时候,这些工作流程中有哪些发生了翻转或改变。