为什么你对于DevOps无从下手?长话短说,我总结为三个原因:
- 对软件交付这个领域的认知存在错误;
- 没有掌握软件交付的原则;
- 目前为止,行业里对DevOps没有一个统一的定义。
接下来,我将分成三篇讲。本次讲原因一。
对软件交付这个领域的认知存在错误
著名文学理论家乔纳森·卡勒为比喻下的定义:比喻是认知的一种基本方式,通过把一种事物看成另一种事物而认识了它。
也不知道从什么时候,人们开始拿盖房子来比喻软件交付。不过,我们可以想象一下,在那个没有互联网的年代,你拿着操作系统和编译器的纸质手册,坐在方块电脑前,在键盘上一个个字母地“堆砌”着你的软件。这个过程的确很像拿一块块砖盖房子。所以,拿盖房子来比喻软件交付,在那个年代,也是可以理解的。
然而,我想说,这样的比喻已经过时了,而且严重影响着软件行业的发展。我的老师称之为:建筑行业害死软件行业。
为什么呢?因为比喻是认知的一种基本方式,通过把一种事物看成另一种事物而认识它。所以,拿盖房子比喻软件交付,我们的思维方式就会倾向于像交付房子一样交付软件。
在这样的思维方式下,管理者更像是时刻盯着工期的监工,开发者不过是可以随意更换的搬砖工。管理者会倾向于使用功能数来衡量一个软件的好坏。软件的功能数就像房子的层数,层越多就可以卖更多的钱。
那应该拿什么来比喻软件交付更合适呢?
在这里,我第一次正式的公开自己的理解,我觉得:应该将软件交付的过程比喻成拍连续剧的过程。
以下是两种比喻在不同维度上的比较:
经过这样的对比,该使用何种比喻更合适,已经不言自明了。如果你实在无法理解,你可以回想一下微信的发展过程。
微信从项目启动到现在已经10年。它不是10年前开始计划,然后开发10年后上架,最后安装到你的手机上。而是10年间,你手机上的微信不定期地更新版本,才变成今天的样子。你觉得这个过程是像盖房子,还是拍连续剧?
小结
本次分享对于DevOps你为什么无从下手的第一个原因。要想知道如何下手,改变认知是第一步。这也是我们接下来的视频教程的基础。
我们认为使用盖房子比喻软件交付是一种错误的比喻。这个错误的比喻导致我们对软件交付过程的认知错误。它在各个层面影响着我们的软件交付过程。
我们应该使用拍连续剧来比喻软件交付。
当然,这只是我的一家之言,希望能与大家一起探讨。
下一篇将要讲软件交付的原则。