知名计算机图书出版公司 O'Reilly 近日根据其在线学习平台生成的数据发布了一份技术行业发展趋势的分析报告。前端
报告指出,Python 已经成为了最受欢迎的语言,而 JavaScript 的使用量只有 Python 的 20%。低代码和无代码编程将不可避免的改变编程语言的性质。程序员
另外一方面,人工智能领域和 Web 开发的增加仍在继续。有关云的使用和安全隐私也都是重点发展的趋势。web
O’Reilly 对技术行业的趋势分析是基于其平台生成的数据。O’Reilly 在线学习的使用量一直在稳步增加,考虑到 COVID-19 的爆发对技术行业带来的变化,这样的增加趋势并不使人意外。算法
对技术行业发展趋势的分析并非从哪一技术领域在短时间内迅速受到关注和流行来看的,而是经过长期的表现获得的观察。“趋势”和“潮流”不一样,潮流一般是一闪而过的,但趋势是在更长的时间范围内展示出来的,在这个过程当中甚至可能会有倒退的表现,但趋势的发展是不会中止的,表象的背后有更多参考因素。编程
从编程语言的使用状况来看,Python 的使用量是最高的,与去年相比还上升了 27%。排在第二位的是 Java,比去年降低了 3%,第三是 C++,比去年上升了 10%。第四和第五分别是 C 和 JavaScript,使用量分别上升了 12% 和 40%。segmentfault
使人惊讶的一点是,JavaScript 虽然排名前五,但使用量却远远落后于 Python 和 Java,只能达到 Python 的 20% 和 Java 的 33%。
在后面的排名中,Rust 的增加很是明显,达到了 94%。不过,从一个较小基数开始的 Rust,增加 94% 并非很难。后端
从统计数据能够看出,反而是 增加 16% 的 Go 语言已经清楚地确立了本身的地位。做为一种用于并发编程的语言,Rust极可能创建本身的“系统编程”地位:为云操做构建新的操做系统和工具。做为一种为数学计算而设计的语言 Julia 是一个有趣的未知因素。虽然在过去的一年里,它略有降低,可是咱们对它的长期机会持乐观态度。浏览器
咱们不该该将专门用于学习编程语言的标题与应用该语言或使用基于该语言的框架的标题分开使用。毕竟,许多 Java 开发人员使用 Spring,搜索“ Java”会遗漏内容,而标题中只有“ Spring”这个词。对于 JavaScript 也是如此,它包括 React、 Angular 和 Node.js 框架。在 Python 中,使用最多的库是 PyTorch 和 scikit-learn。下图显示了将 Python、 Java 和 JavaScript 的内容添加到这些语言最重要的框架中时所发生的状况。安全
结果类似是不足为奇的,可是有一些关键的区别。为 Spring 添加使用和搜索查询数据(增加7%)扭转了 Java 的明显衰退(净增加为零)。进一步来看 JavaScript,若是把最流行的框架 React、 Angular 和 Node.js 的使用加进去,那么 JavaScript 使用率就上升到了 Python 的 50% ,只比 Java 及其框架略低一点。然而,当 Python 被添加到大量使用的框架 PyTorch 和 scikit-learn 中时,它仍然是明显的领先者。服务器
咱们正在尝试创建一个更全面的语言使用图景,其中包括各类框架的使用。咱们并非伪装这些框架自己具备可比性。Spring 主要用于后端和中间件开发(尽管它包括一个 web 框架); React 和 Angular 用于前端开发; scikit-learn 和 PyTorch 是机器学习库。尽管它被普遍使用,但咱们并无将 TensorFlow 分配给任何语言; 它有 Python、 Java、 c + + 和 JavaScript 的绑定,而且不清楚哪一种语言占主导地位。此外,咱们还忽略了全部这些语言的成千上万的小型平台、框架和库。一旦它们超过了前几名,就陷入了混乱。
咱们不提倡使用 Python、 Java 或任何其余语言。尽管随着软件行业的发展,它们的使用量会有不一样程度的上升和降低,但这些顶级语言没有一种会消失。可是,在进行比较时,咱们须要注意到更多因素。
若是竞争并不重要,那么编程语言的重要趋势又是什么呢?咱们发现有几个因素在显著地改变着编程:
自去年以来,O’Reilly 在线学习的函数式编程内容使用量增长了 14% 。然而,Haskell 和 Erlang 这两种经典的函数式语言并无获得应有的重视,它们都没有大量的使用,而且都呈降低趋势(与去年同期相比降低了大约20%)。面向对象编程比函数式编程的发展更快: 自去年以来增加了 29% 。这代表,实际状况是将函数特性集成到过程语言和面向对象语言中。从 2008 年的 Python 3.0 开始,到 2014 年的 Java 8,编程语言增长了高阶函数(lambdas)和其余“函数式”特性。一些流行的语言,包括 JavaScript 和 Go,从一开始就具备函数特性。这种趋势开始于20年前,(与 C++ 标准模板库一块儿),咱们但愿这种趋势继续下去。
用于并发性的平台数据显示,其年增加率为 8% 。这不是一个很大的数字,可是不要所以错过这个趋势。Java 是第一个被普遍使用的支持并发的语言。在 90 年代中期,线程支持是一种奢望,摩尔定律有很大的发展空间。如今状况不一样了,对并发性的支持,就像对函数式编程的支持同样。Go、 Rust 和大多数其余现代语言都内置了对并发性的支持。不过,并发性一直是 Python 的弱点之一。
动态类型语言(如 Ruby 和 JavaScript)和静态类型语言(如 Java 和 Go)之间的区别能够说比函数式语言和面向对象语言之间的区别更为重要。不久前,在动态语言中添加静态类型的想法引起了一场争论。不过,如今已经没有这种争论了。将各类范式结合起来造成一个混合体也在这里占据了主导地位。Python 3.5 增长了类型提示,最近的版本增长了额外的静态类型特性。将静态类型添加到 JavaScript 中的 TypeScript 也实现了增加,年增加12%。
对于一个学习平台来讲,很难收集关于一种趋势的数据,这种趋势最大限度地减小了学习的须要,可是低代码是真实存在的,并且势必会产生做用。电子表格是低代码计算的先驱。当 VisiCalc 在 1979 年首次发布时,它使数百万人无需学习编程语言就能够进行重要的计算。全民化是许多技术领域的一个重要趋势,编程天然也是如此。
重要的不是不一样语言之间的竞争,而是语言所要得到的功能,以及为何具备这种特性。鉴于咱们彷佛已经走到了摩尔定律的尽头,并发性将成为将来编程的核心。咱们不能只是获得更快的处理器。咱们将在很长一段时间内在云中使用微服务和无服务器/功能即服务——这些都是固有的并发系统。函数式编程并不能解决并发性的问题,可是不变性的原则确定有助于避免陷阱。随着软件项目不可避免地变得更大和更复杂,语言经过混合函数特性来扩展自身是很是有意义的。咱们须要正在考虑如何一块儿使用功能和面向对象功能的程序员。在构建企业级并发软件时,哪些实践和模式有意义?
低代码和无代码编程将不可避免地改变编程和编程语言的性质:
对于让伟大的下层人士进入程序员的领域,能够预见到会有强烈的反对声音。忽略它。低代码是民主化运动的一部分,将计算的能力交到更多人的手中,这几乎老是一件好事。意识到这种变化意味着什么的程序员不会被非程序员赶出工做岗位。他们会变得更有效率,而且写出别人会用到的工具。
不管你是一个技术领导者仍是一个新的程序员,请注意这些缓慢的长期趋势。他们将改变整个行业的面貌。
在过去的十年中,IT 发生了根本性的变化。关于运营文化(一般称为 DevOps)、持续集成和部署(CI/CD)以及站点可靠度(SRE)),已经有了不少讨论。云计算已经取代了数据中心、托管设施和内部机房。容器容许开发人员和运营部门之间进行更紧密的集成,而且在标准化部署方面作了不少工做。
没有 NoOps 这种东西,像功能即服务这样的技术(又名 FaaS,又名 serverless,又名 AWS Lambda)只是改变了它的本质。管理一个给定规模的基础架构所需的人数已经减小,可是咱们正在建设的基础架构已经扩大,汇集数以万计的节点来训练或部署复杂的 AI 应用程序很容易。即便这些机器都在亚马逊巨大的数据中心,而且使用高度自动化的工具进行批量管理,运营人员仍然须要保持系统平稳运行,监控,故障排除,并确保不会为不须要的资源付费。无服务器和其余云技术容许同一个操做团队管理更大的基础架构,它们不会使运营消失。
过去一年中,以 DevOps 为标题的内容的使用量降低了 17%,而 SRE(包括“网站可靠度”)上升了 37% ,“operations”一词上升了 25% 。虽然 SRE 和 DevOps 是大相径庭的概念,但对于许多客户来讲,SRE 是谷歌规模的 DevOps ——谁不想要这样的增加呢?SRE 和 DevOps 都强调类似的实践: 版本控制(GitHub 增加了 62% ,Git 增加了 48%)、测试(使用率很高,但没有逐年增加)、持续部署(减小了 20%)、监视(增长了 9%)和可观察性(增长了 128%)。Terraform 是 HashiCorp 用于自动化云基础设施配置的开源工具,也显示出强劲的增加(53%)。
有趣的是,从数据来看,Docker 几乎没有变化(每一年降低5%) ,可是关于容器的内容使用率却飙升了 99% 。因此,容器化显然是一件大事。Docker 自己可能已经停滞不前了,可是 Kubernetes 做为容器编排工具的主导地位使容器处于中心地位。Docker 是使能技术,可是 Kubernetes 使得大规模部署集装箱成为可能。
Kubernetes 自己就是另外一个超级明星,一年增加了 47% ,同时也是这个群体中使用率最高的(也是最多的搜索查询)。Kubernetes 不只仅是一个编排工具,它仍是云的操做系统(或者,正如 Kelsey Hightower 所说,“ Kubernetes 将是分布式系统中的 Linux”)。可是数据并无显示咱们与认为 Kubernetes 太“复杂”的人们的对话次数。咱们看到三种可能的解决方案:
1.一个“简化”版本的 Kubernetes 虽然不那么灵活,可是却在不少复杂性之间进行权衡。K3s 是朝这个方向迈出的一个可能的步骤。问题是,这样作的代价是什么?这是我对 Pareto principle 的见解,也被称为 80/20 法则。给定任何系统(好比 Kubernetes),一般能够经过保留最普遍使用的 80% 的功能并削减其余 20% 的功能来构建更简单的东西。而且某些应用程序将适合保留的80%的功能。可是大多数应用程序将至少须要牺牲一些功能以简化系统。
2.一种全新的方法,还没有出现的某些工具,目前咱们还不知道该工具是什么。
3.来自云供应商的集成解决方案(例如,微软的开源 Dapr 分布式运行时)。不是那些提供 Kubernetes 服务的云供应商。若是云供应商将 Kubernetes 的功能集成到他们的堆栈中,使得这些功能消失在某种管理控制台中会怎么样?而后问题就变成了,你失去了哪些功能,是否须要它们?
围绕着 Kubernetes (Istio、 Helm 和其余)的丰富的工具生态系统显示了它的价值。可是咱们接下来该怎么办呢?即便 Kubernetes 是管理运行在云中的现代应用程序的复杂性的正确工具,对更简单解决方案的追求最终将致使更复杂的需求,它们足够吗?
可观察性在过去一年中增加最快,达到了 128%,而监测只增加了9% 。虽然可观察性比监测能力更丰富、更强大。但这种转变在很大程度上只是表面上的。“可观察性”有可能成为监测的新名称。若是你认为可观察性仅仅是一个更流行的监测术语,那就失去了它的价值。运行在云中的复杂系统须要真正的可观察性才能管理。
基础设施就是代码,咱们已经看到了不少自动化配置的工具。可是 Chef 和 Puppet,均大幅降低(分别为 49% 和40% ),Salt 也是如此。Ansible 是这其中惟一上升的工具,上升了 34%。有两种趋势形成了这种状况,Ansible 彷佛取代了 Chef 和 Puppet,这多是由于 Ansible 是多语言的,而 Chef 和 Puppet 与 Ruby 有关。第二,Docker 和 Kubernetes 改变了配置。数据显示,Chef and Puppet 在 2017 年达到顶峰,当时 Kubernetes 开始了几乎一个指数增加的爆发。容器化部署彷佛能够最大程度地减小可重复配置的问题,由于容器是一个完整的软件包。假若有一个容器,你能够屡次部署它,每次获得相同的结果。实际上,它历来没有那么简单,只是这种表面上的简单性减小了对 Chef 和 Puppet 等工具的需求。
将来,运营团队面临的最大挑战以及数据工程师面临的最大挑战将是学习如何有效部署 AI 系统。在过去的十年里,DevOps 运动产生了不少想法和技术,源代码库快速的自动化部署,不断的测试等等。它们很是有效,可是人工智能打破了它们背后的假设,并且部署常常是人工智能成功的最大障碍。
人工智能打破了这些假设,由于数据比代码更重要。咱们尚未足够的工具来对数据进行版本控制(尽管 DVC 是一个开始)。模型既不是代码也不是数据,并且咱们也没有足够的工具用于版本控制模型。频繁部署假定软件能够相对快速地构建,可是训练一个模型可能须要几天时间。有人建议模型训练不须要成为构建过程的一部分,但这确实是应用程序中最重要的部分。测试对于连续部署是相当重要的,可是人工智能系统的行为是几率性的,而不是肯定性的,因此很难说这个测试或那个测试失败了。若是测试包括公平性和偏见这样的问题,那么测试就特别困难。
虽然有一个新生的 MLOps,咱们的数据并无显示人们正在使用(或搜索)这些领域的大量内容。在许多领域中,内容还不存在。可是不管内容是否存在,用户都会搜索内容,所以少许的搜索代表咱们大多数用户还没有意识到问题所在。运营人员过于频繁地认为人工智能系统只是另外一个应用程序,但他们错了。人工智能开发人员认为,一个运营团队将可以部署他们的软件,而且可以继续进行下一个项目,可是他们也错了。随着新一代工具的出现,这些问题最终将获得解决。事实上,这些工具已经在开发之中,但咱们尚未作到这一点。
人工智能的健康发展仍在继续: 机器学习上升了 14% ,人工智能上升了 64% ; 数据科学上升了 16% ,统计学上升了 47% 。虽然人工智能和机器学习是两个大相径庭的概念,可是它们的定义却常常被混淆使用。咱们非正式地将机器学习定义为“人工智能中工做的部分”,人工智能自己更多的是面向研究的和有抱负的。若是你接受这个定义,那么关于机器学习的内容被普遍使用也就不足为奇了: 它是关于将研究带出实验室并付诸实践。咱们看到人工智能的稳步发展也不足为奇,由于这正是前沿工程师们寻找新思路,将其转化为机器学习的地方。
确实有一些指标能够说人工智能已经停滞不前了,许多项目从未投入生产。虽然去年在天然语言处理方面取得了惊人的进步,上升了 21% ,好比 OpenAI 的 GPT-3,但像赢得 Go 游戏这样的惊人结果却愈来愈少。人工智能(以及机器学习、数据、大数据和他们全部的同伴)可能正在进入低谷。但咱们认为,要把当前的研究成果应用到商业产品中,还须要多年的努力。
人工智能的将来与其说是惊人的突破和使人不寒而栗的面部或语音识别,不如说是小巧平凡的应用。人工智能在 COVID 疫苗的开发中发挥了巨大的做用。人工智能正在扮演一个重要的支持角色。它使研究人员可以浏览数以万计的研究论文和报告,设计可能有效的药物和基因,并分析数以百万计的健康记录。若是不能使这些任务自动化,那么很难组织疫情的扩散。
所以,咱们看到了人工智能和机器学习的将来:
咱们仍然没有正视人类和人工智能协做的用户界面问题。咱们不止但愿人工智能代替人类作某些工做,而是但愿人工智能可以与人协做,产生比人类或机器单独所能产生的更好的结果。
TensorFlow 是机器学习平台中的领导者,搜索次数最多,使用率稳定在 6% 。Python 的机器学习库 scikit-learn 的内容几乎一样被大量使用,年增加率为 11% 。PyTorch 位列第三,可是 PyTorch 内容的使用量同比增加了 159% 。毫无疑问,这种增加是受到 Jeremy Howard 的《面向程序员的实用深度学习》课程和基于 PyTorch的fastai 库的普及的影响。看起来 PyTorch 在研究人员中更受欢迎,而 TensorFlow 在生产中仍占主导地位。可是随着 Jeremy 的学生进入工业领域,随着研究人员转向生产岗位,咱们但愿看到 PyTorch 和 TensorFlow 之间的平衡发生转变。
Kafka 是构建数据管道的一个重要工具,它很稳定,增加率和使用率与 Spark 类似,为6%。Kafka 的“下一代”竞争对手 Pulsar 尚未出如今排名中。
在过去的一年中,用于自动化AI和机器学习开发的工具(IBM 的 AutoAI、谷歌的 Cloud AutoML、微软的 AutoML 和亚马逊的 SageMaker)受到了普遍关注。可是咱们没有看到任何迹象代表他们正在市场上取得重大进展。多是 AutoAI 相对较新,或者用户认为他们不须要搜索补充训练材料。
那么数据科学呢?这份报告《什么是数据科学》已经出版了10年。但使人惊讶的是,对于一篇 10 年前的论文来讲,该报告的浏览量比 2019 年增加了 142% 。可是工具已经发生了变化,十年前,Hadoop 是数据科学世界的中心,如今它仍然存在,可是只是一个遗留系统,自 2019 年以来降低了23% 。Spark 如今是占主导地位的数据平台,并且它确定是工具工程师们想要了解的。Spark 内容的使用大约是 Hadoop 的三倍。但即便是 Spark,自去年以来也下跌了 11% 。Ray 是新出现的,有望让构建分布式应用程序变得更加容易,可是尚未显示与 Spark(甚至 Hadoop)匹配的使用状况,可是它显示了 189% 的增加。还有一些其余的工具即将出现,好比,Dask 比 Ray 更新,而且增加了近400% 。
另外,诸如道德、公平、透明度和可解释性等主题并不会对咱们的数据形成影响。多是由于不多出版这些方面的书籍,也没有提供培训课程,但这自己就是一个问题。
自从 2 0世纪 90 年代初发明了 HTML,第一个 Web 服务器和第一个浏览器出现,Web 已经成为了各类平台。这些平台使得网络开发变得更加灵活,它们使得支持大量的设备和屏幕尺寸成为可能。它们使构建在浏览器中运行的复杂应用程序成为可能。
那么 Web 框架的世界是什么样的呢?React在内容使用方面处于领先地位,而且也显示出显着增加(同比增加34%)。尽管有传言说 Angular 正在衰落,但它是排名第二的平台,增加了10% 。而服务器端平台 Node.js 的内容使用率仅次于 Angular,增加了15% 。
更使人惊讶的是,Ruby on Rails 在经历了几年稳定的性能以后,显示出了很是强劲的增加(年增加率为77%)。一样,Django(与 Rails 出现的时间大体相同)显示了大量的使用和 63% 的增加。但这种增加并不适用于全部较老的平台。尽管近 80% 的网站仍在使用 PHP 的内容,但 PHP 的使用率相对较低,并且还在降低(降低了 8%)。虽然 jQuery 显示了18% 的健康增加,可是 jQuery 内容的使用率比咱们看到的任何其余平台都要低。
使人惊讶的是,Vue 和 Flask 表现得很弱,对于这两个平台,内容使用量只有 React 的八分之一。与 Vue 相关的含量在过去一年降低了 13% ,而 Flask 增加了 10% 。人们很容易认为 Flask 和 Vue 是“新”平台,但它们分别在 2010 年和 2014 年发布。Svelte 和 Next.js 这两个最有前途的新平台尚未产生足够的数据,多是由于尚未足够的内容可使用。一样地,WebAssembly 也没有出现。可是 WebAssembly 表明了对网络编程的从新思考,值得密切关注。也许会发生可否完全颠覆 JavaScript 在 Web 开发领域的统治地位的事,但这不会很快,由于企业用户将不肯意承担从一个老的框架(好比 PHP)转移到一个更时尚的 JavaScript 框架的成本。
HTML、CSS 和 JavaScript 等基础技术的使用率均呈现出健康增加(分别为 22% 、46% 和 40%),尽管它们落后于领先的框架。咱们已经注意到,JavaScript 是顶级编程语言之一,而现代 Web 平台若是不是 JavaScript 的典范,那就什么都不是。万维网最初的愿景是但愿全部人不须要成为一个技术极客,甚至不须要编程,只需在浏览器中点击“查看源代码”,而后从其余网站上复制喜欢的内容便可。但二十五年后,状况已再也不如此,虽然仍然能够“查看源代码”,但看到的只是大量难以理解的 JavaScript。具备讽刺意味的是,和其余技术同样,Web 开发愈来愈多地成为程序员的领域。咱们期待看到这种趋势会被新一代的平台所扭转,仍是经过网络自己的重构。
云计算正在迅速增加,这并不使人惊讶。自去年以来,云计算内容的使用量上升了 41% 。Amazon Web Services、Microsoft Azure 或 Google Cloud 的使用增加速度更快,达到了 46%。尽管大多数公司都在以某种形式使用云服务,许多公司已经将重要的业务关键应用程序和数据集转移到云计算中,但咱们还有很长的路要走。若是有一个技术趋势你须要掌握,那就是它。
领先的云供应商 AWS、 Azure 和 Google Cloud 之间的竞争中,亚马逊的增加已经停滞,目前仅为 5%。有关 Azure 内容的使用显示了 136% 的增加,比任何竞争对手都要高,而 Google Cloud 84% 的增加率并不低。随着 Azure 和 Google Cloud 的增加,亚马逊的统治地位可能会发生变化。
做为一家云计算公司,微软在重塑自身形象方面作得很是出色。在过去的十年里,微软从新思考了其业务的方方面面。如今,微软已经成为开源领域的领导者,它拥有 GitHub 和 LinkedIn。很难想象还有哪一个公司的改革如此激进。
谷歌面临着一系列不一样的问题。12 年前,这家公司能够说是经过 App Engine 实现了无服务。它开源了 Kubernetes,而且在人工智能领域的领先地位上下了很大的赌注,领先的人工智能平台 TensorFlow 高度优化,能够在谷歌的硬件上运行。那么,为何它排在第三位呢?谷歌的问题不在于其提供前沿技术的能力,而在于其接触客户的能力。Google Cloud 首席执行官 Thomas Kurian 正试图解决这个问题。
虽然咱们的数据显示,云计算内容的使用率增加很是强劲,但对于“多云”和“混合云”等术语,以及谷歌的 Anthos 或微软的 Azure Arc 等特定的混合云产品,并无显示出显著的使用状况。这些都是新产品,不多有内容存在,因此使用率低并不奇怪。可是在这种状况下,特定云技术的使用并非那么重要,更重要的是,全部云平台的使用都在增加,尤为是与任何供应商无关的内容。咱们也看到咱们的企业客户正在使用跨越全部云供应商的内容,很难找到任何人正在寻找单一的供应商。
不久前,咱们还对混合云和多云持怀疑态度。咱们很容易认为这些概念是从排名第2、第3、第四或第五的供应商头脑中产生的空想。若是你不能从亚马逊赢得客户,至少你能够从他们的业务中分得一杯羹。云计算本质上是混合的,工程师没法为某些项目得到资源,所以他们建立了一个 AWS 账户,帐单记在公司的信用卡上。而后,另外一个团队中的某我的遇到了一样的问题,可是使用了Azure。接下来是一次收购,这家新公司已经在 Google Cloud 上创建了本身的基础架构。并且内部存在数 PB 的数据,并且这些数据受到监管要求的限制,很难移动。不少人没有意识到须要一个连贯的云战略以前,一些公司早就有了混合云。等到高管们制定整体规划的时候,市场营销、销售和产品开发领域已经出现了一些关键任务的应用程序。
全部的云供应商,包括亚马逊都被一种战略所吸引,这种战略不是将客户锁定在特定的云中,而是促进混合云的管理,全部这些供应商都提供支持混合云开发的工具。他们知道对混合云的支持是采用云的关键。并且,若是存在任何锁定,那将是围绕管理的。正如 IBM 的 Rob Thomas 常常说的,“云是一种功能,而不是一个位置。”
正如预期的那样,咱们看到人们对微型服务兴趣浓厚,同比增加 10%,虽然不算大,但仍然健康。无服务也显示了 10% 的增加,但使用率较低。虽然它“感受上”已经停滞不前,但数据代表,它正在与微服务并行增加。
安全问题一直很是重要,防护者必须正确处理成千上万的东西,而攻击者只需发现一个漏洞。并且,这个错误多是由粗心的用户而不是 IT 人员犯下的。最重要的是,公司每每在安全方面投资不足。
然而,过去 10 年发生了不少黑客入侵事件,牵扯数十亿美圆的资金,并致使不少高管辞职和解雇。对于企业是否吸收了教训,这些数据并无给出一个清晰的解释。虽然咱们避免讨论绝对用法,可是有关安全性的内容的使用率很是高,比除了主要的编程语言如 Java 和 Python 以外,其它任何主题的使用率都高。也许更好的比较是将安全性与通用主题(如编程或云)进行比较。若是采用这种方法,编程的使用量将比安全性大,而安全性仅落后于云。所以,有关安全性的内容的使用率确实很高,与去年同期相比增加了35%。
人们广泛使用的是认证资源,CISSP 内容和培训占通常安全内容的 66% ,自 2019 年以来略有降低。关于 CompTIA Security + 认证的内容使用率约为通常安全性的 33% ,增加率为 58% 。
人们对黑客行为的兴趣至关浓厚,增加了 16% 。有趣的是,道德黑客行为(黑客行为的一个子集)的使用率只有黑客行为的一半,而且增加了 33% 。因此咱们在“好人”和“坏人”之间势均力敌,可是“好人”的增加速度更快。渗透测试被认为是一种道德黑客,数据显示了 14% 的降低,这种转变可能只是反映了哪一个术语更受欢迎。
除了这些类别以外,咱们还看到了长尾效应,网络钓鱼和勒索软件等特定主题的内容只有极少的使用,尽管勒索软件的使用量同比增加了 155%。这种增加无疑反映了过去一年勒索软件攻击的频率和严重程度。“零信任”(zero trust)的内容也增长了 130% ,这是一种用于创建可防护网络的技术。不过,这种技术的使用量仍然很小。
使人失望的是,咱们几乎看不到关于隐私的内容,包括关于 GDPR 等具体监管要求的内容。咱们没有看到大量的使用,也没有看到增加,甚至没有看到大量的搜索查询。
咱们已经浏览了很大一部分技术领域。各领域间的竞争以及背后更深层次的故事。趋势不只仅是最新的流行,它们也是长期的过程。容器化能够追溯到 1979 年的 Unix 版本7。Sun Microsystems 在 20 世纪 90 年代用它的工做站和 Sun Ray 终端发明了云计算。咱们可能会谈论“互联网时代”,但最重要的趋势跨越了几十年,而不是几个月或几年,并且每每涉及从新发明那些有用但被遗忘的技术,或者那些在时代以前就已经出现的技术。
考虑到这一点,让咱们退后几步,思考一下全局。咱们如何利用人工智能应用所需的计算能力?咱们已经讨论并发性几十年了,但它只是一种对于大型数字处理任务很是重要的外来能力。咱们讨论系统管理已经有几十年了,在此期间,IT 人员与计算机管理人员的比例已经从多对一变成了一对几千(对云中的基础架构进行监控)。做为这一发展的一部分,自动化也从一种选择变成了一种必要。
咱们都据说过“每一个人都应该学会编程。”这句话多是正确的,也可能不是。这并不意味着每一个人都应该是一个专业的程序员,而是每一个人都应该可以有效地使用计算机,这就须要编程。无代码和低代码产品正在进入市场,容许用户构建从业务应用程序到人工智能原型的一切。一样,这种趋势能够追溯到 20 世纪 50 年代末,第一种现代编程语言使编程变得更加容易。低代码 AI 和复杂的 JavaScript 网络平台对将来可能带来的见解相互矛盾。
最后,最重要的趋势可能尚未出如今这些数据中。就监管和立法而言,技术在很大程度上是免费的。像医疗保健和金融这样的行业受到了严格的监管,可是社交媒体、大部分机器学习,甚至大部分在线商务都只受到了轻微的监管。免费的时代即将结束。
这个行业发展太快,破坏了太多东西。在这种状况下,应该更加关注隐私和相关话题。如今,咱们面临的问题很简单,那就是该用技术创建什么样的将来。