Stack Overflow开发者调查发布:AI将如何协助DevOps
Stack Overflow 发布了开创性的2023年度开发人员调查报告 [1]。报告对 90,000 多名开发人员进行了调查,全面展示了当前软件开发人员的体验。接下来,本文将重点介绍几项重要发现,即重要编程语言和工具偏好、人工智能在开发工作流程中的应用以及这些趋势对 DevOps 领域可能意味着什么。
2023 年开发者技术偏好
调查结果显示,越来越多的开发人员开始在线学习代码。使用在线资源学习代码的比例从 2022 年的 70% 上升到 2023 年的 80%。尽管许多开发人员(47%)仍然拥有计算机科学学士学位或同等学历,但这些趋势凸显了向其他知识解决方案发展的趋势,尤其是对于年轻的程序员而言,热门在线资源包括技术文档、博客、论坛和操作视频。
JavaScript 仍居榜首——它已连续 11 年成为最常用的编程语言。值得强调的是,Python 已取代 SQL 成为第三大编程语言。"自 2015 年以来,SQL 一直稳居前三位(JavaScript、HTML/CSS、SQL),因此它跌落到 Python 下面是件大事,"Liuzzo 说。“根据我们公共网站上的提问数量,我们已经看到 Python 的受欢迎程度在上升,所以我们一直在期待一些变化。”
过去几年,TypeScript 和 Bash/Shell 的使用率也在持续增长。这两种语言涉及其他流行编程语言的功能,因此它们在程序员中非常受欢迎。
PostgreSQL 也超过 MySQL 成为最常用的数据库类型。在网络框架方面,Node.js 和 React.js 是最主要的。其他如 jQuery 和 ASP.NET 框架,则有过时趋势,可能是因为它们是较老的网络框架。
聚焦人工智能
新人工智能创新的爆发,例如大型语言模型(LLM)和聊天驱动的生成人工智能工具,对今年的技术发现产生了重大影响。事实上,83% 的受访者在过去一年中使用过 ChatGPT。其次是 Bing AI(20.6%)、WolframAlpha(13.36%)和 Google Bard AI(9.86%)。GitHub Copilot 被评为最常用的人工智能开发工具。
在学习编码的人群中,使用人工智能工具的人数明显激增,他们通常关注到的是加快学习速度、提高生产力和效率等好处。将其与他们目前如何使用 AI 工具进行调试和获取帮助 (68%) 以及了解代码库 (50%) 相结合,报告发现其中的共同点是 AI 工具能促进学习。
尽管如此,人们还是对人工智能的准确性持怀疑态度,只有 13% 的人认为提高编码准确性是使用此类工具的好处。虽然这些痛点可能会随着 LLM 的发展而得到解决,但就目前而言,仍需要人类的判断来捕捉错误和避免误用。
这些趋势可能对 DevOps 产生哪些影响
那么对于 DevOps 领域的从业人员,即 DevOps 工具提供商和平台工程师来说,有哪些启示呢?新的工具偏好和习惯将继续以新的方式在 DevOps 领域发展。下面是一些可参考的示例:
-
更多基于 Markdown 的协作。Markdown 是最热门的异步工具,今年的受欢迎程度有增无减。新程序员们正在将 Markdown、GitHub Discussions 和 Notion 融合到他们的异步工具中。Markdown 的各种版本已被用于注释、合并请求、问题等用途。
-
继续依赖 Docker。Docker 仍然是使用率最高的工具,其次是 npm 和 Pip。尽管托管容器服务兴起,但 Docker 仍是打包和发布软件的流行方式。
-
三大巨头格局依旧。亚马逊网络服务(AWS)仍然是使用率最高的云平台,占 48.62%。紧随其后的是微软 Azure(26.03%)和谷歌云(23.86%)。不过值得关注的是,较新的开发人员希望更多地使用 Hetzner 和 Vercel。
-
在线学习对知识共享至关重要。鉴于新程序员人数的稳步增长,以及他们对在线资源而非传统学校教育的依赖,DevOps 和开源社区应通过使工具文档和教程等知识易于获取,努力增强其在线影响力。
最后,生成式人工智能将在许多领域增强编程能力,并且已经被嵌入到许多环境中。正如人工智能可用于代码生成和调试一样,LLM 也可能会协助 DevOps 方面的工作,帮助实现 CI/CD 流水线自动化、优化基础设施、检测异常情况,并提供更多聊天界面来易于启动这些功能。
“人工智能工具正在增强学习能力,并使学习新兴技术变得更加容易,”Liuzzo说:“生成式人工智能将使编码的门槛降低,让开发人员社区成数倍增长。越来越多的开发人员将使用这些工具,并在学习过程中验证和确认输出结果,从而将开发人员社区的力量和人工智能的技术力量结合在一起。”
原文链接:
https://devops.com/key-insights-from-the-stack-overflow-2023-developer-survey/
参考链接:
[1] https://survey.stackoverflow.co/2023/#overview
相关文章:
Stack Overflow开发者调查发布:AI将如何协助DevOps
Stack Overflow 发布了开创性的2023年度开发人员调查报告 [1]。报告对 90,000 多名开发人员进行了调查,全面展示了当前软件开发人员的体验。接下来,本文将重点介绍几项重要发现,即重要编程语言和工具偏好、人工智能在开发工作流程中的应用以及…...
去掉鼠标系列之二:Sublime Text快捷键使用指南
系列之二,Sublime Text。 Sublime Text 是我们常用的文本工具,常常要沉浸如其中使用,而不希望被鼠标打扰,所以也记录一下。 学会下面这些快捷键,基本上就不需要移动鼠标啦。 1,CtrlK,CtrlV …...
docker-compose安装node-exporter, prometheus, grafana
基础 exporter提供监控数据 prometheus拉取监控数据 grafana可视化监控数据 准备 全部操作在/root/mypromethus中执行 node_exporter docker-compose -f node-exporter.yaml up -d # web访问,查看node_exporter采集到的数据 http://192.168.1.102:9101/metrics…...

