给计算机编程是小菜一碟。或者说,世界上的数字技能大师会让我们相信这一点。非营利组织Code.org承诺“任何人都可以学习!”苹果首席执行官蒂姆·库克(Tim Cook)评论说,编写代码是“有趣和互动的”,现在制作软件的艺术和科学就像字母表一样容易理解。
不幸的是,这幅美好的画像与现实毫无关系。对于初学者来说,程序员的想法相当少见。除了高度的分析性和创造性,软件开发人员还需要近乎超人的注意力来管理他们任务的复杂性。对细节的狂热关注是必须的;懒惰是禁忌的。要达到这种程度的专注,需要一种叫做“在流动中”的精神状态,这是一种人与机器之间的准共生关系,可以提高性能和动力。
编码并不是唯一需要高度关注的工作。但你永远不会听到有人说脑部手术很“有趣”,或者说结构工程很“容易”。当谈到编程时,为什么政策制定者和技术专家要假装不是呢?首先,在软件(用风险投资家马克·安德森(Marc Andreessen)的话说)正在“吞噬世界”的时候,它有助于吸引人们进入这个领域-因此,通过扩大劳动力池,可以保持行业运转,工资得到控制。另一个原因是,“编码”这个词听起来像是例行公事和重复的,好像开发人员死记硬背地应用了某种关键来解决任何给定的问题。好莱坞将这位“编码者”塑造成一个有社会挑战的、先输入后思考的黑客,不可避免地是白人和男性,拥有挫败纳粹或渗透中央情报局(CIA)的力量,这对他没有任何帮助。
坚持编码的魅力和趣味性是让孩子们熟悉计算机科学的错误方式。它侮辱了他们的智力,并在他们的头脑中植入了有害的观念,即你不需要纪律就能进步。任何只接触过最少制作软件的人都知道,一分钟打字的背后是一小时的学习。
目前,计算机只能执行命令,复杂程度各不相同。因此,应该由开发人员明确:机器会按您说的做,而不是按您的意思做。越来越多的“决定”被委托给软件,包括生死攸关的决定:考虑自动驾驶汽车;考虑半自动武器;考虑Facebook和谷歌在将其出售给出价最高的人之前,对你的婚姻、心理或身体状况进行推断。然而,鼓励我们调查这些过程背后发生的事情,很少符合公司和政府的利益。
所有这些场景都建立在精致的技术基础上。但我们不能只回答技术问题来回应他们。编程不是一个可以留给“技术人员”的细节,虚假的借口是他们的选择将是“科学中立的”。社会太复杂了:算法是政治性的。自动化已经打击了世界各地工厂和仓库中低技能工人的工作保障。白领工人是下一个排队的人。今天的数字巨头只依靠过去工业巨头的一小部分员工,所以鼓励更多人从事程序员工作的讽刺之处在于,他们正在慢慢地动员自己离开工作岗位。
在一个越来越复杂和相互联系的世界里,软件在日常生活中扮演着越来越重要的角色,把编码说成是一种轻量级活动是不负责任的。软件不是简单的几行代码,也不是平淡无奇的技术。在短短几年内,理解编程将成为积极公民不可缺少的一部分。编码提供了一条通向社会进步和个人提升的无懈可击的道路,这一想法对日益壮大的技术富豪阶层有利,这种科技富豪正在将自己隔离在自己的技术之后。
本文最初由Walter Vannini在永旺发表,现已在Creative Commons下再版。
阅读我们关于科技行业如何应对冠状病毒的每日报道,并订阅我们的每周时事通讯“冠状病毒”(CoronaVirus)。
有关远程工作的提示和诀窍,请在此处查看我们的增长季度文章或在Twitter上关注我们。