`
骑猪逛街666
  • 浏览: 141524 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

国内首位!Node.js社区将阿里云工程师张秋怡吸纳为CTC成员

阅读更多
阅读原文请点击:http://click.aliyun.com/m/23769/
摘要: 只有对Node.js 社区有足够大贡献的人,才会被吸纳为CTC成员,张秋怡究竟做了哪些贡献?

继去年MariaDB基金会将阿里云数据库高级专家彭立勋列为个人成员后,今年又有一位阿里云工程师在国际技术社区重要工作中有所担当,她就是张秋怡。

张秋怡,花名洗影,阿里云云应用服务团队工程师。2016年,她毕业于中山大学软件工程专业,现在在阿里云alinode团队参与 alinode  Node.js 应用服务解决方案的开发和维护,同时也对阿里内部和外部的客户提供技术咨询的服务。

1

Node.js社区宣布将张秋怡吸纳为CTC的页面(@joyeecheung 为张秋怡在Github的账号)

近日Node.js社区决定,将张秋怡吸纳为CTC(核心技术委员会)成员,而这也使得她成为国内首位Node.js社区CTC成员。

CTC 主要负责 Node.js Core 大方向上的技术决策。其成员主要的工作包括:参加周会讨论 GitHub Node.js 组织下面所有提交给 CTC 讨论或者 Review 的事项,参与 CTC 邮件列表的讨论,对有争议的 issue 进行投票,Review Node.js Core semver-major 的不兼容改动(semver-major 的 PR 必须要有 CTC 成员的 sign-off 才能合并),以及其他 Node.js Core Collaborator 的工作 (CTC 成员也是 Collaborator)。

只有对Node.js 社区有足够大贡献的人,才会被吸纳为CTC成员,张秋怡做了哪些贡献?她在接受云栖社区电子邮件访谈时说:“我主要是参与了 WHATWG URL 标准的实现(在 8.x 我们已经做到能完全通过 Web Platform Test 了),和内部 benchmark 的一些改进,平时也会帮忙维护 issue tracker 和 review 代码。”回复中,张秋怡也指出,日常工作其实是维护 issue 和 code review 更多一些。

聊到国内为什么到今天才有第一位CTC成员时,张秋怡表示并不很清楚,但她分析可能和以下两个原因有关系:1.语言障碍;2.Node.js社区的人基本都是志愿者,需要大家牺牲个人大量周末休闲的时间。有些原因她没在访谈中说,但却在稍早些时候——《Node.js Collaboration Summit 与 JSConf EU 纪行》一文中有所点明。她当时感叹中国开发者在国际社区与标准制定过程的缺席,进一步探究原因她则发现,国内工程师大都喜欢自己去寻找曲线救国的解决方案,缺乏标准意识,从长远角度解决问题……从这来看,或许也能多少知道为什么在国际技术社区看不到来自国内的现象级人物和技术贡献的根本原因。

尽管这位年轻的CTC成员本科毕业才一年,但她的技术实力很雄厚,而这来源于她在Node.js领域四年的持续耕耘。因此张秋怡在成为CTC成员之前,也收获了来自小伙伴的钦佩。2016年年底,张秋怡受邀在Node.js Interactive 2016 North America上做分享,归来后她写了一篇文章《Node.js Interactive 2016 North America 纪行》做记录,阿里的技术同学除了在内网感叹对最新进展介绍全面、信息量太大的同时,也有人发自内心的问:“如何成为像你这样的大神。”

对于下一阶段,张秋怡说,原来做什么,现在还会继续做什么,只不过每周会多参加一次语音会议。在阿里云的工作,她说,将继续维护 alinode 和开发新特性,“会将Node8功能集成到 alinode 平台上,提供更多为 Node.js 应用监控调优和故障排查的手段。”

更多细节,请查看以下完整访谈内容:
云栖社区:请介绍下自己以及所从事的工作。



张秋怡:我 2016 年从中山大学软件工程专业毕业,现在在阿里云的 alinode 团队参与 alinode  Node.js 应用服务解决方案的开发和维护,也对阿里内部和外部的客户提供技术咨询的服务。目前主要做 Node.js 应用的监控调优、故障排查和稳定性保障相关的事情,开发的工作从底层 Node.js 运行时的定制,到上层的监控平台和可视化调优工具都有涉及。此外也协助一些阿里云其他产品与 Node.js 开发相关的工作。



云栖社区:你是什么时候接触 Node.js 的?你为什么会选择不断在 Node.js 社区做贡献?



张秋怡:第一次接触 Node.js 大概是在大二的时候,有同学给我们看了他用 Node.js 写的一个 Demo,当时学习过 Python 的 Tornado,发现 Node.js 的 Koa 和 Tornado 比较相似,出于好奇心就了解了另一个平台下的 Web 开发对比来看看。后来对编程语言的编译器和虚拟机实现产生了兴趣,在探索 JavaScript 引擎的实现的同时也有去阅读 Node.js 的源代码,了解抽象了计算机网络和操作系统这些课程知识的跨平台库(libuv),与一个脚本语言的运行时(v8)嵌在一起在实际应用中会长什么样子。大三实习转岗到 alinode 团队之后开始有在 Node.js Core 的代码上做一些开发,但是没有向上游提交过 patch。



大四毕业前在 Node.js Live Beijing 做过一次关于 V8 GC 日志的分享,被 Node.js 基金会邀请到当年北美的 Node.js Interactive 再做一回,在那次会议上有一个 Code and Learn 的活动,现场指导熟悉给上游提交代码的流程,因为这个契机就开始熟悉上游 Node.js Core 的工作流程了,后面在业余时间也有不断给 Node.js Core 做一些维护 issue tracker、提交和 Review 代码之类的事。



要说为什么会一直不断做这些的话,大概就是没有家庭负担,所以业余时间比较闲吧……加上 Node.js 社区整体氛围还是很友好的,对新加入的贡献者都很鼓励,大家都很遵守 code of conduct ,比较有礼貌。偶尔有疑似火药味出现的时候也会私下沟通,很注意不要互相冒犯,所以在里面一起工作感觉很愉快。碰过的代码多了之后也会经常被 ping 去做 code review,慢慢就变成习惯了。Node.js 底层的代码涉及的技术范围比较广,在参与贡献的过程中也可以了解很多平时工作不怎么打交道的技术领域。



云栖社区:Node.js 社区只会对有足够大贡献的人吸纳为CTC(核心技术委员会)成员,能不能和大家分享下,你都做了哪些贡献?



张秋怡:我主要是参与了 WHATWG URL 标准的实现(在 8.x 我们已经做到能完全通过 Web Platform Test 了),和内部 benchmark 的一些改进,平时也会帮忙维护 issue tracker 和 review 代码。不过这种是比较成熟的开源项目,日常工作其实是维护 issue 和 code review 更多一些。



云栖社区:从接触到的信息来看,你是首位国内 CTC 成员,就你个人来看,能否分析下之前为什么国内没有人成为 CTC 成员?

张秋怡:坦白说我也不是很清楚,我认识四五个在国内工作的 Node.js Core collaborator,感觉区别只是活跃程度不同吧,我平时泡在上面的时间会多一些。

据我了解,现在 CTC 里起码一半的人本职工作和 Node.js Core 的日常维护没有关系,完全是志愿者,真正受公司赞助对 Node.js 这个项目负责,全职参与开发的人寥寥无几。我已经算是工作关系比较密切的,平时工作也要接触同一个 code base。虽然维护上游代码并不是我的本职工作,只是 APM 这类工作的本质需要对运行时底层做一定的修改而已,所以我在上游提交的代码和我在内部提交的代码关系也不大,维护 issue 和做 review 这些工作关系就更远了。我认识的其他几个 collaborator 平时的工作和 Node.js Core 的日常维护关系也不大,日常工作如果忙起来,留给开源项目做义务劳动的时间也不多也很正常。



工作和 Node.js 相关是一回事,愿不愿意牺牲自己周末玩乐的时间,陪伴家人的时间去给底层依赖的项目做义务劳动是另外一回事,毕竟 Node.js 已经是很成熟的开源项目,多一个维护者少一个维护者影响并不大。但是这样比较知名的项目日常维护需要投入不小的精力,每天一觉起来收件箱多出上百个通知是家常便饭,每个月都会有两三百个 commit 合并到 master,相应地每天都有很多 PR/issue 要看,所以全跟进是不太可能的。Node.js 的 collaborator 有不少不太活跃选择退回权限的,CTC 也有一些成员因为个人事务变多没有时间继续参与 CTC 的活动而离开(参考 CTC Emeriti:https://github.com/nodejs/node#ctc-emeriti),大家也都很理解。我们也有完整的流程来处理这种情况,有新的活跃贡献者出现,也有完整的流程吸收成为新血,总体有进有出还是比较健康的。

从我的角度看来,我和其他人的区别只是我燃烧了一下自己个人的时间而已,我能理解为什么其他人不选择放弃更多自己的个人时间做这种义务劳动,也不保证自己会一直坚持花费这么多的业余时间(现在本职工作比较忙所以活跃程度也有所降低,但还是尽量保持每周都会做一些工作),这些都是很正常的。



如果要拿国内和国外对比来问(考虑到人口基数)的话,还有一点是语言障碍。虽然 CTC 大概有一半的人母语并不是英语,也不居住在英语国家,collaborator 母语不是英语的也很多,但是 Node.js 的注释、commit message 的语言、issue tracker 上交流的语言都是英语,CTC 每周开电话会议也是用英语的。另外国外开会和活动的时候,即使有旅费赞助,考虑到语言和签证问题,国内的开发者要去参加难度也高一些,我到国外开会的时候很多人都表示他们是第一次和来自中国的活生生的开发者交谈。双方平时打的交道不多,了解不深的话比较难吸引作为新成员进来。

云栖社区:CTC(核心技术委员会)成员有哪些义务?它和 Node.js 社区的Collaborators 有什么区别?

张秋怡:CTC 主要负责 Node.js Core 大方向上的技术决策,成员主要的工作包括参加周会讨论 GitHub Node.js 组织下面所有提交给 CTC 讨论或者 Review 的事项,参与 CTC 邮件列表的讨论,对有争议的 issue 进行投票,Review Node.js Core semver-major 的不兼容改动(semver-major 的 PR 必须要有 CTC 成员的 sign-off 才能合并),以及其他 Node.js Core Collaborator 的工作 (CTC 成员也是 Collaborator)。



Collaborator 的人数更多一些,只要在 Node.js Core 有足够多的代码贡献就可以成为 Collaborator,Collaborator 有 push 到 GitHub 上 nodejs/node 这个代码仓库的 master 分支的权限和运行 CI job 的权限,也可以编辑、标记和关闭 nodejs/node 的 issue 和 PR。



两者的主要区别……日常能察觉到的大概就是 semver-major 的 PR 需要通过至少一个 CTC 成员的 code review,所以一个 PR 如果被标记成了 semver-major 而且有 Collaborator review 后同意合并了,但是还没有 CTC 成员 LGTM 的话,会需要 ping @nodejs/ctc 这个团队的人提醒过来 review(注:LGTM 就是 Look Good To Me,通过了 code review 的意思)。另外有争议的 PR 或者 code review 中产生的问题如果没办法在讨论中达成一致,会召集 CTC 来投票做决定。

此外还有 CTC 每周都要开语音会议和有自己的邮件列表。



云栖社区:CTC 成员与成员之间都是怎么进行交流的?日常会有聚会吗?



张秋怡:大家日常在 GitHub 上都是低头不见抬头见的,还有就是包括很多 collaborator 都会上的 #node-dev 的 IRC 频道和 twitter。CTC 每周都会开一次语音会议,讨论 Node.js 组织下面所有标记了 ctc-agena 或者 ctc-review 的 issue/PR,把反馈、决定或者下一步要做的事情回复在对应的地方。不过因为我们分散在世界各地,CTC 的会议时间是北京时间周三晚上7点,晚上12点,周四凌晨4点三个时间轮流的,由于时差一般每次会议只能聚集到大概三分之一到一半的人。此外 CTC 还有自己的邮件列表用于讨论一些比较敏感的话题。



线下主要是 Node.js 基金会每年会组织两三次 collaboration summit,一般会在 JavaScript 或者 Node.js 社区的大型会议周边举行。不过这个活动的参与范围也包括所有的 Core Collaborator 和 Node.js 基金会下其他 Working Group 的成员。一般 Collaboration Summit 主要是分小组讨论一些需要集齐人讨论的问题,线下见面谈会更有效率一些。


云栖社区:我们知道,你也在维护阿里云基于 Node.js 推出应用服务解决方案alinode,因此有两个问题:第一个问题是,alinode 主要改动了什么,体现的优势是?适用于什么场景;第二个问题是:当下在阿里云的工作和 Node.js 社区交集多吗?如果不多,你是怎么分配这两块时间的?
阅读原文请点击:http://click.aliyun.com/m/23769/
分享到:
评论

相关推荐

    精品--简历模板(from 张秋怡).zip

    而"from 张秋怡"则表明这些模板是由一位名为张秋怡的专业人士或团队创作的,可能意味着它们具有一定的专业性和创新性。 【标签】虽然没有具体的标签,但我们可以根据标题和描述推测一些相关的关键词,如“简历”、...

    《简历模板》--简历模板(from 张秋怡).zip

    个人花大量时间整理出的简历模板,内容丰富,无论是应届生,还是职场老手,都有相应的模板,节约自身时间,提升效率。 亲们下载我任何一个付费资源后,即可私信联系我免费下载其他相关资源,包含简历模板、PPT模板、...

    AI-Notes:中山大学SE-311人工智能笔记

    人工智能笔记 参考教材 注意 这套笔记可能会有很多typo 个人熟悉中文译名的术语会用中文名,不熟悉中文译名/没有确定译名/中文译名词不达意的术语会沿用英文原词。除了名词以外,一些...张秋怡 Joyee Cheung E-mail:

    航空公司客户满意度数据转换与预测分析Power BI案例研究

    内容概要:本文档介绍了航空公司的业务分析案例研究,涵盖两个主要部分:a) 使用SSIS进行数据转换,b) 利用RapidMiner进行预测分析。这两个任务旨在通过改善客户满意度来优化业务运营。数据来源包括多个CSV文件,如flight_1.csv、flight_2.csv、type.csv、customer.csv 和 address.csv。第一部分要求学生创建事实表、客户维度表和时间维度表,并描述整个数据转换流程。第二部分则需要利用RapidMiner开发两种不同的模型(如决策树和逻辑回归)来预测客户满意度,并完成详细的报告,其中包括执行摘要、预测分析过程、重要变量解释、分类结果、改进建议和伦理问题讨论。 适合人群:适用于对数据科学和商业分析有一定基础的学生或专业人士。 使用场景及目标:本案例研究用于教学和评估,帮助学员掌握数据转换和预测建模的技术方法,提高客户满意度和业务绩效。目标是通过实际操作加深对相关工具和技术的理解,并能够将其应用于实际业务中。 其他说明:此作业占总评的40%,截止时间为2024年10月25日16:00。

    课题设计-基于MATLAB平台的图像去雾处理+项目源码+文档说明+课题介绍+GUI界面

    一、课题介绍 现在我国尤其是北方城市,工业发达,废弃排放严重,这使得雾霾越来越厉害,让能见度极低。这严重影响了我们的交通系统,导航系统,卫星定位系统等,给人民出行,工作带来极大的不便利。目前市场上高清拍摄设备虽然可以让成像清晰点,但是造价高昂。如果有一套软件处理系统,可以实时地处理含雾的图像,让成像去雾化,让图像变得清晰,将会很受欢迎。 该课题是基于MATLAB平台的图像去雾处理,配备一个人机交互GUI界面,可以选择全局直方图均衡化,Retinex算法,同态滤波,通过对比处理前后的图像的直方图,而直方图是一副图像各灰度值在0-256的分布个数的表,信息论已经整明,具有均匀分布直方图的图像,其信息量是最大的。 二、算法介绍 ①全局直方图均衡化:通俗地理解就是,不管三七二十一,直接强行对彩色图像的R,G,B三通道颜色进行histeq均衡处理,然后进行三通道重组; ②Retinex算法:通俗地讲就是,分离R,G,B三通道,对每个通道进行卷积滤波。

    微信支付V2版本的支付接口,java的SDK

    微信支付V2版本的支付接口,java的SDK

    ide-eval-resetter-2.1.14 无限试用插件

    一款IDEA好用的插件,适用于旗舰版,可以延长试用期限,你懂的!

    电力系统继电保护整定及其应用-发电机组与变压器保护

    内容概要:本文详细介绍了发电机组保护整定方法,讨论了发电机可能遇到的故障状态及相应的保护措施,包括定子绕组故障、转子绕组故障、过电流、过电压等情况,并提供了具体的保护配置。接着,对变压器常见故障进行了分类说明,并给出变压器的主保护和后备保护配置方案。文章进一步计算了不同短路点的短路电流,阐述了互感器的选择标准,并举例解释了纵联保护的应用和后备保护的作用。 适合人群:电力系统工程师、继电保护技术人员及相关研究领域的学者。 使用场景及目标:适用于发电厂和变电站的设计、维护和运行人员,旨在提高电力系统的安全性和稳定性。目标是确保电力系统关键设备的安全运行,防止故障的发生,减少事故造成的损失。 其他说明:本文不仅提供了详细的理论分析,还包括了大量的数据计算和实例说明,有助于读者更好地理解和掌握继电保护的相关知识和技术。

    基于C++开发的微商系统项目源码.zip

    基于C++开发的微商系统项目源码 使用技术:C++/Qt、Mysql、TCP/IP 软件架构 三个大端:服务端、客户端(买家端)、业务端(卖家端) PS:需要连Mysql数据库才能正常使用,连接mysql时记得把用户、密码啥的改为自己的数据库信息

    1503ANDH1503002016_20241116222825

    1503ANDH1503002016_20241116222825

    数理逻辑近世代数复习资料,思维导图部分

    数理逻辑近世代数复习资料,思维导图部分

    京东中台业务架构敏捷性方法 MotriDSP 落地实践.pdf

    京东中台业务架构敏捷性方法 MotriDSP 落地实践.pdf

    毕业设计&课设_电影推荐系统项目:Spring Boot 开发,含多种技术,有前端地址,提供开发及部署说明.zip

    该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过严格测试运行成功才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

    CCF会员复习资料(1).zip

    CCF会员复习资料(1).zip

    C#ASP.NET养老院老人信息管理系统源码数据库 SQL2008源码类型 WebForm

    ASP.NET养老院老人信息管理系统源码 这是一款非常优秀的养老院老人信息管理系统。程序功能齐全,可选择性强。 管理员后台: 1、人员信息管理:老人信息管理、管理员信息管理、员工信息管理 2、公寓信息管理:添加公寓楼信息、管理公寓楼信息、添加公寓信息、管理公寓信息 3、公寓安排管理:添加公寓安排、公寓安排管理、缴费管理 4、健康管理信息管理:添加健康管理信息、管理健康管理信息 5、紧急联络人管理 6、意见信息管理 7、公告信息管理:添加公告信息、管理公告信息 8、出入信息管理:请假信息管理、访客记录管理、退住情况 员工后台: 1、人员信息管理:老人信息管理 2、健康管理信息管理:管理健康管理信息 3、紧急联络人管理 4、意见信息管理 5、公告信息管理:管理公告信息 6、出入信息管理:请假信息管理、访客记录管理、退住情况 老人后台: 1、修改个人信息 2、修改登陆密码 3、意见信息管理:发布意见信息、意见信息管理 4、查看公告信息

    走向现代化数据分析架构:趋势与挑战.pdf

    走向现代化数据分析架构:趋势与挑战.pdf

    PHP通用权限管理系统源码数据库 MySQL源码类型 WebForm

    PHP通用权限管理系统源码 安装说明: 1.把管理系统.sql 导入到MYSQL数据库中,把App/Common/Conf/db.php中的数据库名称,账号密码改成自己的。 2.把程序放在二级目录下,如:http://localhost/xcrm/ 账号 admin 密码admin123 3.请使用IE8以上,或是谷歌浏览器。 4.支持环境php+apache,php版本要大于5.3 注意:删除App下面 Runtime 文件夹;如果Linux服务器,需要分配777权限; 修改config.php数据库连接地址:绝对路径 大家在安装的时候遇到问题 1.页面顶部出现空白一行 解决办法:db.php 要以uft8无BOM格式编码 保存 notepad++ 编辑器里 格式 下 2.乱码问题 解决办法:数据库建表的时候选 uft8-general-ci 编码格式 然后点开 SQL 把1,SQL复制进去,执行就可以了 3、如果程序执行时报错? 解决办法:保存PHP>5.3版本 删除App下面 Runtime 文件夹 使用须知:注释:权限管理,修改完用户所属组之后,

    各省电商指数数据(1990-2022).xlsx

    详细介绍及样例数据:https://blog.csdn.net/m0_65541699/article/details/143823092

    会议席卡制作模版,电子表格,方便实用

    席卡制作模版会议较多的单位,经常要打印席卡,本模版可以解决燃眉之急

    从 0 到 1 构建集群服务质量运营体系降低云成本.pdf

    从 0 到 1 构建集群服务质量运营体系降低云成本.pdf

Global site tag (gtag.js) - Google Analytics