开源工作程序:项目领导指南

CC参与开源工作计划,如GSoC和outreach。欢迎CC员工和社区成员领导项目。关于具体项目和回合的详细信息列在概述页面;这个页面作为一个一般的项目领导指南。

考虑成为项目负责人?

领导一个项目是一个严肃的承诺,但也是一个非常有益的经验。如果你正在决定是否成为项目负责人,请阅读以下文件:

如果你想成为一个项目主管,但在脑海中没有一个具体的项目,发邮件给CC开发者邮件列表让我们知道你的技能和可用性。我们看看有没有你能帮忙的项目。如果您想提出一个项目,请继续阅读。

提出了一个项目

如果您想为投稿者提出一个项目,请使用以下模板并将您的想法发送到CC开发者邮件列表.CC的工作人员会回复你这个项目是否可行,以及下一步该如何推进它。

(项目名称)

  • 这个问题描述需要解决的问题,以及为什么它对CC很重要。
  • 预期的结果描述你希望看到的这个工作计划的结果。
  • 贡献者的任务在工作计划期间,贡献者将被期望做什么?
  • 应用程序提示你在贡献者的项目计划中寻找什么?
  • 资源与此项目想法相关的资源列表。GitHub问题,规范,文档。博客文章等。
  • 项目领导谁将是这个项目的项目负责人?
  • 技术技能这个项目需要什么技术技能?
  • 困难这个项目在技术上有多困难?选项:高,中,低
  • 大小可选:大型(约350小时)或中型(约175小时)。

请注意,项目想法应该与现有的CC开源项目或网站相关,并且应该明确范围。对于一个几乎没有经验的贡献者来说,他们应该可以在3个月内完成。

应用程序时间

一旦最初的申请期开始,事情会变得有点混乱,因为数以百计的申请人会调查各种开源社区,试图为它们做出贡献,并找到适合工作计划的人。有很多电子邮件、Slack消息、GitHub评论等等。这个阶段的课程是最紧张的,持续大约一个月(尽管最初的几天是最紧张的)。

一些建议:

  • 提前做好准备。
  • 为第一次投稿的人准备一套好的、记录良好的任务,你可以向他们指出这些任务。
  • 引导人们使用公共渠道,远离电子邮件和dm,这样其他人也可以回答问题。
  • 你会遇到很多不费力的问题,比如“我该如何开始”——询问更多的细节。你不可能花20分钟帮助每一个人,因为人太多了,所以帮助他们自助。
  • 提前准备一般文档/常见问题。

应用程序草案

你应该鼓励申请人提前与你分享申请的草稿。使用启用注释权限的谷歌Doc可能是实现协作的最简单方法。专注于确保他们对项目、项目计划、时间表和可交付成果的理解与你的想法相符,并且是可行的(记住,他们可能对所有这些都是新手,可能无法快速完成任务)。

工作计划时间

准备

工作计划开始前:

  • 提前和你的后备主管谈谈,制定一个如何合作的计划:
    • 谁将对什么负责?
    • 签到和票据如何操作?
  • 如果你的项目影响或涉及到CC的其他非项目负责人,和他们谈谈他们想如何参与进来,并提出一个合作计划。

Post-Announcement

一旦选定的贡献者被宣布:

  • 尽快联系你的贡献者。
  • 尽快获取投稿者的t恤尺寸和地址,并将其发送给项目协调员(我们尽量发送CC赠品)。
  • 再次审查建议,确保实施细节和每周交付的成果是可行的和深思熟虑的。可能有一些东西需要澄清或更改——在实际开始任何工作之前,与贡献者一起修复这些项目。
  • 和贡献者打个介绍性电话,互相了解。问他们关于他们自己的问题,也谈谈你自己。
  • 安排定期会议:每周与项目负责人进行一次视频通话,与项目协调人进行每月电话通话,与项目协调人进行检查。
  • 创建一个文档来保存任何项目信息和注释。该文件应与项目协调人共享。
    • “最终的”实现计划和每周里程碑(“最终的”是因为它会在编码期间根据进度进行更改)
    • 投稿人的联系信息和紧急联系方式
    • 所有会议笔记
    • 任何其他与项目相关的信息。
  • 与贡献者一起决定项目将遵循的工作流。如。
    • 贡献者是否理解常规的git工作流程(例如,pull requests, branch, review)?
    • 代码应该多长时间检查一次?所有的代码都需要检查吗?
    • 代码应该多久提交一次?是否所有代码都需要使用pull请求,或者有些代码可以直接推到master?
    • 贡献者会直接提交到托管在CC GitHub上的存储库,还是使用fork?
    • 当贡献者陷入困境时,让他们引起你注意的最好方法是什么?
    • 在开发过程中,他们的项目将部署在哪里(如果适用的话)?
  • 让投稿者知道他们需要定期在cc技术博客上发布他们项目的更新。确定博客文章的发布节奏(至少应该每两周发布一次),并设定截稿日期。
  • 帮助贡献者建立他们的开发环境。
  • 确保贡献者有权限推送到适当的GitHub存储库。

工作期间

工作计划期间:

  • 参加你的每周登记。
    • 做好笔记,这样在你有事的时候,你的后备线索就可以很容易地从你落下的地方开始。
    • 确保贡献者每周都能完成他们的里程碑,如果没有,和他们一起找出原因,并制定一个计划。
    • 询问投稿人的总体情况。
    • 赞扬他们做得好的事情,对他们可以改进的事情提供建设性的批评。这两者都很重要。
  • 及时检查所有工作/代码。你应该在一个工作日内审查。
    • 如果您的贡献者因为其他原因被阻塞在他们的工作上,尽快帮助他们解除阻塞。
  • 每隔一到两天在Slack上与贡献者联系一次。记住,他们通常对所做的工作没有经验,可能不知道如何寻求帮助,或者可能被困在一些他们不能很好地表达的事情上。
  • 作为项目负责人,每隔几周询问一次反馈。
  • 找个机会邀请你的投稿者在CC的全体员工会议上展示他们的工作。你想什么时候做就什么时候做。
  • 确保你熟悉课程时间表,并按时提交所需的评估。
  • 让贡献者加入更大的CC开发社区。鼓励他们分享他们的工作,和他们谈谈其他项目和你自己的工作。
    • 确保项目的开发版本尽快部署到某个地方,以便他们能够从社区中寻求反馈。
  • 与CC员工、工程团队和项目协调人一起制定计划,在项目完成后将项目转移到生产环境。
  • 定期与任何与投稿人一起工作的CC人员联系,以确保投稿人也听到并执行了他们的反馈。
  • 主动与项目协调人沟通。特别是如果:
    • 你的投稿人没有经常活跃和参与。
    • 您的贡献者没有充分沟通或错过签入。
    • 你有顾虑,甚至只是对某事有不好的感觉。
    • 你对程序过程的任何部分都有反馈或问题。
    • 你希望得到关于你作为项目负责人的角色进展如何的反馈