你有一个开源项目。你发现如果能将某个功能添加到你的项目中将会非常棒,但你无法证明将其提升到优先级队列是合理的。它显然包含一些核心计算机科学理论,一些老派的黑客技术,并且最终产品将为你的项目(以及可能成千上万人的生活)增加真正的价值。你如何让大学生将其作为一个独立研究项目来承担?
Mel Chua 指出了一个可能的项目,关于活跃的 Fedora 安装数量。她的直觉是说“嗯,如果我还在学校,这正是我可以研究、写论文并上交以获得学分的东西。” 她完全正确——这将是一个很棒的独立研究项目。
以下是将学生纳入你的项目,作为“独立研究”或独立研究/黑客经验的框架的一个路线图。虽然他们可以“仅仅为了人类的更大利益而为你的项目做出贡献”,但现实情况是大学生需要学分才能毕业,而获得毕业学分是四年制本科院校的主要货币之一。(我并不是要排除社区大学或任何其他教育环境——我只是在谈论我目前非常了解的情况。)
你需要做到以下几点:
- 找到一名学生。最好是那种会很乐意为你的项目做出贡献,但到目前为止还没有找到“合适规模”的项目来做的学生。
- 找到一位导师。学生将需要在学校找到一位项目导师。他们应该能够做到这一点。让学生介绍你,然后与教职员工进行对话,了解你想做什么,以及你想如何让学生参与进来。从电子邮件开始,但请记住,你可能正在建立长期的合作关系;如果这次合作成功,你可能会发现自己拥有源源不断的积极贡献者。因此,或许打个电话,确保你了解期望是什么,项目将如何评估等等,这将是个好主意。(关于“等等”可能还有一篇完整的博文。)
- 等待学期开始。现在是 2 月 4 日。(实际上,这取决于我的仁慈的编辑何时发布这篇文章。)在我的学校,“添加/放弃”课程的期限已经结束。如果你带着现金走进门——足以让人们竖起耳朵的那种——我可能能够恳求注册主任现在添加一个项目。然而,注册主任在大学级别是一个非常强大的人/办公室,他们靠他们从不弯曲或打破的规则生存和死亡。
因此,你想要参与项目的学生贡献者已经承担了沉重的课程负担,虽然他们很乐意参与你的项目,但这现在必须等到秋季。虽然夏天会很好,但他们将参加夏季 REU 计划,并且真的没有时间,因为他们将在某个地方进行非常酷的研究,他们有限的空闲时间将与来自全国各地参加该研究的其他学生一起度过。
简而言之,你错过了机会。现在等待。 - 结构,结构,结构。大学生通常时间管理能力较差。我说是通常,但事实是他们有很多事情要做。你需要与他们每周开会,或者他们所在机构的导师会这样做。这并非不合理;他们正在为你的项目增加价值,你也应该对他们进行投资。该项目的重点是让他们既调查项目中的核心概念,又学习一些关于真实世界软件开发的知识。
如果你不能以这种方式指导他们(同样,这取决于你和教职员工讨论的内容),那么也许你不应该与大学生合作。这些学生的努力将在学期末根据他们与你的合作的成功程度进行评分。当他们是志愿者时,你可以随意对待他们——这是你的船,如果你愿意,你可以在上面钻孔。但是当你与我和我的学生合作时,我希望你积极参与,就像我期望我的学生表现出色一样。 - 推广,推广,推广。当学生为你的项目做出贡献时,请突出显示它。这可能是他们第一次踏入社区 FLOSS 开发的世界。你扩大了我们的基础。这是一件大事:发推文,写博客,确保他们在发布说明中。
这为学生未来的面试提供了素材,然后他们可以指出你对他们努力的认可。同样,如果你正在与一位正在“终身教职轨道”上的教授合作,你应该给他们发送一封电子邮件——一封纸质信件会更好——感谢他们在介绍学生了解历史上最强大和最重要的软件运动之一方面提供的支持。尽情赞美。教职员工将在他们的晋升过程中使用这一点,以说明他们如何为学生提供出色的、真实的学习机会。
关于这个话题还有很多话要说。例如,教职员工已经有他们自己的研究议程,他们必须在上面发表文章(黑客软件很少算数——改天再讨论)。他们通常在寻找与他们合作的学生,而不是与你合作的学生。所以你正在尝试利用有限的资源(专注、勤奋的本科生),最终你需要带来价值。换句话说,我,作为一个忙碌的大学教授,为什么要指导为你的项目工作的学生,而他们可以为我工作呢?
1 条评论