关于软件方面的职业素养
英文原文:On professionalism in software
对于当前我们所处的大规模监控社会,我们喜欢责备世界上的政府、或者不详的他们。这是简单有效的方法,但是把隐藏的东西放在了一边,你和我都知道其背后存在着一名程序员。
我们,做为软件工程的专家,建立了现在栖居的奥威尔主义【注1】的未来,到了该回顾的时刻了。
世界充满了那些超越了对于谋生的紧急需求的行业。医生、水管工、新闻工作者和飞行员在某些方面都有着很大的权利。普通大众有权利期望这些行业的诚实并将大众的利益记在心里。
软件工程是这组行业里的一部分。在我们的日常工作中,我们了解大大小小的一些事情、而周围其他人是不了解的。我们的客户、用户和大众有充分权利,来期望和要求我们以道德的方式使用这种技术。
如果你受过正统的计算机科学教育,你或许在学校就读过《软件工程代码道德规范》。我建议你再看一遍,或者在你阅读过程中,首次问自己一个问题——我们这个行业符合这种标准吗?
截止目前的追踪记录
我想强调一下,我们这个行业已经取得了一些非凡的成就。我们已经参与了全球化的革命性交流。我们以强烈的开放和诚实的特质开创了一个行业。我们让行业与自由及开放源代码软件(FOSS)【注2】有了很大的交集,这是我们应该感到自豪的。
但是本文不是关于我们做得有多好,而是关于我们应该以及将要做得更好。在过去的大约半个世纪里,我们的行业一直是单纯的,相信像电信等其它行业会遵守道德,这对于道德上应该排斥的技术一直负有直接的责任。
我们的行业在设计互联网时,认为基本上要相信物理网络维护人员遵从道德。我们现在知道这份信任被辜负了,记住这一点并增强或重新设计 TCP/IP 协议栈,是我们对用户的责任。
今天,我们正在建立“App 商店”和“平台”,当做福利兜售给用户。在现实中我们正在构建人为垄断,以支撑即将到来的软件产品本身的商品化。我们这些人,像我一样,发现正在对发生在 制药行业中的卑劣行径发出诅咒的我们,是个伪君子,因为我们的行业也正对这个世界做着完全相同的伤害。
可操作的
我们行业把用户只是看做可从中抽取价值的一种资源,我们应当停止这样做。我们和用户的关系类似于医生和病人、或大桥建筑师和经过大桥的行人的关系,而不是采矿公司和和国家公园的关系。
我们应该认识到道德行为的艰巨性,尤其是它和我们对于客户或雇主的责任有分歧、并相应做准备时。
我们应该彼此交流这些事情。要明白我们不是在孤独地在建立信任和协作力量。和你的同事在聚会上交流。在下次你要参加的非正式会议上组织一次关于有难度场景的、道德方面的讨论。
我们应该与同行和朋友一道,为保护用户而设计下一代协议和基础设施。向去中心化项目贡献代码,比如 Tor、CJDNS、或 BitTorrent 社区致力的那百分之一的些项目。
最重要的是,不要认为自己是一个孤独的个体开发者。我们做的工作一定可以影响到其他人,我们应该有使命感。
- 注1:奥威尔主义,指现代政权藉宣传、误报、否认事实、操纵过去,来执行社会控制,包括冷处理、蒸发,公开纪录和大多数人记忆中均被抹煞不存在,就如《一九八四》中的世界观一样。https://zh.wikipedia.org/wiki/%E6%AD%90%E5%A8%81%E7%88%BE%E4%B8%BB%E7%BE%A9
- 注2:自由及开放源代码软件(Free and open source software,缩写为 FOSS,或 Free/Libre/Open source software,缩写为F/L/OSS,FLOSS)是一种可以归类为既是自由软件又是开源软件的计算机软件。https://zh.wikipedia.org/wiki/%E8%87%AA%E7%94%B1%E5%8F%8A%E5%BC%80%E6%94%BE%E6%BA%90%E4%BB%A3%E7%A0%81%E8%BD%AF%E4%BB%B6
— END —
译文: 《关于软件方面的职业素养 》 腊八粥