值得反复阅读的文章
- 产品是资产,代码是负债。 你的产品解决了客户的问题,因此是你的资产。代码则是创造资产的成本。你拥有的代码越多,阅读、测试、更改和理解所付出的成本就越高。
- 复制比过早抽象成本更低。 除非你高度确信你的抽象会为自己买单,因为它解决了你真正拥有的真实抽象问题,否则不要这样做。等待并了解更多信息。在此之前,重复代码可以帮助避免依赖关系,这本身使代码更容易独立更改或删除。过早的抽象通过依赖性和间接性造成复杂性,并可能成为您响应变化能力的瓶颈。
- 教学是一种变相的学习形式。 如果你认为你知道一些东西,试着教它。通常,试图向别人解释你所知道的事情的行为迫使你更清楚地形式化自己的想法。把事情写下来似乎也有类似的效果。我已经记不清有多少次我开始解释一些事情,却发现我并不像我想象的那么理解它。
- 提升周围人的技能,而不仅仅是你自己。 一个伟大的团队永远不会因为一个了不起的人而伟大。这是一个伟大的团队,因为每个人都互相挑战,每个人都共同成长。当你学到一些很酷的东西时,分享它——帮助你周围的人变得更好。当他们这样做时,每个人都受益,没有人被抛在后面。这也更有趣。
As developers, our task is not just to solve today’s problems but also to ensure we do not become tomorrow’s problem. 作为开发人员,我们的任务不仅仅是解决今天的问题,还要确保我们不会成为明天的问题。
拿 Python 的测试框架 pytest 来说,假如你并不知道参数化测试 @pytest.mark.parametrize 的存在,那你就得重复许多相似的测试用例代码。