朱嘉明荐文 | 训练您团队的代码思维 Train Your People To Think in Code

2019-09-08 朱嘉明荐文 | 训练您团队的代码思维 Train Your People To Think in Code已关闭评论

朱嘉明荐文 | 训练您团队的代码思维 Train Your People To Think in Code

维特根斯坦(1889一1951)

Ludwig Josef Johann Wittgenstein

大卫·沃勒的文章《训练您团队的代码思维》,刊登于麻省理工学院商学院学刊《麻省理工学院斯隆管理评论》,文字虽然不长,但是,很可能是近来最值得阅读和思考的文章。该文提出了“To Think in Code”的观念,以及如何和为什么要将“分析性思维”和“算法思维”相结合的时代性的和根本性的挑战,不懂和不会"算法思维"将是日益残缺不全的思维,是丧失基于算法逻辑的思维。进一步思考,"算法思维"将逐渐侵蚀"分析性思维"。现在想一想,维特根斯坦是尝试将两类思维相结合的先驱,他的"数学哲学"的历史价值是被低估的。故本院将此文译成中文,并以公众号的方式发表,与大家共享,并期望得以传播,引发更深入的思考与探讨。

 

——朱嘉明 2019年9月8日

训练您团队的代码思维

文章来源:MIT SLoan Management Review, SUMMER 2019 • VOL.60 • No.4 , Page 14-16

原文链接:https://sloanreview.mit.edu/article/train-your-people-to-think-in-code/

作者:大卫·沃勒 | 奥纬咨询数字实践(Oliver Wyman Digital Practice)合伙人,美洲数据科学和工程联席主管。他领导的项目利用先进的统计和机器学习方法来解决现代业务核心的具有挑战性的分析问题。

译者:袁洪哲 | 数字资产研究院研究员

朱嘉明荐文 | 训练您团队的代码思维 Train Your People To Think in Code

图片来源:MIT SLoan Management Review

大多数公司仍然将进行分析等同于在电子表格(spreadsheet)中编写公式。但自电子表格发明以来,业务格局发生了巨大变化。如今,组织必须从数百万个人客户的角度进行思考,而不仅仅是少数细分市场,并以可重复使用的解决方案来解决问题,以避免从头开始重新设计流程。他们希望从机器学习和人工智能的最新进展中获益,而不是简单地将回归方程抛到他们面临的任何分析类问题上。

简而言之,公司需要重新训练编写代码,而不是公式,因为未来的工作不仅需要分析性思维,还需要算法思维。

这种观点的改变意义重大。大多数公司可能认为代码仅限于IT 部门的模糊角落,或者作为特定数据科学家群体的专属领域。但是,设法使代码成为在其业务中传播分析的自然语言的组织通常比同行更快地成长和创新。

采用以代码为中心的方法将从三个方面使组织受益:

首先,代码思维允许公司将数据与数据分析完全分开,从而使团队能够独立于一项来改进另一项。当数据和分析完全分离时,不同的团队可以专注于独立改进每个方面,从而加快进度。

其次,代码更易于共享和重用——整个开源软件运动都依赖于这个想法。软件开发人员花费数年时间构建工具,使其工作易于跟踪、修改和共享。

最后,代码对简单和复杂的分析都更为适合。机器学习和AI 技术的突破作为代码实现,通过克隆研究人员正在使用的代码,个人可以快速、免费地获得最先进的分析技术。那么,管理者必须做些什么来将现有员工队伍从公式转移到代码?

 

拆除“巴别塔”

沟通是协作的先决条件。语言障碍为有效分享思想制造了一些最强的障碍。这不仅适用于文本交换和口语对话,对代码也是如此。但是,在几种编程语言中,必须从心理上重新投射想法,需要额外的专业知识,因为它在认知上可能要求很高。

公司应该最多选择两种(编程语言),但理想情况下,一种分析编程语言(analytical programming language)作为公司范围的标准——每个人都可以“说”。

需要明确的是:没有一种选择适合每种情况,理性的人可以在标准选择上意见不一,因此团队应该为熟悉的管理团队改变的挑战做好准备。公司可以通过同意每隔几年重新审核标准来安抚反对者,并保持更新。

 

创建共享代码存储库

一旦人们用一种共同的语言转录了想法,公司就应该从开源社区中得到启示,并建立自己的共享代码存储库(repository)和知识库(knowledge base)。这使得人们能够快速轻松地分享他们的编码工作,并避免不断重新发明轮子。

与任何中央系统一样,公司需要仔细考虑安全性和权限,并且应根据自己的保密或知识产权保护标准更改访问凭据(access credential)。但是,创造一个丰富的空间,让创意从广泛的贡献中获益,是进步的强大引擎,而且公司可以受益匪浅。

使用共享代码存储库,组织内的多个组可以使用相同的代码文件来解决相似的问题。

例如,银行的营销团队可能想知道正在考虑抵押贷款再融资的客户,以便他们可以针对这些客户定位某些产品;财务团队可能还需要有关可能再融资的数据,因为这些数据可被用以制订预算和账单。在这两种情况下,问题的提法都是一样的——有多少人,以及哪些人,可能再融资?那么,为什么不使用相同的代码来得到答案呢?

 

只需选择一个项目

快速推进的一个好方法是选择一个项目,围绕它创建一个代码存储库,并邀请广大受众贡献代码。

像GitHub 和Bitbucket 这样的代码共享平台使这一点变得简单。从广泛适用且无争议的项目开始非常有用,例如:时间序列预测、生成客户细分和计算价格弹性等。

一些公司已经超越了内部共享存储库,并公开分享了他们的成果。谷歌和微软等领先的科技公司已经这样做了一段时间了。但是现在,其他行业的公司开始看到采用这一战略的好处。例如,一家电信运营商将其共享代码存储库作为开源社区的一部分,这使得该公司能够利用他人的帮助,甚至在公司外部,并有可能为电信行业设置标准平台。

 

使代码成为正常业务的一部分

希望从高级分析中产生最大价值的公司面临着最后一项艰巨的挑战:他们必须使基于代码的建模成为规则,而不是例外。

它必须成为商务常态,像将电子表格附加到电子邮件中一样看上去无足轻重,自然而然。使这一挑战令人生畏的是,它不仅需要改变观点,而且需要改变习惯。但有一些务实的战略用以加速这种转变。

 

培训的价值

使这种变化快速而顺利发生的一个策略是保护和为员工提供培训的时间。如今,公司和个人都可以选择多种课程,从训练营到大规模开放式在线课程(MOOC),再到定制的现场指导。

有了专注,成为称职的编码员不是不可逾越的任务,管理者不应假设他们的员工不能胜任。

 

无需恐惧

在这个新世界里有许多指南。流行的答案,无论是通过搜索引擎、培训资源或同行教师,几乎总是优雅和可复用。有时,这些答案将包含指向大量开源代码存储库的链接,其中包含任何相关问题的解决方案。

朱嘉明荐文 | 训练您团队的代码思维 Train Your People To Think in Code

对于电子表格来说,情况通常并非如此,因为数据和分析的交织使得很难抽象出问题可复用和可优化的解决方案——尤其是当该解决方案需要的不仅仅是一个步骤。