导读:Thoughtworks 首席技术官认为,虽然人工智能正在推动科技行业的根本性转变,但我们必须保留开发人员的工作。
“我在 X 上看到有人说,‘看,我写这个应用很有感觉。我不需要开发人员了,我觉得很酷。’然而,不到 24 小时,他们的软件就遭到了攻击。它没有包涵最起码的安全考量,也没有考虑到作为一名深度开发人员需要思考的任何因素。”
这就是Thoughtworks 首席技术官雷切尔·莱科克(Rachel Laycock)就人工智能的未来及其当前对科技行业的影响展开的一场非常深刻的对话。
不久之前,她这样评价X 用户:“他不知道自己在做什么,但攻击这款应用的人显然很清晰。”
莱科克说她并不感到惊讶,因为毕竟这些AI 工具是在互联网上进行训练的。
“互联网上并不一定充满了优秀的代码,生成更多这样的代码对我们来说也未必是好事,”她解释道。“现在大家非常注重生产力,希望能够尽快地编写代码。因为积压的工作层出不穷,大家都在抱怨IT或技术部门的速度不够快,而我们需要推出更多功能。”
但对她来说,科技行业面临的最大挑战是遗留代码——随着人工智能生成的代码规模化,遗留代码只会变得越来更糟。
人工智能在偿还技术债务并最终迁移到云端方面确实发挥着作用。但莱科克认为,这只会增加对具有深度思考和解决问题能力的工程师的需求。
许多组织都押注人工智能代理会变得越来越智能,进而越来越优秀。人们对检索增强生成(RAG)或基于 RAG 的人工智能寄予厚望,希望能够更快地改进模型和工具。
但我们距离理解人工智能的长期影响还很远。
“目前还不清楚,我们什么时候才能确定人们在这方面使用的三大或五大工具和模型。情况变化非常非常大,”莱科克说。此外,“人们演示的大部分内容都是构建一个Greenfield类应用程序”,她说,这相对容易。
遗留系统的现代化仍然是大多数企业面临的最大挑战。
她继续说,当前的市场“过于注重代码生成的效率,但这实际上并不是行业的问题。”
总体而言,遗留系统的现代化仍然是大多数企业面临的最大挑战。此外,数百个应用程序之间的知识碎片化也进一步阻碍了企业向云端迁移。
这与开发者抱怨的拖慢他们速度的因素相呼应:技术债务和技术文档。
业务部门和技术部门都在努力理解代码。AI 生成的代码越多,理解能力就越差。
“与此同时,每个人都在想:我怎样才能尽快完成这项工作?我不想雇佣任何新人。我希望减少开发人员的数量,”莱科克这样说。
业界甚至在 AI 大规模应用验证之前就寄希望于它能够取代现有工作岗位。在发现恶意 npm 软件包感染 Cursor AI 并带有窃取凭证的后门后,其安全性是否能够大规模应用也尚不明确。
“从人工智能代理的角度来看,我看到的那些有效的东西更专注于特定任务,”她说。“所以,比如‘修复这张 Jira 工单’,不要说‘修复这 100 张工单’,因为这可能会陷入无数个无限循环,让你损失一大笔代币。”
这不像 GitHub Copilot,后者每位开发人员每年的名义成本为 100 美元。据估计,人工智能代理的成本可能高达每位开发人员每年数万美元。
有一种理论认为,人工智能驱动的监管模式比支付软件开发人员的薪水更便宜。然而,同样地,没有人证明过人工智能的规模化能力,也没有人计算过其真实成本。
“如果我有很多代理运行分散型任务——基本上就是一个代理农场——然后你让高级开发人员(甚至是初级开发人员,这听起来很危险)来监督他们,”莱科克说。“你会听到产品公司或大型云服务提供商说,他们有动力让每个人都使用大量的代币。”
“没有人谈论人工智能不能做什么,以及需要解决哪些问题;而且生成更多代码实际上不会对我们有帮助。”
—— Rachel Laycock,Thoughtworks 首席技术官
“如果微软、谷歌和AWS 都说的是同一件事。嗯,他们希望人们使用 GPU,对不对?这意味着使用代币,”她继续说道。“他们希望你构建运行的代理。他们不在乎这些代理是否陷入无限循环。或者也许他们确实在乎,但他们是为了获得工作负载而提供的激励,对吧?”
这种风险并不意味着完全拒绝人工智能。莱科克发现,一些更有经验的同行干脆就不予理会,这本身更是一种风险。
“我们需要找到某个中间型立场:它能做什么?我们能用它做什么?”她说。“不要轻易否定它。也不要一时愤怒地使用它。这些功能会不断改进,但只有你的经验才能告诉我们差距在哪里,而这正是我目前感觉缺少的。没有人讨论它不能做什么,以及哪些方面需要解决;而且,生成更多代码实际上对我们没有任何帮助。”
目前,关键在于让团队采用这些新的AI工具来测试边界条件,以便更多拥有10年或20年经验的高级工程师能够帮助解决这些边界条件。当然,也要让这些高级工程师培养下一代初级工程师——因为如果没有初级工程师的经验,就不可能培养出高级工程师。
“因为如果你想要推出一项变革,即使只是推出 GitHub Copilot 对他们来说规模也很大,”她说。“对于成千上万的开发人员来说,这不是一个很容易的改变。”
当你以这种规模推出时,这些企业需要非常确定他们选择了正确的工具和模型。
她继续说道:“整个形势还不够稳定,他们无法大规模地这样做。”
数字化现代化和向云端迁移的主要障碍之一是,真正构建这些旧系统的人变得越来越少。
由于文档和架构决策记录不完整,团队无法确定哪些是真正的僵尸服务,哪些是整个业务所依赖的服务。
而人工智能擅长解释复杂性,它是这个解决方案的一部分。但是,就像“大爆炸式”现代化方法一样,它远非解决方案的全部。莱科克表示,它也不能仅仅使用人工智能来重新生成代码,因为你必须理解大型机代码才能将其转换为云原生环境。
“我们面临的挑战之一是全面理解代码库:我们知道它在做什么吗?它为什么这么做?”莱科克如是说。
Thoughtworks 正在构建一款全新的生成式 AI 工具CodeConcise Legacy Assistant,它能够索引代码,并附带上下文窗口和对话式 AI 叠加层,帮助客户理解其系统。借助 CodeConcise,Thoughtworks 团队旨在与行业专家合作,构建一个上下文窗口。
而且Thoughtworks 并不认为其在解决普遍存在的迁移到云端问题的这种方法上是独一无二的。
Thoughtworks 并不主张采用“大爆炸式”的提升和转变方法,而是主张使用人工智能来帮助理解自己的系统,以便让团队可以正确划分依赖关系和团队,并与每个人合作,对跨职能部分进行现代化改造。
“人们正在思考如何利用人工智能来理解工作流程和数据流,然后进行转化——也就是重建代码库,”莱科克说。
这可能需要一年甚至十年的时间,她说:“想想我们正在努力解决的一些问题,利用人工智能重新生成代码的想法真是令人兴奋。我们还没有达到那个程度,但你可以开始利用人工智能做一些事情。”
现在正是根据后来的那些游戏规则改变者进行早期人工智能实验的时候了。
“理解某个庞大、复杂、或结构化或非结构化、用不同语言进行分析的东西,并能够对其进行探究,”莱科克若有所思地说道。“所以我们构建了一个聊天界面,可以问:这个系统是做什么的?系统的用户是谁?他们是如何使用它的?解释一下这个功能。诸如此类。”
Thoughtworks 并不主张采用“大爆炸式”的提升和转变方法,而是主张使用人工智能来帮助理解您的系统,以便可以正确划分依赖关系和团队,并与每个人合作,对跨职能部分进行现代化改造。
“我们一直采取所谓的切薄片方法,”她解释说,“这是一种交互式方法,用于识别可以利用的不同领域、上下文和模型,从而帮助您对需要更改的部分进行切片和创建接缝,并继续进行识别死代码和不需要的东西的过程。”
虽然这个梦想仍处于酝酿阶段,但莱科克认为,业界仍停留在代码生成阶段,而对于大多数企业来说,解决遗留问题是一个更有趣、更有影响力的生成式AI 用例。
“因为这就是他们无法快速行动的原因,”她继续说道:遗留的应用程序和遗留的数据结构不支持微调模型。她预测,人工智能也将在调整数据架构以支持构建人工智能应用程序方面发挥作用。
“我认为,这两个问题是人工智能可以增强和支持解决的,而不是简单的问题,”莱科克预测道,“但它不会像你按下按钮那样神奇地解决。”
目前,Thoughtworks 正在使用众包收集关于科技行业未来发展方向的一系列假设。
从应用程序迁移和现代化,到代码生成,再到人工智能代理等等,莱科克表示,每个组织都必须采用这种产品思维方式,在整个软件开发生命周期中检验理论、检查和测试人工智能,而不仅仅是内部循环的代码编写部分。
“人工智能正在融入所有这些事物,这很棒,但我们必须记住,它不是确定性的。”
——莱科克
“现在他们就想:我们怎样才能尽快完成最初的部分,而不需要开发人员?而我却想:为什么总是回到不需要开发人员的问题?”莱科克这样说道。
“我希望你能明白。我们经历过各种人才争夺战。招到好的人才很难,但这样做反而吓跑了一些人,甚至让他们不敢加入这个行业,而且我们还没有证明我们不需要工程师。”
她认为,重点不应该是淘汰技术人才,而应该利用人工智能来增强技术人员们的作用。这可以通过抽象化、减少繁琐工作、生成测试、编写文档以及捕捉开发者体验的整体视角来实现。
莱科克说,在这个根本性的转变里,当你将人工智能生成的一切或任何东西投入生产时,不要忘记观察一切。
“观察一下。人工智能正在融入所有这些领域,这很好,但我们必须记住,它并非确定性的。在我们最终找到人人都梦寐以求的解决方案之前,可能还需要针对一些更复杂的问题进行更多的训练和调整,”莱科克说道。
最后,她确定地说:“我确信人们的工作将会改变,但至于工作将如何改变以及正在发生什么变化”,作为一个行业,我们还远没有弄清楚这一点。“
作者:场长
本文为 @ 万能的大雄 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。