Google Summer of Code 建议被接收的5个技巧

本文翻译自:http://www.di.ens.fr/~baghdadi/TXT_blog/5_advices_to_get_your_proposal_accepted.lyx.html

本文讲的主要是GCC项目,但是这些技巧也适用于其它的项目。

1. 黄金法则:尽早开始。你越早开始研究你的建议,你被接受的可能性就越大。

2. 注重质量:你应该关注较少的项目,如果你关注大量的项目,那么你提出的建议的质量肯定会下降。 以我来说,我清楚地知道我想要做什么,所以我只需要为唯一的建议而工作。 提出一个出众的建议非常重要。

3. 参与到项目中:

3.1 订阅邮件列表,并且提问和回答问题;

3.2 如果项目有每周的电话会议或者IRC频道,那么你最好也参与到其中(这里是GCC/Graphite的每周电话会议链接)。

3.3 阅读项目的介绍文档,熟悉项目的代码和代码规范

3.4 参与到该项目的社区中

3.5 添加简单的功能到该项目中,解决简单的bug,写一些早期的代码

3.6 发送一些补丁并得到反馈,如下两个原因说明这很重要:

3.6.1 如果你之前没有参与过该项目,那么早期的开发工作会帮助你更好的理解一个内部代码,从而帮助你确定每一阶段需要的时间。

3.6.2 通过早期的开发,你看起来在说:”嗨,我可以做,我的补丁就是证明“

3.6.3 你的代码必须符合该项目的代码规范,在你提交第一个补丁之前一定要确定你读过该项目所有的代码标准。Sebastian POP 已经开发了一个脚本,它可以帮助你检查你的代码(如果你是参与的GCC的项目的话)。

4. 讨论你的想法:

4.1 你的想法是否与项目相关?你如何计划完成这项工作?里程碑是什么?

4.2 寻求关于你的想法的反馈,这对于你的程序来说是十分重要的。该项目的开发人员会帮助你调整完成每个里程碑至少需要的时间,以及你是否能在Google Summer of Code期间完成该项目,有时候一些学生非常乐观 :)。

4.3 讨论一些技术细节,例如如何测试你的程序?如何使用项目的测试框架对你的程序进行测试?你是否需要编写自己的测试用例?

4.4 确定优先顺序,在GSoC后期什么应该被推迟,什么是可选的?确定你能完成你的目标。最好是编写一个小巧的,可靠的,容易理解的,文档化的代码,而不是有很多bug,难以理解的代码。质量十分重要。

讨论你的想法是编写建议之前非常重要的步骤。

5. 编写建议书:

5.1  明确地描述你的想法:

5.1.1 想法本身

5.1.2 该项目的益处?它为什么重要?

5.1.3 技术细节:技术细节表明你清楚地你想做的。

5.1.4 描述你可能遇到的问题以及你打算如何去解决?

5.2 包含具体的工作计划:什么时候做什么?

5.3 个人简历章节:

5.3.1 表明你已经参与过一个类似的项目对你的帮助很大。

5.3.2 而且,一个好的简历,很好的展示了你对该项目非常熟悉,而且你已经贡献过一些补丁,你已经准备好来高效地工作了。

6. GCC GSoc 建议示例

这里有一些关于GCC项目已经被接受的建议:

