跳过导航
跳过mega-menu
的帖子

为什么软件工程师会成为优秀的园丁

在Made Tech,我们为客户提供成功的成果, 在我的交付团队中,我们通过交付高质量的软件来为此做出贡献. 作为首席工程师, 我正在寻找能够建立我们对软件信心的技术, 为了调整我们的测试策略和文化, 以及我们如何在我们的团队中实施这些变化. 这就是为什么, 今年早些时候的一个周二晚上, 你会发现我在看一个前同事的演讲,题目很吸引人 TDD和其他药物.

虽然这次演讲更广泛地探讨了测试的重要性, 人们的动机部分让我的思想有点偏离了正题. 你作为开发者所体验到的那种掌控感, 当它就位的时候,那种建造杰作的感觉, 再加上考虑代码库和 团队作为一个系统,让我把我们的软件想象成一个美丽的、维护良好的花园. 我无法立即解释我的理由——这对我来说是有意义的. 但是在考虑了更多的问题之后 加上一点园艺方面的研究 -我确信! 这是为什么…

园丁vs程序员

《全球最大的博彩平台》(The Pragmatic Programmer)的第一版(现在有了) 20周年纪念版)创造了软件工艺的概念作为它的第一个技巧:“技巧1关心你的工艺”。. 这意味着作为开发者,我们拥有发挥天赋的空间, 个性, 在我们的工作中诠释和爱. 这为更正式的“软件工艺”方法奠定了基础 自己的宣言 并建立在4个敏捷值的基础上.

像软件开发一样,园艺也是一种技术贸易,一种艺术形式,一种工艺. 程序员和园丁花费数年时间来磨练他们的能力, 学习新技术, 寻找新的工具并将其应用到日常生活中.

花园与软件

软件和技术都在不断发展和变化. 它们是有机的、有生命的有机体. 有时候,我们开发的软件能够站稳脚跟,真正茁壮成长, 但有时——也许更常见的是——我们试图建立一些东西,但它并没有像我们期望的那样发挥作用或发展. 

也许还需要再考虑一下, 调整一下它的行为,或者最好把它放在堆肥堆上, 这也是可以的. 从这个意义上说,软件开发就像一个花园. 我们还需要对环境的变化做出反应, 评估环境并为手头的工作选择正确的工具.

景观与设计

对于园丁和软件工程师来说,成为一名架构师是一条老生常谈的职业道路 不是所有人都适合 根据超级有用的C4模型的创造者(他还认为我们应该更严格地将开发视为工程而不是工艺)。. 当我们承担一个新的软件项目时,我们会在高层上做出一些全球最大的博彩平台期望它看起来如何的决定, 哪些组件相互流动, 我们需要打好什么样的基础才能开始行动. 

但这些前期工作只是软件设计的一个方面,美化的一个方面. 构建好的软件, 我们不断地使用简洁的代码, 我们使软件易于更改, 我们允许建筑的进化,因为我们了解到那些不可移动的根,这些根是史前种植的,是为了绊倒我们. 我们考虑安全方面的潜在风险, 表演, 可扩展性就像园丁考虑阳光或恶劣天气条件的影响一样.

维护vs .维护?

软件很少能被完成而不被碰触, 就像花园不可能完工一样. 总有一些级别的维护需要执行,并且某些区域需要比其他区域更多的维护. 在日常的功能开发中, 我们不断地重构——拆分已经变得太大的方法, 重命名类, 根据我们所学到的和我们当时所知道的,抽象出一个局部概念. 

不定期, 我们可能会修复一些代码,淡化一些技术债务,或者进行一些小的重组. 这些活动可能类似于除草(经常),割草,修剪,或 波拉德 (少). 特别是对于遗留系统,我们可能有一些工具组件几乎不需要维护. 它们不需要触摸,而且做得很好, 但是当他们需要工作时,这可能是一项昂贵的投资,所以这就变成了一项努力与价值的练习, 比如移走一棵树或更换栅栏.

来清洁

我想把这篇博文命名为“为什么是软件工程师” 应该 成为真正的好园丁”,但我希望自己是一个例外,证明这个头衔是正确的. 好了. 我很不擅长园艺,也常常想知道为什么. 

在花了一些时间写这篇文章之后, 我意识到两个主要原因——不像我对软件工程的态度,我没有足够的激情,我对园艺艺术没有足够的纪律. 我让它离我越来越远, 安排其他活动的优先次序, 尝试,但不要承诺, 或者找一个老掉牙的借口,因为这太像一件苦差事了.

所以,如果你来问我,我们是否应该以自动化为代价进行手动修复,或者跳过测试,因为这样更快,我会打你的手腕, 但如果你告诉我 不,现在,五月 如果延长到整个夏天,你可能会得到比你预想的更多!

十大正规博彩网站评级

在这里注册