< 返回版块

hsluoyz 发表于 2021-01-03 10:41

Tags:casbin,gsoc,实习

Casbin明日之星预选生计划-Talent for Casbin 2021

“Casbin明日之星预选生计划-Talent for Casbin 2021”是什么?

“Casbin明日之星预选生计划-Talent for Casbin 2021”(以下简称 Talent 2021)是由Casbin开源社区举办的一项面向高校学生的编程活动,旨在鼓励在校学生积极参与Casbin社区旗下开源软件的开发维护,促进国内优秀开源软件的蓬勃发展。

2020年,Casbin以开源社区的身份首次参加了由Google公司主办的Google Summer of Code 2020 和由中科院软件所、OpenEuler社区主办的开源软件供应链点亮计划-暑期2020 。在上述活动中,Casbin社区共派出7位来自国内外(中国、法国等)互联网一线的资深社区导师,共培养、指导了国内外15名学生(14位中国同学、1位印度同学)进行为期3个月的开源编程活动。Casbin项目已毕业的同学,有的成长为Casbin项目核心维护者、以开源大牛的身份活跃于GitHub,有的毕业后全职加入腾讯微信事业部等互联网头部公司,有的凭借在Casbin社区的出色经历拿到微软印度研究院(Microsoft Research India) 的offer,在工业界和学术界发挥着重要作用。

为了在非暑期时间能够继续促进Casbin开源软件的发展,同时挖掘有潜力的学生作为明年Google Summer of Code 2021和暑期2021(若该赛事仍举行并且Casbin社区获得参加资格)的有力竞争者,Casbin社区将自筹资金,在Google Summer of Code等活动的闭幕期间,开展常态化的“Casbin明日之星预选生计划-Talent for Casbin 2021”活动,针对Casbin社区旗下开源软件的开发与维护提供 mini 项目,并向全国高校学生开放报名。学生可自主选择感兴趣的项目进行申请,并在中选后获得该软件资深维护者(社区导师)亲自指导的机会。

根据项目的难易程度和完成情况,参与者可获取“Casbin明日之星预选生计划-Talent for Casbin 2021”活动奖金和加盖Casbin社区公章的参与(实习)证明。

“Talent 2021”项目在今年和明年(2020-2021)首次举办,与Google Summer of Code等活动类似,不同点是“Talent 2021”在非暑期时间举行,与GSoC等活动是互补的关系。

  1. Casbin明日之星预选生计划-Talent for Casbin 2021 官网:https://github.com/casbin/Talent2021
  2. Google Summer of Code官网:https://summerofcode.withgoogle.com/
  3. Google Summer of Code中文介绍:https://github.com/gsoc-cn/gsoc-cn 或 https://zhuanlan.zhihu.com/p/27823910 或 https://zhuanlan.zhihu.com/p/27330699
  4. 开源软件供应链点亮计划-暑期2020官网:https://isrc.iscas.ac.cn/summer2020 或 http://www.iscas.ac.cn/xshd2016/xshy2016/202004/t20200426_5563484.html

活动的主要参与方有哪些?

活动组织方:Casbin开源软件社区。

活动参与方主要角色为学生和导师。

  1. 学生:学生自由选择项目,与导师沟通实现方案并撰写项目计划书。被选中的学生将在导师指导下,按计划完成开发工作,并将成果贡献给社区。社区评估学生的完成度,主办方根据评估结果发放资助金额给学生。
  2. 社区:社区提供项目列表和描述,并安排项目对应的导师,导师与申请者沟通方案、并从申请者中选中一位承接项目。在为期三个月的开发周期中,导师指导学生进行对应项目的开发工作。
  3. 导师:社区针对每一个项目指定一个导师,与学生一起制定合适的开发计划和方案,指导学生按计划完成开发。

本项目的资助额度是多少?

资助金按月发放,分为基础资助金:500元 + 奖金:0~500元 (均为每月税后,根据上手快慢程度及技术栈匹配程度会有浮动,项目开始前会协商好。)

Casbin开源项目介绍

