AI软件开发工具会抢走你的工作吗?

Apr 17, 2024 by Zhang in  Blog

Devin是一款全新的人工智能工具,由Cognition AI设计,可以作为完全自主的软件开发人员工作。

Cognition AI是这样评价Devin的:“Devin是一个不知疲倦、技术娴熟的团队成员,既愿意与你一起构建,也愿意独立完成任务供你审查。”但到目前为止,它的创造者并没有声称它可以构建完美的软件。

那么AI开发软件将如何影响人类软件开发人员?Devin和其他软件开发人工智能是否会自动完成目前由开发人员完成的任务,甚至完全取代他们?或者它会创造新的机会,需要人类和人工智能之间的合作?

构建原创软件需要做什么?

原创软件通常是许多不同人的工作和投入的结果,以下是典型团队的细分:

  • 用户和利益相关者:这些人将使用该软件,并可能为其创建投资。
  • 程序员:他们是写代码的人。
  • 项目经理和产品负责人:这些人管理软件的方向。他们使用敏捷技术使程序员与涉众和用户创建的规范保持一致。
  • 测试人员和质量保证人员:这些人确保代码正确运行并符合原始规范。

为什么人工智能很难构建软件?

人工智能擅长处理大量数据,但在依赖于人类经验和用户细微差别的软件开发的无形方面可能会遇到困难。换句话说,人工智能面临着软件开发的两个关键要素的挑战:从人们那里收集信息,以及利用背景知识得出关于用户需求的常识。

从其他人那里收集信息

软件开发人员必须善于发现潜在的问题,并向涉众和中小企业提出具体的问题。大多数定制软件都是为了帮助具有特定技能或专业的人而构建的,在创建过程中总是依赖于这些用户的特定需求和专业知识。这些人被称为主题专家(sme)。然而,中小企业本身往往不是软件开发人员。

这就是熟练的软件开发人员的用武之地。通过提出正确的问题并与中小企业合作,他们可以将这些需求转化为清晰而详细的软件规范。该规范作为有效构建软件的蓝图。

例如:假设一家公用事业公司需要新的计费软件。为了有效地构建它,开发团队需要依靠sme来理解实用程序的工作流程和计费流程。这种信息收集可能很棘手。公用事业公司的员工,习惯了他们的日常工作,可能会忽略那些对他们来说似乎是第二天性的关键细节。开发商面临的挑战是在整个建设过程中通过访谈和讨论来揭示这些隐藏的细节。

用常识理解用户需求

许多年前,人工智能研究人员发展了一种理论,认为人类知识和机器知识之间的关键区别在于常识。人类拥有大量不言而喻的日常知识,我们通过观察和经验自然获得。想想一个孩子是如何学会开灯的——没有正式的指导,他们只是模仿他们看到的成年人做的。

如今,生成式人工智能系统通过一种称为“预训练”的技术来解决这一挑战。这些模型暴露在大量数据集中,通常来自维基百科等来源,以模仿人类获取背景知识的方式。这种“预训练”使他们能够掌握传统编程难以掌握的概念和关系。

信任在软件开发中的重要性

人工智能是否可以被编码为考虑公用事业员工和软件开发人员可以一起头脑风暴的所有事情?我们几乎肯定最终会实现,且时间不会太长。那么我们还会相信它吗?

随着人工智能成为软件开发人员工作流程中越来越常规的一部分,检查和理解人工智能产生的工作仍然是关键,这不是什么新鲜事。多年来,开发人员一直依赖于问答论坛,如Stack Overflow,在那里人们提出问题,其他人提供答案,通常以代码示例的形式。

在AI工具崛起的时代成为软件开发者

历史告诉我们,技术创造的就业机会通常比它取代的要多。未来的软件开发人员将使用像Devin这样的工具来做出更大更好的东西,但人类的创造力、沟通和细微差别将永远是这个领域的一部分。那么,你应该成为一名软件开发人员吗?

作者:Jeff Cogswell

数据科学家,知道这些统计知识就对了

Sep 06, 2021

在这个数据驱动的世界中,我们都认识到统计学给数据科学领域带来了巨大影响。数据科学中,最重要的步骤是发现模式、趋势并进行预测。

美国众议院提出增加H-1B申请费用

Nov 04, 2021

根据美国总统拜登提出的重建美好未来计划,众议院提出的协调法案针对许多项目提出建议, 其中隐藏着一些可能会对H-1B和其他工作签证产生根本影响的议案。

数据可观察性:数据工程师的求职新重点

Nov 29, 2020

为了跟上数据创新的速度,数据工程师不仅需要投资于最新的建模和分析工具,还需要投资能够提高数据准确性和防止中断管道的技术。

Leave a Comment

Your email address will not be published. Required fields are marked *

Comment *