当前位置: 首页 > 科技观察

软件在蚕食世界,开发者的价值观成了最大的bug_0

时间:2023-03-22 14:25:48 科技观察

英文原文:SoftwareMattersintheWorld  编者按:软件不吃世界,它只是让世界臣服创作者的价值观。虽然大多数软件从业者都充满了正能量,但一些负面价值观的影响是无法消除的,尤其是当软件的受众有数十亿的时候,不良事件的传播范围会很广。大错误是那些加剧(或导致)重大社会问题的错误,而不是表明软件内部发生的问题或错误计算的错误。FogCreekSoftware的CEOAnilDash指出,过去从业者一直忽视这类大bug,现在是时候共同努力修复这些大bug。  几乎在每场技术会议(以及许多非技术商业活动)上都有一句烂话:“软件正在吞噬世界”。这种煽动性的声明(事实上,他的风险投资部门AndreessenHorowitz的有效营销)来自马克安德森,但它错过了故事中最重要的部分之一。  是的,几乎每个行业都在被科技的力量所改造。但改变的不仅仅是业务流程——员工的价值方式、塑造行业的经济学,甚至是我们相互交流和了解世界的基础。软件不会吞噬世界:它只是让世界屈服于创造者的价值观。并不是每个人都对结果感到满意。  用程序员的话说,有一个很大的问题需要回答:当软件吞噬世界时,是错误还是功能?  寻找所有的正能量  好消息是,大多数制作软件的人都有很多共同的正能量。虽然这种说法有过度概括的风险,但技术工人往往高度重视创造性表达和个人自主权,他们往往对已经对其宪法感到迟钝的传统制度持怀疑态度,并且怀疑即使是最大的问题也能得到解决。这是一种极其真诚和诚恳的乐观主义。  但这还不是全部。  在当前全球民粹主义运动兴起的情况下,我们正在目睹自互联网时代到来以来对技术的第一次适得其反。其中一些是经济上的——从事科技行业的人变得富有,而其他许多人却没有,而且他们致富的一些方式开始让人觉得像是令人讨厌的事故。人们非常关心技术对他们自己的隐私和安全以及他们的工作和经济的影响。更不用说无处不在的连接设备和社交媒体带来的文化转变。  大部分公众的不信任可以归因于科技文化中一些更消极的倾向。与所有事情一样,我们最好的特质有时可能是我们最糟糕的缺点。技术也不例外。  喜欢个人自主导致缺乏集体责任感。系统性怀疑会导致一种“破坏”——而不是一个不完美的系统,一个根本不存在的系统,或者只对技术创造者有利的系统。所有问题都可以解决的乐观主义有时会让技术人员认为他们是唯一可以解决问题的人。所有这些问题都因技术的固有弊病而严重恶化,这意味着它们对边缘化社区的影响更加严重。  修复大错误  制作软件最常见的任务之一很简单:修复错误。从历史上看,我们认为“修复错误”是一件相对简单的事情——也许您的应用程序在某人的网络浏览器中看起来不正确。在最坏的情况下,也许它的某些计算是错误的,然后你必须升级软件。  当我们公司在2000年作为一家小型独立公司成立时,我们以几乎相同的方式考虑错误。我们制作了一个错误跟踪应用程序,并试图帮助人们确保他们正在修复软件中的错误。  与此同时,我们的联合创始人JoelSpolsky也写了很多关于软件制作文化的文章。那是互联网泡沫时代的鼎盛时期,我们的创始人如此关注人的因素和道德行为似乎很奇怪。但它帮助我们获得了粉丝,其中一些人试用了我们多年来构建的各种应用程序,在那段时间我们能够蓬勃发展并成为最后一家仍然屹立不倒的独立公司之一,这是非常幸运的。  但我们也遗漏了一些重要的东西。那些关于如何待人、如何倾听客户以及如何在创造技术时深思熟虑和负责任的想法和见解比我们在软件中构建的任何东西都更重要。这些是我们修复我们现在认为的“大错误”的第一步。小错误是软件中的错误。大问题是我们的错误加剧(或导致)社会中的重大问题。  大虫子咬  “大虫子”是什么意思?加剧刑事司法系统中种族偏见的软件是一个大错误。将数亿人的敏感数据置于危险之中的安全政策是大问题。秘密监视用户的应用程序是大错误。破坏对合法新闻的信任并助长假新闻?是的,这是一个大错误。  因此,除了那些更明显的错误之外,现在是时候确保我们优先修复这些大错误了。是的,您想看看您的网站在旧款智能手机上是否看起来不错,但也要确保您的数据政策尊重您的用户。当然,您必须处理持久性内存泄漏,但也要腾出时间改进密码存储做法。还要明确的是,我们不是为任何人而来——我们和任何人一样对许多系统问题负责,因为我们专注于错误的“典型”定义,而忽略了我们在解决真正大错误中的作用。  对于一家小型软件公司来说,指出一个巨大行业中的这些缺陷似乎有些冒昧,或者对于我们的一个小社区在改变整体技术文化方面可能产生的影响过于乐观。但我们以前见过这种情况,就在不久之前,第一批人开始在网上写博客,思考将我们彼此联系起来的在线软件。他们通过有关设计、可访问性、Web标准、性能和许多其他主题的深思熟虑的对话来推进技术发展水平,这些主题已成为我们在开发应用程序时理所当然地关注的主要焦点。  我们认为是时候让新一代编码员解决这些更重要的问题,如访问、平等、正义和基本公平。我们可以做出最明确声明的方式非常简单:软件很重要。