Casbin是一个强大的、高效的开源访问控制框架。涉及到Go, Java, Node.js, Javascript (React), Python, PHP, .NET, C++, Rust等多种语言。Casbin由北京大学罗杨博士创立于2017年,核心维护团队有数十人。Casbin在业界具有广泛影响力。目前已经被Intel、VMware、Orange、RedHat、T-Mobile等公司开源使用,被腾讯云、Cisco、Verizon等公司闭源使用。具体详见Casbin主页。Casbin Go主项目目前GitHub 7700+ stars,加上所有语言的实现、插件等可达到10000+ stars。Casbin曾经在国际上多次宣讲:

  1. 新加坡政府技术部门Open Government Products:https://www.youtube.com/watch?v=OTT84oplR9o
  2. 俄罗斯最大在线旅游平台tutu.ru:https://www.youtube.com/watch?v=Z5dUxH4PqYM

具体请了解Casbin官网:https://casbin.org/

可选项目列表

4. Casbin-RS 生态完善(Rust)

  1. 项目标题:Casbin-RS 生态完善(Rust)
  2. 项目描述:Casbin在初始化时将规则集装载到内存中,在规则集发生变更时将该次变更持久化到文件或者数据库等媒介。我们希望在此基础上: 1)基于Raft协议实现单机、分布式环境中不同Casbin实例的规则集同步;2)探索如何将规则集分组,映射到不同节点,使特定规则集的增,删以及某个请求的权限计算都在正确的节点进行,以此减轻单机的内存压力
  3. 项目难度:高
  4. 项目社区导师:江成 (GopherJ)
  5. 导师联系方式:cocathecafe@gmail.com
  6. 合作导师联系方式(选填):无
  7. 项目产出要求:
    • 基于Raft, Tcp (with TLS)实现单机、分布式环境中不同Casbin实例之间的规则集同步
    • 正确,充足的单元/集成测试,确保Casbin在分布式环境下运行的正确性
    • 支持动态增、删节点(AKA. dynamic membership)
    • 探索如何将规则集分组,映射到不同节点,确定规则集的增,删以及某个请求的权限计算都在正确的节点进行,以此减轻单机的内存压力
    • 解决Casbin Rust主仓库&相关仓库中的issues:https://github.com/casbin/casbin-rs/issues
  8. 项目技术要求:
    • 熟悉Rust语言
    • 熟悉Git、GitHub相关操作
  9. 相关的开源软件仓库列表:
    • https://github.com/casbin/casbin-rs
    • https://github.com/casbin-rs

所有可选项目详见:https://github.com/casbin/talent2021#可选项目列表

候选人要求

工作职责:

  • 每周与项目导师进行线上讨论,完成项目规定的开发任务。项目导师由开源项目创始人或其他核心成员担任;
  • 积极参与开源社区的建设,参与代码提交、解决Issue、审核PR等日常工作;
  • 配合完成官方要求的材料提交等事项,包括项目申请书撰写、社区反馈任务完成度追踪等。

职位要求:

  • 本科、硕士或博士(已毕业、工作的无法参加GsoC,只能获取奖金及参与证明。);
  • 对开源软件、开源社区感兴趣;
  • 熟悉一种或多种编程语言,有较强的工程能力,代码格式清晰规范,善于团队协作;
  • 有一定英文读写能力,能够熟练运用英语在GitHub进行开发、协作;
  • 较强的沟通能力和逻辑表达能力。

具有以下条件者优先:

  • 熟悉Go, Javascript、React等语言或框架、分布式系统、微服务架构,有相关项目经验;
  • 在GitHub较为活跃,有自己的开源项目,或参与过知名开源项目;
  • 可以在项目结束后继续长期参与开源社区的开发、建设或维护。

投递要求

申请学生需要同时完成以下“联系社区”和“官网投递”两个环节:

1. 联系社区(2020年12月1日 - 2021年1月31日)

  1. 加入《Casbin访问控制社区群》(QQ大群):546057381
  2. 加入《Casbin明日之星预选生计划-Talent for Casbin 2021-群》(QQ小群):540163681 ,联系导师,与导师沟通项目细节和方案,完善项目申请书

2. 官网投递(2020年12月1日 - 2021年1月31日)

发送【中文简历PDF】至Casbin社区官方邮箱:admin@casbin.org

评论区

写评论

还没有评论

1 共 0 条评论, 1 页