Bendi新闻
>
警惕发布前夕的“致命遗忘”

警惕发布前夕的“致命遗忘”

作者 | Ben Linders
译者 | 明知山
策划 | 丁晓昀

软件开发人员往往会忘记那些他们不需要每天思考的事情,这可能会在软件项目交付期间造成延迟或影响产品功能。为了防止忽略某些东西,Ilian Iliev 建议尽早开始自动化部署、设置错误日志记录,并使用清单和提醒记录以前容易被忘记的东西。

Ilian Iliev 在 2023 年 Dev Challenge Accepted 大会 上谈到了软件开发人员可以做些什么来防止疏忽一些事情。

Iliev 表示,人们在开发新的软件产品或服务时往往会忽视一些事情,因为他们不需要每天考虑这些事情。这可能会导致软件项目延迟,或者影响产品的功能,或两者兼而有之。在计划阶段忘掉的每一件事情都意味着要么推迟交付日期,要么走捷径,发布不如预期的产品:

想象一下,在发布前两天,你突然意识到你完全忽略了新版应用程序与现有数据不兼容这一事实,并且没有制定迁移计划。这可能意味着几天的交付延迟,或者需要进行数周的重构。

Iliev 回忆起他们的一个服务器在深夜因操作系统的闰秒处理错误而发生崩溃:

整个系统都在运行,除了处理客户订单的部分。问题是我们几天后才从客户那里得知这个问题,他们问为什么系统仍然没有处理完他们的订单。

Iliev 说,这既是对公司声誉的打击,也是对开发人员自尊心的打击,因为我们从未考虑过对那一部分进行全天候监控。

Iliev 说,从部署和运维的角度来看,早期需要关注自动化部署。你不需要一个复杂的 CI/CD 管道,当然,如果有那也很好,但也许可以先从一个简单的可以执行所有步骤的脚本开始。千万不要过于依赖人们会记住按特定顺序执行的各种命令,即使它们有文档记录。部署应该是一键或一个命令就可以搞定的事情。

Iliev 认为,对于运营来说,可用性监控和警报是必须的。恰当的错误日志记录也是,如果系统出现问题,你应该能够追踪到问题根源。他补充说:

没有适当的日志记录,你只能去猜测是什么导致了问题,甚至更糟糕的是,直到客户开始抱怨时才知道有问题。

Iliev 提到,将某事认定为一个糟糕的决定通常会被解释为心怀敌意,也不会给讨论带来价值。他建议通过指出具体的原因来表达对某事可能不奏效的担忧,这样就有可能在早期发现可能存在的问题。

Iliev 说,软件开发人员不应害怕提出外部问题。最终,我们所有的工作都会结合在一起,因此对其他方面有一个大致的了解对于产品的整合是非常重要的。

Iliev 建议团队在启动新项目时,思考一下上次所有出错的地方,并确保不重蹈覆辙:

思考一下你的产品将如何演进,以及你将如何维护系统。保持团队之间良好的沟通,并确保所有利益相关者都了解所有复杂性和可能的陷阱。

他总结说,总会有一些事情会被忘掉或忽略,但被忘掉的事情越少,结果就越好。

InfoQ 采访了 Ilian Iliev ,讨论了关于开发人员如何防止忽略某些事情。

InfoQ:对于正在着手开发新系统或产品的团队,你有什么建议?

Ilian Iliev:在这个过程中,使用包含应该注意的事项的清单对你会有很大帮助。将其按阶段切分,作为验证某些步骤是否已完成的工具,也可以作为帮助你更好地了解项目需求的问题来源。这些清单的好处在于它们可以快速查看,并帮助你避免错过可能会在未来导致问题的步骤。

InfoQ:你能举个例子说明这样的清单是什么样子吗?

Iliev:我创建了一个 Github 项目,其中包括我在架构、实现、部署和操作、演化和维护阶段所使用的清单的草稿。

这里有两个清单摘录以供参考:

实现

  • 文档

    • 数据模型文档——不同属性代表什么

    • API 文档——端点的功能、预期的输入和输出是什么

    • 业务逻辑——为什么做出某些决定

  • 代码质量——样式指南、代码检查器、评审过程

  • 版本控制

  • 稳定性——单元测试、端到端和集成测试、负载测试

部署与运维

  • 单命令部署

  • 可用性监控——你确定你的系统在运行吗?

  • 指标报告——如何衡量系统性能

  • 错误日志记录——操作日志应易于访问和理解

  • 无噪音服务——系统不应生成不必要的噪音,例如日志、电子邮件、通知,因为它可能掩盖真正的问题

查看英文原文:

https://www.infoq.com/news/2024/02/software-developers-forgetting/

声明:本文为 InfoQ 翻译,未经许可禁止转载。

今日好文推荐

重磅!英伟达官宣全球最强AI芯片:性能提升 30 倍,并将重新设计整个底层软件堆栈

刚刚!马斯克开源 Grok:参数量近 Llama 四倍,成全球最大开源模型

我在技术面试中用 ChatGPT 作弊,没人知道

零一万物刷榜,Zilliz 呛声:面向投资人编程;李彦宏称“程序员将会消失”,周鸿祎回怼;TikTok 危在旦夕 | Q资讯

微信扫码关注该文公众号作者

来源:InfoQ

相关新闻

仅1毫克即可致命,警惕餐桌上的“索命杀手”!哥大前招生官首次揭秘:美本申请最易忽视的「致命」错误,你中招了吗?用胶水粘披萨、吃石头获取营养……谷歌的AI产品又“翻车”了,这次还很离谱!背后暴露的是AI行业的“致命”问题特朗普副总统人选万斯誓言为“被遗忘的”美国人而战以色列人质救援行动:秘密计划和致命的“火墙”致命的“忽视”:未成年人犯罪致4死,“父母连坐”被判刑15年移民美国,错过这几天的代价很“致命”!国内被遗忘的“东方威尼斯”,人少安静,超级凉爽,正适合6月小住几日!端侧 AI 新篇章!商汤科技发布「速度最快」的端侧模型冷战思维?美国官员称朝鲜未来几个月会对韩国采取“致命的军事行动”开源新动力:FreeBSD的近亲“MidnightBSD 3.2”发布;DNS 服务器“BIND 9.20”发布成年人的智慧,从刻意“遗忘”开始谷歌清华夫妇血案真相曝光:精英男士,是最应该警惕的“杀猪盘”反转!谷歌清华夫妇血案真相曝光:精英男士,是最应该警惕的“杀猪盘”反转!谷歌清华女学霸被家暴致死案真相曝光:精英男士,是最该警惕的“杀猪盘”续航 823 公里!全球「能效最高」的电车发布,但我们还买不到吉利发布「刀片式电池」,对手的「长刀电池」被吊打了 4 次清华教授带队,来场古建纸上City Walk!畅销400万册的“给孩子系列”新书发布Meta 疯狂卷!继 Llama 3 后,重磅发布MR界的“安卓”操作系统被遗忘的“台湾第一神颜”,40岁又火成了顶流……英国发布照片:“俄罗斯画的”!碾压前辈!Meta 发布“最大、性能最好”的开源 Code Llama 70B,但开发者纷纷喊穷:玩不起碾压前辈!Meta发布“最大、性能最好”的开源Code Llama 70B,但开发者纷纷喊穷:玩不起!22岁女教师被撞身亡:“老头乐”上路背后的致命危险
logo
联系我们隐私协议©2024 bendi.news
Bendi新闻
Bendi.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Bendi.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。