6.1 我的建议书(GSOC'10):PDF

我大概花了1个月来明确我的想法,并且编写建议书。我与Sebastian POP(来自AMD)Tobias Grosser (来自德国Passau大学)和 Albert Cohen (来自INRIA),讨论了很多细节。

6.2 Lee Feng的建议书(GSOC'09):PDF

6.3 Tobias Grosser的建议书(GSOC'08):Web Page(现在是404)

其它关于Nmap项目的示例:

6.4 Djalal Harouni的示例(GSOC'10):PDF(现在是404)

6.5 Djalal Harouni在GSOC'11提出的建议也被接受了,如果想获得他的建议书,请联系他。

6.6 David Fifield的建议书(GSOC'07):Web Page

7. 常用的链接

7.1 http://drupal.org/node/59037

7.2 http://shlang.com/writing/soc2005.html

7.3 http://weblogs.mozillazine.org/gerv/archives/2006/05/how_not_to_apply_for_summer_of.html

7.4 http://summer.cs.pdx.edu/propose

8. 翻译

如果你想将翻译这些技巧来帮助你的国家的学生,请将翻译的页面和你的主页发送给我,我将他们添加到这里。

8.1 阿拉伯语 翻译:链接

8.2 日语 翻译(多谢 Naohiro Aota):链接

8.3 本文的英文镜像:OpenDZ network

8.4 你也想翻译?

9. 致谢

我想要感谢Brendan和Sergej的给我的反馈。

10. 反馈

如果你想要参与Google Summer of Code, 告诉我你的故事,我可以将其添加到成功地示例中。如果你有其他的建议请告诉我。

10.1 Web Page: Riyadh BAGHDADI

10.2 Email: riyadh.baghdadi [AT] inria.fr

作者:loverszhaokai 
出处:http://www.cnblogs.com/lovers

Google Summer of Code 建议被接收的5个技巧的更多相关文章

  1. 使你的 Google Summer of Code 建议被接收的5个技巧

    本文翻译自:http://www.di.ens.fr/~baghdadi/TXT_blog/5_advices_to_get_your_proposal_accepted.lyx.html 本文讲的主 ...

  2. What is Pay Me to Learn——Google Summer of Code 2013

    原文链接:http://zhchbin.github.io/2013/10/17/what-is-pay-me-to-learn/ 背景 今天早上才想起来,自己还欠着一件事情没有做完.很久在人人上之前 ...

  3. Google Summer of Code 2017 经验谈

    Google Summer of Code (GSoC) 2018 又要开始了. 如果想实现你心中的开源梦想, 用代码让世界变得更美好. 参加GSoC可能是你进入开源的世界最好途径. GSoC是什么 ...

  4. Google Summer of Code礼包

    这个暑假参加google summer of code, 给Google的分布式容器管理系统kubernates开发新的特性,希望从中学习更多的分布式的技术,锻炼自己的编程技巧. 中午在学校的图书馆吗 ...

  5. 做一名开源社区的扫地僧——从Bug report到Google Summer of Code(GSoC):从200个bug到5000美金

    今年的软件自由日(SFD),我在广州Linux用户组的线下活动上做了一个分享,主题叫做<做一名开源社区的扫地僧(上)>.我把演讲的内容重新整理扩充, 写出了文字版, 希望可以跟更多朋友分享 ...

  6. 倒计时第3天!Google Summer of Code报名即将截止!(Casbin社区还有空缺名额)

    Google Summer of Code 介绍 Google Summer of Code ( GSoC ,即 Google 编程之夏)是 Google (谷歌)组织并提供经费,面对全球在读学生的在 ...

  7. vs code的使用与常用插件和技巧大全总结

    vs code的使用与常用插件和技巧大全总结 Author:3# 一个专注于web技术的80后 我不用拼过聪明人,我只需要拼过那些懒人 我就一定会超越大部分人! CSDN@ 极客小俊,CSDN官方首发 ...

  8. Google开发者大会:你不得不知的Tensorflow小技巧

    Google开发者大会:你不得不知的Tensorflow小技巧 同步滚动:开   Google Development Days China 2018近日在中国召开了.非常遗憾,小编因为不可抗性因素滞 ...

  9. Google Chrome 源码下载地址 (Google Chrome Source Code Download)

    1. Google Chrome 源码 SVN 地址:http://src.chromium.org/svn.包含有 Chrome.Gears.Webkit.GCC 等源码以及编译依赖工具.Chrom ...

随机推荐

  1. qml动画控制器AnimationController

    AnimationController: 一般的动画是使用定时器来完毕的,可是AnimationController同意给定的动画,手动控制,能够通过控制她的progress属性来操作动画的进度. c ...

  2. 数据结构(C达到)------- 双链表

    双链表中的每个节点包含两个指针域,指针域包含其后继节点的内存地址,还有一个指针所存储的存储器地址其领域前驱节点. 双向链表结点的类型描写叙述: //双向链表的类型描写叙述 typedef int El ...

  3. Java和C#的socket通信相关(转)

    这几天在博客园上看到好几个写Java和C#的socket通信的帖子.但是都为指出其中关键点. C# socket通信组件有很多,在vs 使用nuget搜索socket组件有很多类似的.本人使用的是自己 ...

  4. 我的第一次windows规划

    #include <windows.h>   LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; //WinMain功能被分配一 ...

  5. Java 新特性(5) - Java EE 5 新特性

    Java EE 5 由 Java Community Process 通过 Java Specification Request 244 发布,这个 “总纲” JSR 指出了详细描述 Java EE ...

  6. 他们控制的定义-DragButton

    一个.叙述性说明 可拖动Button 两.无图无真相 这是用在实际工程效果图.和demo不太一样. 三.源代码 https://github.com/mentor811/Demo_DragButton ...

  7. slf自己主动绑定实现类过程推断

    依照绑定实现类的方式是基于约定原则:推断分下面几个步骤 1.LoggerFactory扫描实现类路径有几个实现类,即在org/slf4j/impl/下有几个StaticLoggerBinder.cla ...

  8. SQL Server BCP使用小结

    原文:SQL Server BCP使用小结 用法: bcp {dbtable )   );GO--输出XML格式化文件--说明一下:-t","是指定字段分隔符,稍后我们会讲到exe ...

  9. linux下各种文件格式的压缩以及解压缩命令

    From : http://blog.csdn.net/mu0206mu/article/details/17732857 -------------------------------------- ...

  10. Java它配备了一个很好的工具2

    Jconsole 本机java自带的系统monitor具,它也可以连接到的本地远程连接java process,联系java process申请后可查看CPU,内存,主题.GC事件,能帮忙看看系统是否 ...