你可能已经厌倦了那些耸人听闻的头条新闻,声称“人工智能正在接管编码!作为一个从事软件开发工作的人,我知道这可能是令人担忧的。
然而,这些标题通常只是为了吸引你的注意力而设计的点击诱饵。希望这将是您最后一次需要观看这些视频之一。
让我们退后一步,消除噪音。人工智能是否有可能取代开发人员并以相同或更好的质量执行相同的工作?简短的回答是否定的。但是,让我们来看看为什么会出现这种情况。
到最后,您将清楚地理解为什么人工智能不是为了抢走你的工作,而是为了帮助你成为更好的开发人员。
人工智能需要我们有意义
这些新的人工智能工具很引人注目——它们编写代码、修复错误并进行研究。但在令人印象深刻的外表背后,他们经常为更大的图景而苦苦挣扎。
客户不仅给你一个措辞简洁的问题要解决,还会给你带来混乱的人类需求。澄清特性或产品的需求,而不是实际的实现,通常是编程中最困难的部分。
因此,开发人员的工作不仅仅是对问题(功能或产品)进行编码;它涉及
- 客户/用户需求分析: 开发人员与客户和利益相关者(想想产品经理和设计师)面谈,以了解他们试图解决的核心问题。
- **解决方案集思广益:**一旦他们掌握了问题,开发人员就会集思广益,寻找潜在的解决方案。这可能涉及勾勒出用户流程(用户如何与产品交互的视觉地图)或创建原型(基本功能模型)。他们还考虑了技术可行性——是否可以使用现有的工具和技术来构建技术可行性?
- **设计合作:**确保用户界面直观且具有视觉吸引力。— 他们与设计师合作,以确保解决方案在视觉上具有吸引力和用户友好性。
- **集成规划:**确定功能将如何与现有系统交互。将来将如何维护和更新?
- **测试与反馈:**确保功能正常并收集用户反馈以进行改进。— 一旦功能构建完成,它就会经过严格的测试。开发人员识别并修复错误,确保流畅的用户体验。— 他们还可能收集用户反馈,并根据该输入迭代设计。
- **维护和更新:**他们修复了错误并随着时间的推移保持该功能的平稳运行。他们负责维护该功能,修复部署后出现的任何错误,并确保其继续按预期运行。
**编码只是拼图的一部分!**这些非编码方面对于创建成功的软件产品同样重要,甚至更重要。
“___ 已死”的炒作周期
这整个AI的恐慌让我想起了“PHP已经死了”的事情。多年来,我们一直听到这种说法,但PHP仍然为网络的很大一部分提供动力。
这主要是因为技术趋势被夸大了。工具总是在变化,技能也在不断发展,但对熟练开发人员的核心需求仍然存在。
遗留代码不会消失在任何地方
下一个原因是,我们将永远拥有必须维护的遗留代码。许多企业仍然依赖旧系统,即使它们笨重,但他们也在使用新技术构建新功能和服务。
这些新旧系统需要相互交互并同时进行维护。人工智能可以生成代码片段,但它仍然无法安全地将它们放入一个复杂的系统中。
这就是开发人员需要确保整个系统不会因为一项新功能或服务而中断的地方。
高风险,高安全性
另外,让我们谈谈房间里的大象:安全。大型企业,尤其是银行,对数据处理有非常严格的规定。甚至他们自己的员工和开发人员也会通过圈子来访问敏感内容。
即使我们想象人工智能可以更好地完成开发人员的工作。你认为他们会把他们的信息和代码交给人工智能,以便可能将他们的信息存储在OpenAIs或其他LLMs服务器上吗?
在这种规模上,责任和监督太重要了。
进化,不要惊慌!
围绕它的炒作很大,但实际上,如果你直接与开发人员进行比较,当前的人工智能甚至无法取代初级开发人员。它旨在成为开发人员的免费工具,而不是替代品。
技术日新月异。新技术每年都会出现,它们旨在加快开发人员的工作流程。随着人工智能在日常工作上做得更好,我们可以更专注于解决机器根本无法复制的问题。将 AI 作为一种工具。
如您所见,编码不仅仅是写行;它是解决问题和设计解决方案。因此,棘手和具有挑战性的问题仍然需要人类来解决。
人工智能不是敌人;这是一个机会。你不应该害怕它,但你也不应该忽视它。使用它并不断学习。世界将永远需要能够超越代码行进行思考的熟练开发人员。