企业架构LNMP学习笔记10
1、Nginx版本,在实际的业务场景中,需要使用软件新版本的功能、特性。就需要对原有软件进行升级或重装系统。 Nginx的版本需要升级迭代。那么如何进行升级呢?线上服务器如何升级,我们选择稳定版本。 从nginx的1.14版本升级到ngin…...
[国产MCU]-W801开发实例-I2C控制器
I2C控制器 文章目录 I2C控制器1、I2C控制器介绍2、I2C驱动API2、I2C简单使用示例1、I2C控制器介绍 I2C总线是一种简单、双向二线同步串口总线。I2C总线设备之间通信只需两根线即可完成设备之间的数据传输。 I2C总线设备分为主机和从机,这取决于数据传输方向。I2C总线上的主机…...

植物根系基因组与数据分析
1.背景 这段内容主要是关于植物对干旱胁迫的反应,并介绍了生活在植物体内外以及根际的真菌和细菌的作用。然而,目前对这些真菌和细菌的稳定性了解甚少。作者通过调查微生物群落组成和微生物相关性的方法,对农业系统中真菌和细菌对干旱的抗性…...

2.3 数据模型
思维导图: 前言: 我的理解: 这段话介绍了概念模型和数据模型之间的关系,以及数据模型的定义和重要性。具体解读如下: 1. **概念模型**:它是一种描述现实世界数据关系的抽象模型,不依赖于任何…...

RT-Thread 中断管理学习(一)
中断管理 什么是中断?简单的解释就是系统正在处理某一个正常事件,忽然被另一个需要马上处理的紧急事件打断,系统转而处理这个紧急事件,待处理完毕,再恢复运行刚才被打断的事件。生活中,我们经常会遇到这样…...

学习周报9.3
文章目录 前言文献阅读一摘要挑战基于时间序列的 GAN 分类 文献阅读二摘要介绍提出的模型:时间序列GAN (TimeGAN) 代码学习总结 前言 本周阅读两篇文献,文献一是一篇时序生成方面的综述,主要了解基于时间序列 的GAN主要分类以及时间序列GAN方面面临的一…...
win10 查看指定进程名的端口号
在 Windows 10 的任务管理器中也可以查看端口号。请按下面的步骤操作: 打开任务管理器,可以通过按下快捷键 CtrlShiftEsc 或者右键点击任务栏后选择任务管理器来打开。点击“性能”选项卡,然后点击左侧的“打开资源监视器”。在资源监视器中…...

