OpenStack如何使Python更好?反之亦然.

Python部落组织翻译,禁止转载,欢迎转发

副标题:更好的库,给开发者更高的薪水---两个社区是如何紧密合作的.

作者:Nicole Martinelli


编程语言Python和OpenStack紧密合作并互相依赖.首先,已经6岁的OpenStack项目包含了450万行代码,其中85%是Python.可以说,这两个共生的社区一直在改进它们之间的合作.

Thierry Carrez, OpenStack基金会的项目总监,和Doug Hellmann,红帽的高级原型工程师,最近参加了EuroPython的线下活动.

这两个Python软件基金会的成员为大家厘清了一些对OpenStack的误解.Carrez介绍说,OpenStack是一个开源的基础设施软件,它能够部署在安全的数据中心上,然后这个数据中心就变成了可编程的基础设施.这意味着OpenStack通常是由有一定规模的公司使用的,这些公司自己拥有数据中心,这些数据中心为内部的开发工作提供资源.也有可能这些公司想要运行一个公有云,为更广泛的大众提供计算资源.

"OpenStack并不是你随便找个星期天在车库里忙活一天就能搭出来的东西",Carrez说."我们需要广泛的合作,因为我们的用户是大型的机构.即便是OpenStack这个项目本身,也可以说是最社区导向的项目之一了."

openstack01.png

OpenStack四个方面的开放

Carrez指出,OpenStack有自己独立的技术管理机构---社区选举出来的技术领导和一个全局董事会---技术委员会---技术委员会人员的选举基于"一个贡献者一票"的原则.

"如果你为OpenStack贡献过代码,那么你手上就有了一票,可以用来选举项目的领导.这个领导能够决定项目的走向,并决定做什么,不做什么",他说.

他们的演讲还深入地介绍了一些OpenStack为Python代码贡献者开发的资源和工具.他们还和David Flanders一起讨论了如何通过学习使用Python及OpenStack,来得到一份更高薪水的工作.下面是他们演讲的简要记录,当然你也可以在YouTube上观看他们40分钟的演讲:

https://www.youtube.com/watch?v=5MaDhl01fpc&index=105&list=PL8uoeex94UhE3FDvjacSlHFffoNEoPzzm



记者:你们的观点都很cool,首先请介绍一下你们是如何得知并学习Python和OpenStack的?

Hellmann:我在90年代就已经在几个领域里使用Python了,我是在DreamHost任职的时候开始研究OpenStack的,当时我的工作就是为他们开发自己的OpenStack平台,后来我进入OpenStack的社区,可以说是我的工作进一步发展的结果.

Carrez:我很早就接触了Python,但是我一直都没有主要用Python工作.当我启动了OpenStack这个项目之后,我才真正认真地研究了Python.我是从OpenStack的角度去使用Python的,同时也通过OpenStack来推广Python.


记者:说说OpenStack从Python中得到了哪些益处?

Hellmann:最初选中Python是因为它的代码十分易读,另外它跟项目集成得很好,同时用它分发软件也很容易.使用Python保证了OpenStack易于分发.

Carrez:我们选择用Python开发OpenStack有几方面的原因.最显著的一个原因是,我们选择的语言需要和Linux发行版集成的很好,当时我们很在意这一点.找到一门让各种Linux发行版都集成得很好的语言并不容易.更完美的是,对于Python,很多OpenStack运维人员都很熟悉.由于运维人员是我们的首批目标用户,让他们能够有机会查看代码以及提交补丁很重要,而Python满足了这个要求.


记者:那对于既会OpenStack,又会Python的人,有没有什么好消息?

Hellmann:一个好消息是,我们观察到一个现象,Python程序员中参与像OpenStack这样的开源项目的人,在求职的时候更有竞争力.在招聘的额外要求中,要求OpenStack技能的非常多.我的数据主要集中在美国,不过OpenStack是一个全球性的项目,所以我相信在其他国家情况也是相似的.

openstack02.jpg


记者:你提到OpenStack开发者的流动性很好,这个想法很有意思,你能深入地说明一下吗?

Hellmann:我在DreamHost的时候开始接触OpenStack,我现在在Redhat工作.这已经是我的第三份有关OpenStack的工作了,社区中很多其他的伙伴都跟我有类似的经历.学习OpenStack很容易在公司找到一个不错的职位,同时你还在社区里有另外的一个身份,这种认同感让人感到舒服和高兴.


记者:能不能说说OpenStack为Python做了多少测试?

Carrez:OpenStack一个工作日要运行23000个测试任务--算下来我们每4到5秒就会部署一个完整的云,并对这个云进行一个小时的测试.

对Python社区的影响就是它们的代码持续地被测试着.他们每次一发布新版,我们立即就用新版的代码对我们的库进行集成测试,很多次我们都是第一个发现bug的.......

我们进行着如此大强度的测试,Python社区自然是跟着受益的.我们快速地反馈bug,这也切实地提高了Python自己的库的质量。

openstack03.png


记者:OpenStack开发人员制作了这么多Python包和库,他们是如何保持这些包的生命力和质量的?

Hellmann:最近我们做了一个调查,研究OpenStack的代码贡献人员还在为哪些项目贡献代码。我们得到了一份超长的清单,涉及的软件从操作系统底层到顶层特定领域的Python包,内容遍布OpenStack项目内和项目外,类型从打包工具、网络框架、测试工具到数据库。

openstack04.png


记者:Python程序员如何参与进OpenStack社区?

Hellmann:要参与进OpenStack社区,你可以看看像Oslo Project这样的项目,这个项目包含了很多OpenStack周边使用的工具。如果你想找到一份有关OpenStack的工作,一般大的赞助商都有招聘列表,你也可以到求职网站上或者openstack.org上看一看。

openstack05.png


记者:OpenStack开发者如何参与进Python社区?

Hellmann:有很多方式。首先可以看看有没有本地的Python聚会。世界上大多数主要城市都有这样的聚会。在python.org上你也可以找到一些地区性的会议。如果你想贡献代码,可以找一些OpenStack周边的Python工具,为这些工具写一些特性,这样可能会是比较好的开始。


英文原文:http://superuser.openstack.org/articles/how-openstack-makes-python-better-and-vice-versa

译者:诗书塞外

 

2月15日11:00到13:00网站停机维护,13:00前恢复