* Update 20190222 Developer happiness- What you need to know.md * Update 20190222 Developer happiness- What you need to know.md * Update 20190222 Developer happiness- What you need to know.md * Update 20190222 Developer happiness- What you need to know.md * Update 20190222 Developer happiness- What you need to know.md * Rename sources/talk/20190222 Developer happiness- What you need to know.md to translated/talk/20190222 Developer happiness- What you need to know.md
5.9 KiB
开发者的福音:你必须知道的事
开发者需要工具和快速编程的自由,不会因为合规性和安全性使得它停滞而无法进行下去。
个人需要合适的工具来完成工作。比如说没有比修车中途才发现 你没有完成工作的专业工具更沮丧的事情了。同样的道理也适用在开发者身上:你需要工具来发挥你的最大才能,而不会因为合规性和安全性的需求打断你的工作流程,因此你可以更快速地编码。
根据ActiveState的最新研究显示,超过一半的开发人员(具体为51%),每天只需要花费1-4小时的时间进行编程Developer Survey 2018: Open Source Runtime Pains。换句话说,大多数开发人员花费不到一半的时间编程。根据调查,一半的开发人员认为安全是他们最大的担忧之一,但是由于公司政策方面的原因,67%的开发人员选择在编程时不添加新的语言。
结果是开发人员不得不投入更多的精力在非编码的活动上,例如在构建软件和语言之后检查软件的安全性和合规性标准。而且由于公司政策的原因,他们无法选择适合的开发工具或语言。他们的满意度会下降同时风险提高。
因此,开发人员无法将时间投入在高价值的工作上。这会带来额外的商业风险,因为他们的上市时间变了慢,并且公司因为没有授权开发人员在不受公司政策影响的前提下决定最佳技术的能力而增加了技术债务。
固化安全性和合规性的工作流程
我们如何解决这个问题呢?一种方式是通过四个简单的步骤将有安全性和合规性的工作流程集成在软件开发中:
1. 集中你的力量
获得所有相关人员的支持,这是一个经常被遗忘但却至关重要的第一步。确保考虑到了广泛的利益相关者,包括:
- 开发运维
- 开发人员
- 信息安全
- 合法/合规
- IT安全
利益相关者想要了解相关的商业利益,因此要做一个稳固的案例来消除软件构建后的安全性和合规性的检查点。你可以在构建你的商业案例中考虑以下任何一个(或者全部)因素:节省时间,机会成本和开发人员生产力。在开发处理过程中,你也可以通过集成安全性和合规性的工作流程来避免语言的改造。
2. 寻找可信赖的资源
接下来,选择可使用的可靠资源,以及他们的许可证和安全要求。考虑到如下相关信息:
- 基于环境或应用程序类型以及每种语言的版本控制的使用限制
- 允许哪些开源组件,例如,特定的程序包
- 哪种环境类型可以使用哪种许可证(例如,研究与生产)
- 安全级别的定义,可接受范围内的漏洞风险级别,什么样的风险级别会触发一个措施,这个措施是什么并且谁来负责它的执行呢
3. 从第一天开始就融入安全性和合规性
合并安全性和合规性的工作流程的结果是最终它将安全性和合规性固化成代码中的第一行。它消除了公司政策的麻烦,因为您是按照规范进行编码,而不是必须事后解决问题。但要做到这一点,请考虑在构建代码时采用自动扫描代码的机制,以及对运行时代码使用无代理监视。你可以节省时间,还可以通过编程实施策略来确保整个组织的合规性。
出现新的漏洞,并且提供有效的新补丁和版本。所以,将代码部署到生产中以及运行代码时,需要考虑安全性和合规性。你需要知道哪些(如果有的话)代码存在风险以及该代码在何处运行。所以,部署和运行代码的过程应该包括监视,报告和更新生产中的代码。
通过一开始就在你的软件开发过程中集成安全性和合规性,你还可以在部署后跟踪代码的运行位置,并在新的威胁出现时获得警报。你也能追踪当你的应用程序何时受到攻击,并通过自动执行软件策略做出响应。
如果你的软件开发过程中已经引入了安全性和合规性的工作流程,你将会提高你的生产率。您将能够通过增加编码时间、提高安全性和稳定性、以及在维护和发现安全性和合规性的威胁方面节省的成本和时间来衡量价值。
集成所带来的幸福
如果你不开发和更新软件,你的公司将无法前进。开发人员是公司成功的关键,这意味着他们需要快速编写代码的工具和自由。尽管合规性和安全性至关重要,但你不能让这个需求阻碍你的发展。开发人员显然很担心安全性,因此最好的办法就是“左移”,从一开始就集成安全性和合规性的工作流程。你将可以做更多的事情,在第一次就可以完成,而花费更少的时间进行代码更新。
via: https://opensource.com/article/19/2/developer-happiness
作者:Bart Copeland 选题:lujun9972 译者:chenmu-kk 校对:校对者ID