函数的递归调用
1、什么是函数的递归调用? 其实说白了就是在函数的内部再调用函数自己本身 function fun(){fun() } 2、用递归解决问题的条件 (1)一个问题是可以分解成子问题,子问题的解决办法与最原始的问题解决方法相同 (2&…...

李宏毅机器学习笔记:RNN循环神经网络
RNN 一、RNN1、场景引入2、如何将一个单词表示成一个向量3种典型的RNN网络结构 二、LSTMLSTM和普通NN、RNN区别 三、 RNN的训练RNN与auto encoder和decoder 四、RNN和结构学习的区别 一、RNN 1、场景引入 例如情景补充的情况,根据词汇预测该词汇所属的类别。这个时…...

基于JavaWeb和mysql实现校园订餐前后台管理系统(源码+数据库)
一、项目简介 本项目是一套基于JavaWeb和mysql实现网上书城前后端管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含:项目源码、项目文档、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都…...

CNN 01(CNN简介)
一、卷积神经网络的发展 convolutional neural network 在计算机视觉领域,通常要做的就是指用机器程序替代人眼对目标图像进行识别等。那么神经网络也好还是卷积神经网络其实都是上个世纪就有的算法,只是近些年来电脑的计算能力已非当年的那种计算水平…...
AI大模型的使用-让AI帮你写单元测试
1.体验多步提示语 我们本节就让AI帮我们写一个单元测试,全程用AI给我们答案,首先单元测试前需要有代码,那么我们让AI给我们生成一个代码,要求如下: 用Python写一个函数,进行时间格式化输出,比…...

vscode调教配置:快捷修复和格式化代码
配置vscode快捷键,让你像使用idea一样使用vscode,我们最常用的两个功能就是格式化代码和快捷修复,所以这里修改一下快捷修复和格式化代码的快捷键。 在设置中,找到快捷键配置: 然后搜索:快捷修复 在快捷键…...
pear admin 后端启动
pear admin 后端启动 一、项目结构二、启动 一、项目结构 应用结构: Pear Admin Flask ├─applications # 应用 │ ├─rights # │ ├─system # 静态资源文件 │ ├─users # │ └─views # 视图部分 ├─common # 公共模块 ├─models # 数据模…...

C++:输出系统时间(及报错处理)
#include <iostream> #include <ctime>using namespace std;int main() {// 基于当前系统的当前日期/时间time_t now time(0);cout << "1970 到目前经过秒数:" << now << endl;tm* ltm localtime(&now);// 输出 tm 结构的各个组…...

使用Windbg动态调试排查软件启动不了的问题
目录 1、问题说明 2、初步分析 3、使用Windbg启动程序进行动态调试 4、进一步分析 5、何时使用Windbg静态分析?何时使用Windbg进行动态调试? 6、最后 VC常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...&…...

Swift 技术 视频播放器滚动条(源码)
一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络࿰…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...
go 里面的指针
指针 在 Go 中,指针(pointer)是一个变量的内存地址,就像 C 语言那样: a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10,通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...
LLaMA-Factory 微调 Qwen2-VL 进行人脸情感识别(二)
在上一篇文章中,我们详细介绍了如何使用LLaMA-Factory框架对Qwen2-VL大模型进行微调,以实现人脸情感识别的功能。本篇文章将聚焦于微调完成后,如何调用这个模型进行人脸情感识别的具体代码实现,包括详细的步骤和注释。 模型调用步骤 环境准备:确保安装了必要的Python库。…...
Python学习(8) ----- Python的类与对象
Python 中的类(Class)与对象(Object)是面向对象编程(OOP)的核心。我们可以通过“类是模板,对象是实例”来理解它们的关系。 🧱 一句话理解: 类就像“图纸”,对…...