当前位置:网站首页>Interview | with questions to learn, Apache DolphinScheduler Wang Fuzheng
Interview | with questions to learn, Apache DolphinScheduler Wang Fuzheng
2022-08-02 14:01:00 【open source society】
| 转载自:开源之夏
| 责编:沈于蓝
| 编辑:胡欣元
| 设计:王福政
本期专访来自 Apache DolphinScheduler Contributor 王福政.
01
自我介绍
我与开源
深入体验
Q
你眼中的开源是什么?是什么让你决定参与开源?
A
大家好,我是王福政.目前是开源社正式成员,也在白鲸开源担任实习生.
起初我对于开源的理解,可能只是一些技术大神把自己的代码公开,或者说作为一些开源项目的使用者从 GitHub 之类的代码托管平台来查阅代码.但实际深入了解之后就会发现,开源不仅仅是代码,更多的是“社区”.说大一点的话,可以是一种文化,或者说是一种信仰也不为过!
引用 Florian Effenberger 在《开源 Community 对我来说意味着什么》中的一段话:“我对开源所带来的一切都充满了好奇和兴奋,这不仅仅是在项目和代码,而且也有用户和决策者们的想法和思考,还有那些我目前无法用语言所表达的东西.我们所有人都是受益者,至少是间接的,这都得益于项目自身所达到的成就,以及项目背后驱动它们的人.”
Q
在你第一次深入参与开源项目后有什么感悟?
A
我对于开源的进一步了解起源于 Wuhan2020 这个开源项目.2020 年初,新冠疫情肆虐,每天看着不断增长的感染人数,当时就在想,为什么我不是学医的,待在家里什么都做不了,似乎捐钱变成了最可悲的方式.
不过,一次偶然的机会了解到这个项目.让我意识到作为一名开发者,可以用自己的方式来为社会贡献出一份力量.在参与当中会发现,里面除了有从事开发的大神之外,还有做设计的,还有在校学生等等.这一次,让我明白了原来开源不仅仅是代码,参与开源的方式是多种多样的,开源社区也是丰富多彩的.就像 Apache Way 所说的:“Community over code”.
02
参与开源之夏
初遇开源之夏
持续输出和学习
Q
为什么选择开源之夏?项目成果为你带来了什么?
A
由于我本人是不喜欢强迫自己做不太感兴趣的事情,所以对于学校方面的一些比赛都不太积极.但开源之夏不一样,开源之夏在国内是非常有名的开源活动,而且主要面向的是在校学生.其中包含了许多著名的开源社区和项目,作为学生参与进来除了能学习到如何正确参与开源,还能锻炼自己的能力,以及与社区导师沟通.
我在去年参与了 Apache DolphinScheduler 社区的【文档·DolphinScheduler 微内核架构相关文档翻译】项目.
DolphinScheduler 当时处于微内核+插件化的架构更改之中,所有核心功能如任务类型、资源存储和注册中心等都将被设计为扩展点,通过 SPI 来提高系统的灵活性和扩展性.通过阅读相关源码以及进行测试,进一步完善了文档,并进行了翻译.在完成文档工作之外,对系统有了一定的了解之后,还会参与社区的答疑和测试,可以让更多的同学熟悉和使用 DolphinScheduler.
由于 DolphinScheduler 系统本身比较庞大,如果单单只是靠学校的知识是无法深入学习的.我认为比较好的学习方式是带着问题去学习,这样的话,当自身知识掌握的越多,发出的疑问也会越多,从而可以进一步去更加深入,而这一点对于大多数开源项目来说都是所具备的.
03
开源项目经历
社区经历
不一样的实习体验
Q
开源之夏结束后你有继续参与开源社区吗?对于在校生来说,怎样才能更快更好地融入社区呢?在你参与不同开源组织的过程中,有什么特别的经历、体验或者收获想跟大家分享么?
A
After completing the task of "summer of open source,我继续留在了 DolphinScheduler 社区.
Apache DolphinScheduler 是一个分布式易扩展的可视化 DAG 工作流任务调度开源系统.解决数据研发 ETL 错综复杂的依赖关系,不能直观监控任务健康状态等问题.DolphinScheduler 以 DAG 流式的方式将 Task 组装起来,可实时监控任务的运行状态,同时支持重试、从指定节点恢复失败、暂停及 Kill 任务等操作.
DolphinScheduler 是一个非常友好的社区,对于想参与到项目的同学来说,可以在 issue 列表中寻找 good first issue.然后从中选择适合自己的即可.通常来说,如果是第一次尝试提交代码的同学,可以选择一些比较简单的,通过提交对应的 pull request 来熟悉社区所设置的 CI.在此过程中,会得到社区导师们的帮助和审核.如果遇到了一些问题,可以大胆地在 issue 或者社区的 Slack 中请教,当看见自己所提交的内容被 merge 的时候,那一份喜悦是无法替代的.而且 DolphinScheduler 是一个大数据调度系统,在使用的过程中也会学习到不同类型的任务组件的作用,由此可以进一步巩固自己的技术栈.
除了参与到 DolphinScheduler 之外,我还有参与到开源社和 Apache Local Community —— Beijing 的志愿者工作.开源社是由志愿贡献与开源事业的个人成员,依 “贡献、共识、共治” 原则所组成,始终维持厂商中立、公益、非营利的特点,以 “立足中国、贡献全球” 为愿景,旨在共创健康可持续发展的开源生态,推动中国开源社区成为全球开源体系的积极参与及贡献者.在参与志愿工作的时候,会发现在这里有更多一点的“社区味”,在这里会认识志同道合的朋友,会获得与开源大牛沟通的机会,更会在思想上碰撞出不可思议的火花!如果感兴趣的同学可以关注一下在今年 10 月 15 日所举办的中国开源年会~
而且还有一点比较有意思的是,开源的推广更像是一种“推坑”.起初自己对于开源是好奇和懵懵懂懂,当通过探索和请教社区导师之后,会有一种拨云见日的感觉,这种喜悦感会抑制不住的和周围的同学分享,而分享的过程在无形之中可能会拉更多的小伙伴“入坑”.
04
收获和寄语
受益于开源
Q
你认为在校生参与开源有什么优势和收益?为开源之夏的学弟学妹加加油吧!
A
我认为在大学阶段接触到开源是一件非常值得自豪的事情.由于大学生有着充裕的课余时间,可以用来选择和学习自己所感兴趣的技术,当自身有了一定的积累之后,进而可以通过开源这一根无形的绳来牵引着,寻找到适合自己的项目.可能在一开始参与过程中有很多顾虑和担心,怕自己所问的所想的太简单,怕自己做的不对等等,但这些都是很正常不过的事情.对于学生阶段而言,有着大量的试错机会,我们要学会在错误中总结,在错误中成长,久而久之会逐渐熟悉项目的业务逻辑.
而且大部分开源项目背后都有相关的商业公司所支持,这也就意味着参与开源可以更有助于拿到自己想要的工作.从事开源的项目,肯定是自己所擅长或者是感兴趣的,既然可以变成自己所从事的工作,也是一番不错的收获.开源公司在一定程度上会消除距离上的限制,可以实现远程办公和异步沟通.但这并不会影响办公效率,也正是因为异地的原因,在描述问题的时候会更倾向于描述全面而具体,这样一来也会得到更精确的反馈,减少了在沟通问题上浪费时间.
对于刚参与到开源之夏的学弟学妹们,可以先熟悉所在社区的基本制度,比如使用邮件交流,然后积极与导师沟通联系,除了所选题目的问题之外,还可以请教一些关于开源文化或者项目发展的历程,这些都可以帮助你们更深入了解项目.最后,希望学弟学妹们此次的开源之旅都有所收获,感觉还不错的话,可以继续贡献自己的力量!
相关阅读 | Related Reading
一份开源领域知识的学习清单
第二届中国Rust开发者大会(RustChinaConf 2021~2022)线上大会正式开启报名
定了!就在7月30日!
本文分享自微信公众号 - 开源社KAIYUANSHE(kaiyuanshe).
如有侵权,请联系 [email protected] 删除.
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享.
边栏推荐
猜你喜欢
binary search && tree
关于市场后市的发展预测? 2021-05-23
How to do short video food from the media?5 steps to teach you to get started quickly
政策利空对行情没有长期影响,牛市仍将继续 2021-05-19
多个驻外使领馆发提醒 事关赴华出行、人身财产安全
史上最全!47个“数字化转型”常见术语合集,看完秒懂~
【C语言】函数哪些事儿,你真的get到了吗?(1)
保姆级教程:写出自己的移动应用和小程序(篇三)
如何解决1045无法登录mysql服务器
How to create short images and short videos from the media?How to make the click volume reach 10W?
随机推荐
巴比特 | 元宇宙每日必读:蒂芙尼宣布推出限量版 CryptoPunk 定制吊坠
【C语言】手撕循环结构 ——do...while语句及循环练习题(1)
WiFi Association&Omnipeek抓包分析
关于市场后市的发展预测? 2021-05-23
FFmpeg AVPacket详解
【C语言】虐打循环练习题(2)
Kunpeng devkit & boostkit
第二届中国Rust开发者大会(RustChinaConf 2021~2022)线上大会正式开启报名
rust使用mysql插入数据
好用的php空间,推荐国内三个优质的免费PHP空间[通俗易懂]
基于深度学习的图像检索方法!
Interviewer: Can you talk about optimistic locking and pessimistic locking?
SQL函数 UNIX_TIMESTAMP
乐心湖‘s Blog——MySQL入门到精通 —— 囊括 MySQL 入门 以及 SQL 语句优化 —— 索引原理 —— 性能分析 —— 存储引擎特点以及选择 —— 面试题
数据机构---第六章图---图的遍历---选择题
How to do short video food from the media?5 steps to teach you to get started quickly
你真的懂单例模式么
RowBounds[通俗易懂]
【C语言】手撕循环结构 —— for语句
RKMPP API安装使用总结