与 Aurynn Shaw 的问答:在 DevOpsDays 新西兰大会上分享个人 DevOps 经历

  • Rafiq Gemmail
  • 盖磊

2017 年 10 月 10 日

话题:DevOps语言 & 开发文化 & 方法

作为将于十月三日召开的DevOpsDays 新西兰大会的特约(Featured)本地演讲者,Aurynn Shaw 将以“开展版本升级”(do-release-upgrade)为题目做演讲,介绍她个人的 DevOps 历程,并客观审视 DevOps 对软件工业的影响及正在建立的未来。

Shaw 是 DevOps 技术和文化顾问公司Eiara的创始人,她对软件开发的人文方面发展做出了很大的贡献。Shaw 在 2015 年撰写的“鄙视文化”(Contempt Culture)一文中,指出了存在于一些技术中的群体性(Mob)嘲弄常常会导致这些技术的从业人员心灰意冷。该文在Hacker News得到了病毒式的传播,并引发了激烈的讨论。

InfoQ 采访了 Shaw,采访内容涉及她演讲的主题内容,以及 DevOps 的人文方面情况。

InfoQ:您是如何被 DevOps 协作模型所吸引的,并持续投身于该领域的?

Shaw:颇为讽刺的是,虽然我经常在演讲中说 DevOps 是文化相关的而非工具项目的,但却正是工具最先吸引了我的注意力。我曾被要求使用 Puppet 去配置我编写的软件环境,使用效果非常令我满意。鉴于 Puppet 关注的是如何打破团队孤岛(Silo),由此开始的进阶自然就是去探索协作的文化方面,不仅在团队内部,而且跨团队。使我保持投身于该领域的是对所有新方法的学习,这些新方法使团队可以并实现对 DevOps 实践和工具的响应。能看到人们在首次进入该领域时眼前一亮,这种感觉很棒。我知道自己已经用微不足道但成效显著的方式改进了这个世界。

InfoQ: 对您而言,DevOps 意味着什么?

Shaw:对我而言,DevOps 完全是一种在文化上和企业上的改进。如果没有对文化和企业做事方式的理解,那么使用工具将比不使用工具更糟!它们只会放大过程中已有的问题。

尽管如此,工具依然是一种很好的“假动作”(Head Fake)。它们会让一些愿景在我面前闪亮摇摆,诱惑我去开始这一历程,虽然这些工具并非真正构成我们应该用它们作为核心驱动器的理由。更进一步,DevOps 将为社区带来用户体验这一理念,这些社区长期以来一直抵制去考虑这一理念。

通过将软件开发重构为各种各样的技能和领域,而非只是编写代码,每个相关人员的体验突然变得起作用了。

InfoQ:从您自身对采用 DevOps 文化做产品开发的体验中,您看到了哪些意义深远的转变?

Shaw:在很多方式下,DevOps 是现有敏捷过程的扩展,我在产品开发中看到的更改同样反映了敏捷所带来的好处。DevOps 支持快速发布,并允许通过支持迭代的方法发现、归零并实际解决问题,以更快地将新产品带到用户面前。

DevOps 使恢复的代价更低,速度更快,这降低了失败的痛苦,因此 DevOps 实践还支持更好的客户输出。这将直接转换为一些更不易于给出“Twitter 失败鲸”(Failed Whale)这样画面的服务。

InfoQ:当前的 DevOps 实践如果继续沿这条路推进,它将如何塑造我们未来构建产品的方式?

Shaw: 我认为随着时间的推进,大家将会看到产品更看齐于用户的需求。正如我曾提及的,DevOps 是一种用户体验运动,需要开发人员聚焦于他们软件的用户。这使得我们从实现神秘并难以使用的开发人员接口和计算机程序这样的理念中,转变为构建对所有人可用的软件和应用。

InfoQ: 您发现在文化上和企业上采用 DevOps 实践的最大障碍身什么?

Shaw: 很多时候,采用 DevOps 实践的阻力和困难来自于缺乏对企业当前运行机制的理解。作为具有技术背景的人,我们的文化告诉我“最好的技术决策应该会成功”。但是这并未考虑到企业中其他人的需求。事实上,这些人甚至具有并非背景文化的需求。缺乏对此的认识,我们就难以看到企业文化需要做出的改进,或是企业文化是可以得到改进的。

