Jenkins GSoC 2020 机器学习插件项目

???? GSoc 是什么?

Google 编程之夏(GSoC):Google 编程之夏是一个全球性项目,旨在为学生们和开源、自由软件、技术相关的组织建立联系,让学生们贡献代码并获得报酬!组织会提供导师,在学生从熟悉社区到贡献代码的整个过程中提供指导。这个想法的目的是让学生们参与和熟悉开源社区,并帮助他们充分利用暑假时间去得到锻炼。

大家好!

这是 GSoC 2020 中的 Jenkins 项目之一。我们正在为此 GSoC 2020 使用此新的机器学习插件。这是我在社区关于 GSoC 2020 的故事。我很高兴与您分享我的旅程。

自我介绍和神奇的4位导师

我是 Moratuwa 大学的 Loghi Perinpanayagam。我被选为 Jenkins 的 GSoC 2020 机器学习插件的负责人。我很高兴向我的导师介绍这个项目。我分配了四位导师,他们非常热心地帮助我在今年夏天开发代码。

???? 学生

Loghi Perinpanayagam

???? 导师

  • Bruno P. Kinoshita

  • Ioannis Moutsatsos

  • Marky Jackson

  • Shivay Lamba

去年我的准备情况如何?

我在第二年就了解了 GSoC 开源项目。但是我至少在去年尝试了另一个组织的项目,该项目与《数据科学的数据可视化建议》有关。但是问题是我的贡献不如今年那么大,在申请过程中为时已晚。像往常一样,与其他项目相比,与机器学习相关的项目有很多竞争。我准备学习机器学习中的数据可视化以及推荐系统的现有模型。最后,我当时用 SeqToSeq 模型编写了一个提案,当时对神经网络知识不多。而且我没有通过专用的闲暇渠道进行太多交流。这可能是失败的原因之一。但是主要原因是我对 GSoC 2019 的了解不多。

我如何跨过 GSoC 2020

自从我意识到开源的必要性和对社区的帮助以来,我一直热衷于为开源项目做出贡献。实际上,我于 2019 年在印度班加罗尔完成了实习,我立即专注于参与 GSoC。这是我作为计算机科学理学学士学位课程的学生的最后一年(2020年),我希望今年能被选为学生。

我们部门举办了一次指导研讨会,我知道 Jenkins 已经打开了他们的项目构想。这是我的 GSoC 2020 旅程的一个非常令人印象深刻的开始。我在 jenkins.io 页面上浏览了所有草案并接受了项目。因为我已经对机器学习感兴趣,并且对 Java 很熟悉,所以我选择了最令人印象深刻的想法,因为它没有初始回购协议。这意味着我想利用我的知识对该项目进行很多思考和研究。但是我必须做出贡献,并且想了解 Jenkins 代码库的基础结构。因为这样可以使选择面板易于接洽该项目的学生。然后,我反复搜索为 Jenkins 做贡献。我发现从 git 插件和 git 客户端插件可以轻松解决的问题。我开始在 git 插件和 git 客户端插件上贡献一些测试问题。在清楚了解插件在 Jenkins 中的工作原理后,我开始使用项目构想页面中提供的提示来进行 POC 的工作。实际上,编写代码很有趣。

导师在申请过程中帮助了许多学生。我能够进行工作的 POC,但其执行项目任务的能力最低。最后,导师开始提交提案。我急忙准备提案草案。在得到导师的评价后,我开始改进提案。在提案提交结束时,我能够为该项目提交一个好的提案。当我对这个插件感到好奇时,我深入研究了如何将 Jupyter Notebook 与该插件集成。我在接受等待期间的研究结果发表了一篇中等文章。

结果发布

结果将于 5 月 4 日宣布,我相信我的项目建议和 POC,因此入选了 GSoC 2020。那是我一生中最激动人心的。这种感觉就像我实现的目标。由于我的辛勤工作,我应得的。例如,我花了 7 天的时间使 POC 正常工作,而 Maven 工件之间没有任何冲突。

社区联结

结果发布后,我正在为社区联结做准备。我和导师之间的互动比以前更多了。我不得不在 jenkins.io 中更新项目页面和个人资料。5 月 10 日,我们第一次会面充满了热情和友爱。我和导师介绍了自己,尽管我们彼此认识。我们讨论了 GSoC 的高级观点,并提出了一些我观点中存在的问题。由于我的插件是一个新的存储库,因此大部分讨论都与该存储库及其名称有关。我必须为新插件找到一个名称。最后,我们定期讨论了博客文章和演示文稿。

在第二次会议上,我们讨论了在 Jenkins 中托管新插件,跟踪 JIRA 问题,博客文章和项目高级路线图的过程。我建议了一些有趣的插件名称,但它们与项目目标不符,导师告诉我尝试使用其他名称来完美描述项目。建议我阅读所有研究指南和插件命名约定。我们讨论了如何通过 git 完成代码审查和源代码管理。这次会议之后,我们的会议已转移到 Jenkins Zoom 的正式帐户。

我们的第三次会议对我们的项目计划非常认真。在开会之前,我一直在导师的帮助下为项目准备设计文件。因此,对于第 1 阶段的未来工作,我得到了很多评论和有用的示例。在这一点上,我们决定使用插件名称 Machine Learning Plugin,该插件被所有导师接受,我创建了回购协议,并要求提供 Jira 单据进行插件托管请求。我们计划在未来 3 天内提醒您 Jira 单据。导师希望我确保在社区活动结束之前更新了 Jenkins GSoC 页面。关于会议上周我一直在准备的设计文件的讨论很多。会议记录中的一些要点如下:

  • 在设计文档中定义特征

  • 操作图

  • 插件如何在分布式环境中工作

  • 代码编辑器库

  • 第一个插件版本的要求

  • 博客文章草稿文件

  • 下周我即将开展的工作计划

因此,在这次会议之后,我不得不努力工作,这使我更加深入参与了该项目。我必须付出巨大的努力才能使这个机会变成黄金。我们的团队愿意完成此项目,并且一定会通过此插件为 Data Science 社区提供帮助。到目前为止,我的团队所做的出色工作,对此我表示敬意!!!

到目前为止,这是我的整个旅程。希望您喜欢它,希望您了解我去年犯的错误,并在今年夏天纠正了错误。感谢您的阅读和关注,我将为感兴趣的人上传博客文章。

- 活动推荐 -

Jenkins CLI 命令行 v0.0.29

征集用户故事- Jenkins is the Way

Jenkins流水线与k8s的持续集成落地分享

使用 Prometheus 和 Grafana 监控 Linux 进程

KubeSphere DevOps 初体验,内置 Jenkins 引擎

第11期 Jenkins 社区 2020年 GSoC Phase1 分享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值