这篇文章是写给 Python 社区的,我很高兴成为其中的一员。
我是社区的产物。十年前,我曾写过我欠 Python 社区的太多。最近我又开始回忆往事了。今年在 EuroPython 大会上,我甚至做了一个简短的闪电演讲,回忆了我在社区的时光——这让我有点感动落泪。
这次回忆之旅有两个原因。首先,我有机会参与新的 Python 纪录片,它勾起了我大量回忆(好的和坏的)。其次,我发现自己无意中被代理编码和氛围编码员1 所吸引。在过去的一个半月里,我与很多人谈论人工智能和编程,并意识到他们中越来越多的人是我过去可能不会称之为“程序员”的人。甚至在去参加会议的路上,我有幸在火车上与一位空中交通管制员进行了长达数小时的讨论,他因为 ChatGPT 而尝试编程,以使他的生活更轻松。
我记不清第一次听到这个说法是在哪儿,但我喜欢“你做什么就代表什么”这个说法。如果你在画画(即使是你的第一幅画),你就是画家。同样,如果你编写了一个程序,无论是手工编写的还是借助代理,你就是程序员。很多人一夜之间就成为了程序员,就是因为掌握了这些工具。
今年要去 EuroPython 的时候,我担心塑造我的社区可能不会接受人工智能和代理编程。这种担忧有些道理:过去一年,我看到我的圈子里有很多对使用人工智能编程不屑一顾的帖子。然而,我也意识到,人们对人工智能的接受程度已经发生了显著的变化。更重要的是,人们普遍认为,新手应该也应该编写人工智能生成的代码。
这很重要,因为我认为人工智能不会导致程序员数量减少。事实上,情况似乎恰恰相反。人工智能将吸引更多人进入编程领域,这比我们过去十年所做的任何事情都要多。
对于 Python 社区来说,这是一个值得反思的时刻。Python 已经多次展现了它的包容性——想想有多少人通过推广项目(例如PyLadies )和社区支持成为了成功的软件工程师。我自己的早期职业生涯很大程度上也归功于在 Python IRC 频道上向他人学习。
我们需要密切关注氛围式编程。这并非因为它可能会产生低质量的代码,而是因为如果我们不刻意鼓励下一代通过这些工具学习,他们就会错过我们许多人通过艰苦奋斗积累的重要经验。将他们视为弃儿或“非真正的”程序员是错误的。请记住,我们许多早期的程序没有函数,充斥着 GOTO 语句和复制粘贴的代码。
每天都有人因为搞清楚了如何使用 ChatGPT 构建程序而成为程序员。幸运的是:在很多情况下,AI 选择了 Python。我们应该将此视为一个机遇,并预见到想要参加 Python 会议的人群将会不断增长。然而,许多新程序员甚至不知道编程社区和会议的存在。找到吸引他们参与的方法符合 Python 社区的利益。
想想看:我能说出带我接触 Python 的人的名字。但如果你是通过 ChatGPT 或编程代理加入的,那里可能没有真人——只有 AI。我认为,缺乏人际联系是最大的缺点。所以我们需要弥补:伸出援手,提供指导,创造入口。要灌输这样的理念:你应该寻找一个社群,因为 AI 不会这么做。我们需要把与 AI 的单独互动变成与社群的共同旅程,并引导他们学习重要的工程经验。我们不希望一代开发者被那些开发氛围编码工具的公司所束缚,而这些公司几乎没有激励用户打破这些枷锁。