我们将文化看成是所发生的事情,而非那些我们可以积极选择去影响或指引的事情。我也经常看到一些要求转向 DevOps 的管理命令,但它们却没有提供实现 DevOps 的时间或空间。不同的实践具有不同的过程,针对不同企业需求。如果人们陷入到持续的救火行动中,或是去完成一些不会产生发现、探索和重考虑的项目规划,这时人们就不会做出改进。

InfoQ: DevOps 采用者应避免反模式以不会掉回到偏向技术的孤岛(Silo)中。对于如何实现这一点,您有哪些建议?

Shaw: 这就需要发生一些激进的文化转变。很多孤岛是不完整的,因为企业就是这样的,也因为五十多年来的 IT 文化一直如此。

要避免这些陷阱,第一步是去培训开发人员和运维人员,做技术的人接受的教育是,他们的整个职业生涯是要好于其他人的。但事实并非如此。其它的技术同样具有价值。

重构孤岛是一件困难的事情,因为这不仅违背了一些根深蒂固的信仰,例如精英文化,而且因为忠言逆耳,例如“我要告诉你,你并非如你认为的那样强大”。这是妨碍孤岛重构能力的最大阻碍。

此外,看上去不少企业误解了 DevOps,将它看成是一种特定的角色,类似于一系列的人际交往技能,以及我们应该如何考虑系统的架构技能。DevOps 常会从已有的运维团队中抽出,这增加了各个部门间的技术偏差,并阻碍了开放文化和交流的形成。

InfoQ: 您所提出的“技术鄙视”文化在当前依然是一个问题吗?

Shaw: 依然是。它在上世纪七十年代甚至更早期就成为了一个问题,该问题并非一夜间就改变的。产生问题的根源在于我们构建小组的方式。在建立和增强组内人员配置时,我们使用的基本手段是人员剔除法。这样,对小组的更改就意味着我们要去重构整个小组的身份认同,该身份明显是对权力和高人一等信念的陷阱。

但应指出的是,在我的文章发表后,我看到产生了一些真正积极的推动。在此以后,一些我所参加的会议的行为准则中,已经包括了禁止对技术选择做负面评论的专门条款。我很高兴能看到这些的发生。

InfoQ: 您是否已经看到聚焦于跨功能的 DevOps 和共享所有权的文化影响了这种偏见。

Shaw:这种影响已经开始了。DevOps 对于开始看见我们行为的有毒输出起到了基础性的作用。DevOps 需要我们将其它技能也看成是有意义和重要的,这一方式意味着我们打破了旧有的偏见。

InfoQ: JSConf 2017 新西兰大会提供了一个关于软件行业的精神疲劳和倦怠的分组讨论,您也参加了这一激动人心的分组讨论。DevOps 环境是否能解决这些问题?

Shaw:一方面,DevOps 确实会让事情变得更好。DevOps 中的确存在着直接的和强大的文化压力,使得人们变得更善于交流、更加投入到工作中并更具参与能力。旧模型使得不喜欢社交的开发人员坐在黑暗中,这是非常不合时宜的,也是不正确的。来自于 DevOps 的更大的社会责任,意味着我们具有更好的支持网络,去帮助我们对待所识别的倦怠,并从中恢复。另一方面,DevOps 是技术产业的一部分。我们所具有文化上的压力是非常有毒的,例如激情,以及我们为证明自己有能力并适合于在团队中工作,而利用个人时间持续推动发展中的需求。由工作热情所驱动的加班工作,也可以完全转变为团队重新评估自身过程或工具的唯一方式。如果你正尝试去交付更好的软件,这无疑是十分令人沮丧的。

InfoQ:是否存在适用于新西兰的 DevOps 文化?(译者注:原文为 Kiwi twist to DevOps,指将新西兰的标志性特产猕猴桃作为“扭转”装饰 DevOps 这杯鸡尾酒中。)

Shaw:就对适用于新西兰的 DevOps 文化而言,我认为新西兰人有更大的社会意识、平等的推动力,并体现为一种公平的道路。这使得我们可以更为轻松地讨论 DevOps 以及企业需要做出的文化转变,因为在新西兰,已有的文化并没有那么强大的影响力。

DevOpsDayz 新西兰大会将于 10 月 3 日至 4 日期间在奥克兰市举行。大会期间,Shaw 等多位国际和本地演讲者将就文化和技术话题展开分享。

最新消息:我们已被告知,Shaw 不得不退出本次大会。

查看英文原文: Q&A with Aurynn Shaw on Sharing Her Personal DevOps Journey at DevOpsDays NZ

DevOps语言 & 开发文化 & 方法