认识一下 Ben Balter。他是 GitHub 的政府布道者,负责领导推广开源理念,致力于使各级政府变得更好,一次改进一个代码仓库。
Ben 是首届总统创新研究员班的成员,也曾在美国首席信息官办公室担任研究员,协助起草了总统的数字战略和开放数据政策。作为一名律师和开发者,他可能比大多数人愿意承认的还要多花时间思考和撰写联邦 IT 采购规则。
Ben 将在下周的 All Things Open 大会上谈论将软件开发作为公民服务,他回答了我们关于美国政府在开放技术和政策方面做得对(和错)的一些问题。
您能否描述一下您目前在 GitHub 担任“政府布道者”的角色?
简而言之,GitHub 的政府布道者角色是帮助政府机构更好地交付软件,折叠地图,并拉近东西海岸的距离。我们鼓励各机构迈出第一步,通常是令人畏惧的一步,进入开源、开放数据和开放政府的世界,并确保一旦他们这样做,该机构拥有他们成功所需的资源和支持。
在政府部门使用“开源”这个词,尤其是在那些每天穿西装的人面前,你可能会联想到嬉皮士用扎染笔记本电脑传递源代码,就像他们可能传递违禁品一样。在许多机构中,开源没有得到认真对待,也没有被视为潜在的“企业级解决方案”。虽然闭源软件有专门的销售团队参加政府技术会议,并解释他们的产品如何改进该机构的工作流程,但开源传统上在谈判桌上没有这样的席位。它根本不是对话的一部分——为什么会是呢?
为什么 GitHub 认为创建这个角色很重要?
从外部来看,政府的语言和商业交易方式与世界其他地方非常不同。你和我可能称之为“网站”的东西,一个机构在编写采购文件时,可能会将同一组代码称为“可扩展的、跨平台的数字公共参与平台”。不幸的是,谷歌翻译尚未弄清楚如何在“政府”和“极客”之间进行翻译。
在创建这个角色之前,政府机构一直在使用 GitHub,但私营部门公司可能会简单地输入他们的信用卡号码,将其帐户升级为 25 美元的订阅,而政府的这些交易需要一定程度的白手套支持。需要协商自定义服务条款(政府雇员不能简单地点击“注册”),需要开发新的计费机制(订阅服务可能违反《反亏空法案》),并且需要策划政府特定的资源(对政府安全和隐私框架的误解可能使开源成为被禁止的冒险)。
政府布道者的角色为各机构提供了一个 GitHub 的人员,他们穿西装,说他们的语言,了解他们面临的独特挑战,当他们接近我们迈出第一步时,我们可以让双方都更容易。
最初是什么吸引您加入开源的?
我一生中从未上过计算机科学课。我的故事可能与其他在开源社区开始的人的故事没有太大区别。作为团队中唯一的极客,我被要求为一个我所属的学生组织制作一个网站。我搭建了一个 WordPress 安装,开始阅读其他有类似挑战的人所做的事情,并在这里或那里修改一行代码,看看会发生什么故障。能够像那样拉开帷幕,我记得我同时感到惊讶和震惊,因为看到事情的运作方式并没有什么“秘诀”。
互联网正在我周围建立起来,开源不仅给了我一张前排票观看它的展开,还提供了参与塑造它的机会。此后不久,我开始为 WordPress 做出贡献,并沉迷其中,此后为四个联邦机构和白宫编写了开源代码。
作为总统创新研究员和新媒体研究员,您曾与美国政府的一些顶级技术政策人士合作。您认为美国政府在技术政策方面“做得对”的地方在哪里?您认为哪里最落后?
从工作流程的角度来看,我们不妨使用打字机。见鬼,这个过程基本上是一样的。分析师启动一个文字处理器,输入政策,然后通过电子邮件将其发送给越来越多的利益相关者圈子,通常会创建一个拟议更改的清单(使用他们的桌面电子表格应用程序,当然)以在每一轮之后不透明地跟踪反馈。你错过了我的评论吗?你不同意他们吗?你和谁讨论过他们,反对他们的论点是什么?
经过几个月的时间,该文档被确定下来,并最终被推到防火墙之外,没有这种丰富的血统,通常以 PDF 格式,并且鉴于技术变革的速度,几乎无疑已经过时了。我很幸运成为起草白宫数字战略和开放数据政策的小组的一员。对于数字战略,我们采取了发布数字战略这一小步——一份恳求和请求机构使用机器可读格式的文件——以 HTML 而不是 PDF 格式发布,这在当时是有点闻所未闻的举动。对于开放数据政策,我们更进一步,在 GitHub 上以实时协作文档的形式起草和发布了该政策,邀请任何人——政府雇员和公民黑客——提交拟议的改进。
在实质层面,我们看到的大部分政策在很大程度上都采用了关于开源社区如何进行软件开发的基本假设(开放标准、共享工具、精益工作流程),并将其编入法律。这肯定是一场艰苦的战斗,但我们应该开始看到两个领域的进展
- 文化和教育:我们不能用20 世纪的技能和工作流程来管理 21 世纪的政府,而实现这一目标的方法是将政府内部的生活与环城公路以外的生活进行交叉融合。参加非政府技术会议,自由地谈论自己的工作(在线和线下),而没有严格的审批要求,并每周从私营部门向政府部门输送最优秀的技术专家一个小时,只是为了展示他们如何处理部署、客户服务或风险管理等基本问题,这将大大有助于弥合这一差距。
- 过时的法律:政府部门的大多数开发人员都精通首字母缩略词,即 PRA、FISMA、FAR 和 ATO。情况不应该是这样。我们需要让软件开发人员成为软件开发人员,而不是 *事实上的* 律师。政策制定者需要重新思考我们如何招聘(以便我们可以吸引和留住优秀的开发人员,而不是将这个角色外包出去),我们如何评估风险(以便我们可以降低最小批量规模,使其在项目出炉之前变得切实可行),以及我们如何构建合同(以便开发人员,而不是合同官员或传统规定所需的内容)。
政策方面已经产生了很大的势头,为极客们提供了他们做好本职工作所需的环境,但这仅仅是开始。
您最近的一篇文章驳斥了开源软件本质上是不安全的旧论点。您认为为什么这种看法仍然存在?开源社区需要做些什么来彻底消除这种恐惧、不确定和怀疑(FUD)?
这有一些原因。首先,它是可见性。所有软件最初都有相同数量的错误,正如我怀疑的那样,给定足够大的样本量,所有文本都大致具有相同数量的拼写错误。虽然您的专用客户关系系统中的漏洞可能 (A) 如果未被利用则未被检测到,并且 (B) 如果被发现则不值得报道,但在开源中,这些错误更有可能在被利用之前被发现,并且当它们被发现时,鉴于其用户群,会被广泛传播。
支持开源可以建立一个伟大的商业模式,行业中的许多主要公司都做到了这一点。WordPress 有 Automattic,Linux 有 Red Hat,Git 有 GitHub。让“西装革履”的人在开源项目背后,他们可以像闭源同行一样在会议上公开露面,他们可以回答问题并提供培训,最重要的是,他们可以为他们支持的产品提供合法性。突然之间,它不再是大卫与歌利亚之战,而是可口可乐与百事可乐之战。
什么才能一劳永逸地解决这个问题?时间。与其他行业一样,我们看到政府部门的技术消费化。首席信息官最初紧紧抓住他们的黑莓手机,并看不起 iPhone,认为它不能胜任“真正”的工作。现在,情况几乎相反。无论您的机构的专用系统有多旧,都将很快被黑莓化。
您既是律师又是开源开发者。您希望政府总法律顾问理解但他们通常不理解的一件事是什么?
开源许可就像开源的非处方药 (OTC)。它们每天被外行人使用,而没有得到该领域受过正规培训的人员的太多指导。但与非处方药不同,大多数医生(和患者)都知道什么是 Advil 以及何时使用它,MIT、GPL 和 Apache 许可证在政府(和法学院)中基本上是一个陌生的概念。
正如他们在互联网上所说 IANYL(“我不是你的律师”),但根据美国法典第 17 篇第 105 条,政府雇员创建的代码不受国内版权保护。太棒了,公共领域,对吗?但是,如果英国女王想使用相同的代码会发生什么?如果我是一家想向下游推广该代码的私营公司,但需要向我的客户保证它不受版权限制,该怎么办?更复杂的是,虽然美国采购法(可怕的 FAR)下的默认情况是政府获得在政府合同下开发的代码的无限权利(因此可以开源),但出于习惯(和市场力量),几乎无一例外地,这种权利被协商掉了。告诉您所在机构的总法律顾问,您希望他们签署同意开源某些东西,您通常会进入他们不熟悉的领域。政府律师在行政法、人力资源和采购方面是一些最聪明的法律头脑,但可能不像开源开发人员那样经常接触知识产权法,尤其是开源许可。开源许可已经将我们在开源世界中许可知识产权的方式商品化,但这不一定已经进入政府部门。几乎毫无例外,政府代码应在知识共享零 (CC0) 公共领域许可下获得许可,或者如果受到 copyleft 条款的限制,例如 Drupal 或 WordPress 衍生代码,则应尽可能使用限制性最少的条款。
我们应该对您即将举行的 All Things Open 会议环节有何期待?
烟花、激光灯光秀和大量动画 GIF。哦,还有一些关于将软件开发作为一种公民服务的内容。
在过去的五年里,我一直在帮助各机构将代码移出防火墙,但这是一个非常高接触的过程,结果并不总是很好。开源对于各级政府来说都是一个非常可怕的前景,开源社区可以做很多事情来提供帮助。政府和开源之间有很多共同之处,这通常被我们所忽略。两者都是关于围绕我们自己无法解决的共同挑战形成社区。两者都有分支、错误和喷子是肯定的,并且是许多志愿者花费时间来塑造的东西,无论是为竞选活动敲门还是提交拉取请求以纠正错别字。
随着政府疯狂地尝试从开源社区吸收尽可能多的经验教训,如果开源社区变得更加积极主动会怎样?我们几乎在全国每个城镇都有热情的开源开发人员。如果他们每个人都花一个星期六的时间向当地的网站管理员展示如何创建他们的第一个提交会怎样?如果他们向他们的市议员解释开放数据的价值会怎样?如果他们组织一个小型的黑客马拉松来向他们的市长展示开源社区的真正力量会怎样?很容易关注政府 IT 的问题以及我们是如何走到这一步的,但我希望谈谈正在地平线上缓慢形成的协作浪潮,以及那些从不认为自己是公民黑客的开发人员、设计师和用户体验专家将如何在未来几年成为公民黑客。
您还有什么想补充的吗?
我们在 GitHub 上的每一项指标都表明,我们即将迎来政府部门开源的临界点。
在初创公司中,我们谈论“曲棍球棒”,这是一个增长曲线,具有长尾,然后是急剧上升。如果您查看 GitHub 上活跃政府用户的数量,您就会看到这一点。今年夏天,我们计算了一些数字并发布了一篇姗姗来迟的博客文章,解释了政府机构在 GitHub 上的长期历史(可以追溯到 2009 年),每天有超过 10,000 名活跃政府用户使用 GitHub,每月有数千人加入。
如果您查看 GitHub 上的政府代码仓库,情况也是如此,我怀疑,到目前为止,这个数字也接近 1 万个。当我最初开始倡导政府部门的开源时,得到的反应几乎是敌对的。早在两年前,当我刚到 GitHub 工作时,同样的对话通常会采取更具探究性的语气,例如“什么是开源?”或“我为什么要关心?”今天,至少从我的角度来看,围绕政府部门开源的对话已经从根本上转变为“如何?”。我的组织如何开始使用开源?我们已经发布了这个项目,最佳实践是什么?我们如何提升我们的开源水平?我主要谈论的是美国联邦政府,这仅仅是因为大多数技术人员可能都与此相关,但同样的转变也发生在全国各地的城市、县和州以及世界各地的国家,今天 GitHub 上有超过 500 个政府组织。
政府部门的行动速度出了名的慢,但开源赢得各级政府雇员的内心和思想的速度,绝对是我们彻底改变政府 IT 看法所需要的。
3 条评论