您现在的位置:首页行业资讯

微软如何开始拥抱Python?--中享思途

在微软内部,Python 从一个不受重视的语言变成了香饽饽。
最近,微软 Python 开发者 Steve Dower 发布博文(如下文,下文中 Steve Dower 以“我”自称),回忆了 Python 如何在公司内部流行起来的。Steve Dower 在学生时代参与了 Python Tools for Visual Studio (PTVS)这一微软开源工具的开发,项目经理后来邀请他来公司当暑期实习生,一年之后成为微软的全职开发者。到了 2018 年,开发工具 Visual Studio 和 Visual Studio Code 都支持 Python,他们还雇佣了五名 Python 语言的核心开发者,积极参与世界各地的 Python 活动,他们为 Python 感到骄傲。
Python,是微软公司未来云业务体系的重要组成部分,属于服务与团队支持工作中需要使用的基础语言之一,同时更是公司快速增长的数据科学与分析领域内最受欢迎的语言选项。然而,Python早期在微软公司显然没有获得与其重要地位相符的盛名。
2010年,微软内部开始有几位Python支持者,但他们一直低调,以防有人注意到他们已经有权限为自己的项目分配开发人员。虽然这支队伍还不大,也不新,主要来自以往的工作,但其仍受到微软公司企业文化中“并非原创”问题的影响:Python是一种属于他人的语言,因此微软对其并不感兴趣。
转眼过去八年以来,情况出现了戏剧性的转变。如今,微软的众多产品都开始支持 Python,一些最新产品甚至只支持 Python,部分关键工具也是用 Python 编写的,微软正积极投资于 Python 语言及相关社区。
我从2011年开始在微软公司工作,有幸参与了多个重要的Python项目,并与多支团队合作其它项目。最近一段时间,我转而为微软公司贡献力量,旨在帮助微软建立自己的Python储备,同时通过与技术社区合作,使每个人都能更好地使用Python语言。
Visual Studio中的Python
在正式加入微软公司之前,我在澳大利亚读研究生。当时我已经是个Visual Studio粉丝加 Python 开发者,我也很高兴看到2010年发布的Python Tools for Visual Studio(简称PTVS)。当时,运行在.NET环境之上的 Python 版本 IronPython 已经被交付至社区,另有一支由 Dino Viehland 和 Shahrokh Mortazavi 带队的小组负责将Python支持引入微软公司的各款产品当中。经常与法务团队进行为期数个月的协商,PTVS最终发布在CodePlex(微软的前开源托管服务)上,并开始接受外部贡献。
作为一名 Python 开发人员,我很高兴率先体验了 PTVS 的初始版本,并上报了一些无法正常起效的内容,包括解决其中存在的部分问题。经过一个月左右的跟进,该团队经理问我是否有兴趣以暑期实习生的身份到微软工作。一年之后,我正式成为微软公司的全职员工。
由于我们的团队拥有最为丰厚的 Python 知识储备,因此我们自然成为了微软 Azure 的Python支持主力。初始版本的 Azure SDK for Python 就是由我们这支队伍开发完成,目前团队已经有五名成员。随着 Python 越来越重要,我们得以转型为一支专门的 Python 负责团队。通过对该 SDK 的持续贡献,我们很快发现并吸纳了 Laurent Mazuel 加入。这里需要强调的是,这套 SDK 已经成为 Azure 管理 SDK 获得成功的关键所在——其协调着100多项 Azure 服务,并克服了将其构建为整体连贯库中出现的种种挑战!
接下来的几年里,我们亲眼见证自己的项目在用户总量与实用性方面不断提升。每一次新版本的发布,都会引起人们在各类社交媒体平台(如Twitter、Reddit以及Hacker News等等)自发地热烈讨论,包括不少同事在内,很多人仍然不相信微软公司实际上已经开始向Python张开怀抱。我在一位开发人员隔壁的办公室工作了半年之后,这位开发人员才意识到,微软居然拥有我们这样一支 Python 专项团队。
我们工程师团队每年都会参加各种大大小小的Python会议,展示并讨论我们的工具。我们在微软内部还属于那种“小不点”,因此得不到营销团队的协助——为了解决问题,一切规划、人员配备、装修乃至展位运营工作都得由工程师来完成。有时候,我们会为了一场活动到处奔波(例如在最后一分钟,冲到打印店,快速打印出更好的标志;或者在附近的杂货店买巧克力,以作为活动伴手礼)。正是这样的经历,让我们感到自己就像是大型企业内部的小小初创公司!

