技术行业的宏观趋势
我们每半年发布一次 技术雷达:它是所有我们认为横跨业界当下和将来的相关重要技术的快照。我们从世界各地召集了约20位最有资历的技术人来编写技术雷达,这也是一个用全球视角对比趋势和方向的绝佳机会。我们在技术雷达上总结出了主要的潮流,但这其中的奥妙足以再专门写一篇长文章。 在此,我们将关注于技术雷达中未能覆盖到的一些宏观趋势。
强大的团队和商业
开拓新业务所需要的不仅仅是好软件。
开源软件现在出现了大爆炸式的集中发布,其中有一些公司公开了那些你可能认为是专属或有竞争优势的软件。比如, 谷歌的TensorFlow深度学习工具包和 Netflix的整体产品栈。
乍一想这似乎是个糟糕的主意:竞争对手可能用这些代码一步登先,然后进行竞争。但Google真正的’秘密武器’不是软件,而是软件中的数据。对于Netflix,其云规模不(再)是竞争性优势,真正的优势在于他们的原始内容、有许可的交易和品牌力量。
这些都是著名的利用软件与技术促使企业变强变大的例子,但这不是企业成功的真正原因。我们看到很多赢家通过关注“ 产品思维”来创建优秀的体验,同时吸引和保留优秀的员工来打造他们的产品。在这种情况下,开源软件更多的被用于招聘和增加名誉,公司即便将软件免费赠送,也可以保持自己的市场领导地位。
自治团队赢得全栈控制权。
在过去的几年里,我们看到了“ 谁创建,谁运行”的敏捷团队的崛起:由同一批人来创建、发布软件,并为之做产品支持。我们是这种方式的拥护者,最起码做产品支持能够让人 成为一个更优秀的开发者。
这种趋势在逐渐扩大,我们能够看到团队的控制权越来越深入,选择PaaS,然后在此基础上部署、运行他们的(通常是基于云的)负载以及运行测试工具、监控工具和安全工具。这是一个好的趋势,但最终,企业环境中需要一些标准化。我们喜欢 Spotify的方式: 允许团队创新,然后寻求最佳解决方案——这是一个处在创新和高效之间不错的平衡。
开源是高尚的副产品。
开源软件中的创新比以往发生得都更加迅速。之前我们提到了Google和Netflix发布开源代码库,但是如果你在搜索引擎中敲入“开源”+公司名称,你很有可能找到满满 一页都在讲述该 公司对于 开源软件 贡献的 页面。公司投资于开源软件有两大原因。
第一个是获取有天赋的人:随着技术越来越强力地驱动着商业和社会,能否寻找最具天赋的人才是成功的关键要素。但是作为一个技术人员,搞清楚自己是否真的想要为某个公司工作是困难的——面试过程和实际工作之间有巨大的差异。开源软件能够帮助候选人通过查看该公司产生的代码质量,来对一个组织获得更深的理解,也能帮助公司为潜在新成员展示其技术文化。 第二个是将之作为文化声明。很多技术人员相信分享和重用的力量,为开源软件做贡献是一个公司展示与此哲学一致性的方式。
平台和生态系统提升生产力
开发者们主要通过代码来沟通。
讨论技术问题最好的方式通常是代码交流。 敏捷宣言的原则之一是 “可工作的软件”优于“理论或观点”,而开源软件就反映了这一点。
不同于试图用长篇大论解释所有技术问题的细节,开发者们通常会写一部分或全部代码,使用Github的代码社交功能来轻松讨论、接受或拒绝建议。直接通过代码来讨论,通常会带来更加高效的讨论,我们也逐渐看到这种技术在企业上下文中被采用。企业正在采用一种“内部开源”的模型,在这样模型下,源代码可以随时被分享出来并用于协作。但企业应该在面临风险时,忽略这种趋势。
每个人都应该使用PaaS,但这个选择并不是永恒不变的。
能够参与到从“数据中心里放的一堆堆服务器”到“按需索求的虚拟基础设施”的业界革命的过程一向都是激动人心的, ThoughtWorks也一直处在譬如DevOps和持续交付等运动的领导前沿。客户常常要求我们使用云策略帮助他们,而我们今天的建议通常是“你需要采用PaaS”。
很多组织已经欣然接受了IaaS并且创造了复杂的基于“ chuppet’的、领域特定的、通常由一些胶水代码和shell脚本搭起来的PaaS。尽管这些土生土长的平台已经够用了,但我们认为现有的PaaS产品更加成熟、值得一用。
PaaS可供选择的范围很大,从高度结构化的选项比如Cloud foundry和OpenShift,到无结构的以容器为中心的选项例如Mesos和Kubernets。我们不认为这些平台是万灵药。很有可能你会需要深入到IaaS底层来满足你的结果(比如配置复杂的网络)或者它们会降低你的灵活性(比如使之很难使用某个服务定位库)。但是一个PaaS,如果实现得当,能够为大多数企业级开发选购带来巨大的生产力。我们曾见证过,仅仅是利用将平台标准化、取得高效的部署、运行app,就产生了两倍生产力的爆发。 和要求20个团队自己搞明白部署策略相比,PaaS是绝对的规则变革者。
Docker,Docker,Docker。
如果缺少了Docker,那整个技术行业的概述都不是完整的。这个容器化现象已经吸引了所有人的关注力,不管是开发者、测试者还是产品运营专家。Docker首先使包装一个应用或组件到容器里变得十分容易,在这基础之上,它还可以管理容器的各个生命周期。
Docker对于开发场景十分适用,比如从在同一个笔记本上运行多个微服务,到利用Docker镜像作为规模和管理单元来跨数据中心管理大型产品负载。我们认为最有趣的是围绕着Docker的高能源生态系统。现在的确有和Docker相竞争的工具,但是Docker在人们脑海中的占有率和其投资有着重要的意义,而且很有可能,在可预见的未来它会变成架构设计、开发策略和产品PaaS平台的底层基础。
Swift生态系统发展逐渐加速。
我们编写此次雷达时,讨论了很多 Swift工具、库和框架,尽管它们不是每一个都光彩夺目。在诸如Microsoft的.Net, Ruby on Rails, Scala和Clojure等已沿用多年的平台基础上,开发者们在用Swift重新创造他们最中意的软件。这是Swift平台逐渐接近成熟的好兆头,而且它也是iOS开发的不错的选择。特别地,我们会质疑任何使用Objective-C为起点来开发新的项目。
基于“计算组织体”的创新持续加速
底层技术——IoT, VR, 和Blockchain——给提供我们重要的组件块
当我们评估新的技术趋势时,观察其下支撑的工程学和物理学是非常有指导性的。比如说,物联网,就是由于底层的工程,诸如电池、高性能低功耗芯片、无处不在的网络连接的进步而变为可能的。这些智能的、相互连接的设备会带来诸多优势,首当其冲就是在那些能显著改善效用和节能的工业和商业环境下。消费者物联网依然停留在浅显的、小把戏的程度,在接下来几年里需要解决重要的安全和隐私问题。虚拟现实在譬如Oculus Rift和HTC Vive平台上的应用越来越广泛, 超越游戏范畴的VR会随着我们逐步采用这个新组件块而变成一个增长领域。至于blockchain,我们预期在未来6~18个月中有 比较缓慢的增长,但在超分布式信任和不可改总账之下,存在着我们可以用于建立商业、经济甚至社会的新能力。
当今时代显然是科技工作的黄金时代。在接下来的六个月里,我们期待能够看到这些趋势持续带给我们生产力上的增长,使团队和商业变得更加有力,并带给我们前所未有的全新想法和模式。我们也想要听听你的想法,在评论区告诉我们你心中最重要的行业趋势,以及未来我们可能见证要发生的事情吧!
你想看到的洞见,都在这里