青岛Python培训机构--中享思途

长久以来,微软公司内外都认为 PTVS 只是一个社区项目,而没有意识到我们都是实实在在的微软员工。但这种误解慢慢开始发生转变,特别是在我们找到负责 visualstudio.com 网站的营销人员,要求其在主页的语言清单中插入“Python”一项时。不出所料,这引起了不少人的关注,但同时也是最好的自我宣传方式。从那时起,我们被越来越多地视为“官方”力量。
下一个转折点出现在我们被添加至 Visual Studio 2015 安装程序时。此版本包含一个经过改进的“自定义”页面,页面内简化了核心选项并添加了众多“外部”组件。就是在这里,用户第一次获得了官方Python支持,而无需下载任何其它安装程序。

青岛Python培训机构--中享思途

随着我们用户数量的持续飙升,我们团队也获得越来越多的关注。我们作为微软公司的 Python 力量,终于正式进入公众视野!PTVS项目迁移到了目前的 GitHub 主页上,Python SDK for Azure的受欢迎程度远超预期,而已经落实的一切工作,不知不觉掀起了一轮真正的文化变革。
我的Python贡献之旅
与此同时,在PyCon 2015美国大会上,我志愿参与到Python on Windows的支持工作中来——这个项目得到了大家的积极认可,而在与法务团队进行了多次交流之后,我很快成为微软支持下的CPython项目的核心成员。
在Python 3.5版本,我对Python进行了移植,从其使用微软 Visual C++ 2010 编译器与运行到更新至最新版本——其中包括对我们专门对 CPython 打造的 C Runtime 进行针对性调整(例如_set_thread_local_invalid_parameter_handler() 函数)。此外,我还重写了安装程序,修复了用户安装机制并将其变更为正确的安全安装目录。最后,我负责构建 python.org 网站上提供的所有 Windows 版本 Python。

青岛Python培训机构--中享思途

时至今日,微软公司已经拥有五名核心 CPython 提交者,而我们所有成员都有充裕的时间为该项目做贡献。我们致力于改善项目的兼容性、注册机制、设计漂亮的新图标、JIT执行hook以及更多正在推进中的其它新成果。身为微软公司的全职员工,我们能够获得远超纯粹志愿者的优势——包括拥有自己的项目,同时更透彻地了解问题与场景,再加上拥有良好薪酬的开发投入,我们得以对Python社区投入热情并产生积极影响。
关注文化层面的转变
当人们问起关于Python的发展进度时,我们能够以公司的企业文化变革作为回应,而非直接做出干瘪乏味的描述。我们认为,这一重大胜利的里程碑之一正是跨平台Azure CLI项目。该项目最初是使用Node.js编写的,但其团队随后发现,要维护规模如此庞大的命令行工具正变得越来越困难。在研究替代性方案时,他们就Python支持一事向我们征求了意见。
整个对话过程大致如下:
CLI 团队: “我们并不真正了解Python,但看起来Python对于可扩展命令行工具来说似乎是个不错的选择。”
Python团队: “是啊,应该没问题。

 st_bottom
青岛Java培训,青岛HTML5培训,青岛UI培训,青岛IT培训,青岛嵌入式培训,青岛运维培训,Java就业培训,专业ui培训,前端开发培训,嵌入式培训价格,运维培训哪家好,IT培训,青岛思途,中享思途IT培训
Copyright © 青岛思途共享科技信息服务有限公司 鲁ICP备14027489号-2

鲁公网安备 37021402000988号

青岛Java培训,青岛HTML5培训,青岛UI培训,青岛IT培训,青岛嵌入式培训,青岛运维培训,Java就业培训,专业ui培训,前端开发培训,嵌入式培训价格,运维培训哪家好,IT培训,青岛思途,中享思途IT培训