For the original English version on which this document is based, please see: Drupal Contribute Workshops: activities.
此Wiki为Drupal协同贡献聚会/Drupal Contribute Workshops中活动安排的协作策划页。
如何开始? 请参阅参与Drupal社区。
Drupal的最伟大之处在于Drupal 社区,而不是软件本身。实际上培养Drupal社区比管理代码库更重要。
- Drupal创始人Dries Buytaert。详见Drupal社区参与指南。
为什么贡献Drupal代码?请参阅Drupal社区参与指南。
Drupal的成功首先要归功于贡献者的诸多协同合作。
为什么举办Drupal协同贡献聚会?
在新的Drupal开放日:DrupalConTribute文章中已提出与Drupal协同贡献聚会相近的概念。本文档主要关注这场聚会的活动类型,作为对《新的Drupal开放日:DrupalConTribute》的补充。
本文档主要向Drupal协同贡献聚会的(潜在)参加者们指出可以对Drupal进行哪些贡献、具体怎么操作。其他如After Party、聚会现场的食物等问题不在此讨论。
想要了解更多本次Drupal协同贡献聚会背后的故事,请看新的Drupal 开放日:DrupalConTribute。
我们希望参与者各自具备不同的优秀技能,为社区做出多种贡献。
帮助定义Drupal 协同贡献聚会的Drupal贡献范围 (基于Drupal参与方式):[TOC/Index]
- 编写代码,测试,汇报
- 发现,学习/研究:提供教程并组织培训
- 评论及支持:同行代码审查,通过drupal.org/IRC/IM/QQ群等提供支持
- 视觉优化:设计/用户体验/用户界面/主题优化
- 技术优化:修补漏洞,维护模块,贡献代码
- 知识转化:文档/翻译
- 实际应用:发起项目,协同合作
- 集思广益:欢迎意见和建议
1 - 编写代码,测试,汇报
Drupal社区最大的优点之一为测试和报告issue的效率。
这要求贡献者们专注于针对 bugs、潜在issue 或 支持请求进行代码测试并上传测试结果。
无需书写新代码,贡献者们只需边测试边创建ticket、记录既有/新发现的issue。可以检查drupal.org的每一条代码,如Drupal 核心(如Drupal 8.x)、第三方独立模块/sandbox、主题(最新开发版)等。
发布issue应当遵循Issue简述模板的规定、最佳范例及指导原则,可能的话还可以指出可行的解决方案。
可以测试need review(需要审查) 状态的issue,有没有patch都没关系;也可以在相应ticket中发表测试记录/反馈/评论(不管测试成功与否)。
涉及到的group和initiative有测试与质量保证、Drupal.org 测试架构、Drupal.org 改良和其他与测试与汇报相关的讨论组。
具体测试结果示例:
- 指出Drupal Core 8.x中的issue并创建bug 报告。
- 实际使用并测试模块patch,在开放的ticket中上传成功和失败的测试结果,并指出使用条件和可行的解决方案。
[TODO#1, TODO#5, TODO#7]
返回顶部
2 - 发现,学习/研究:提供教程并组织培训
贡献范围需要根据具体session分别定义,并根据实际参与情况调整。
针对每一次session,我们需要确定至少一位培训老师、若干个话题和相关教程。
培训老师、话题/教程也应当向社区开放以便接纳个别要求。例如为每场session提供多个话题备选并最终由社区投票决定[TODO#3]。
根据对知识的理解程度和开发经验的不同,Drupal开发者分为初学者、高级Drupaler等多个级别(了解Drupal知识体系:Drupal知识评估)。
针对培训老师:
当培训老师也是一项有趣的体验,培训老师的成功申请者和未成功申请者都有可能由此获益,申请经历/实际培训经历将帮助他们:
- 重新审视个人Drupal专业知识、经验和技能;
- 改善沟通技巧;
- 组织和改良培训材料和教程;
- 增加指导经验(了解Google Summer of Code (GSOC)与 Drupal 群:Google Summer of Code 2012)。
- 通过培训反馈、学生对老师培训过程和教授技能的评价得到更切实际的自我评价。
培训老师有可能惊喜地发现, 教授培训课程,比如通过回答学生问题,也让他们自己学到很多东西。
培训语言:首选中文,其次英文
培训过程需要大量沟通,须事先指定一种沟通语言。
因为本地 Drupaler 比较多,因此将中文作为首选培训用语。
非中文发言者须事先说明。
培训结果示例:
- 针对中级水平的话题Drupal 7 Database API 简介:hooks、classes、database engines 以及教程。
- 针对初学者的话题:学习Drupal 核心文件、Drupal hooks 基本模块 API、Form API 以及教程。
[TODO#4, TODO#7]
返回顶部
3 - 评论及支持:同行代码审查,通过 drupal.org/IRC/IM/QQ群等提供支持
相关话题:full project 代码审查,帮维护者解决issue , 代码审查/同行代码审查以及中文版的项目审查工具
- 在drupal.org GIT repository 检查任何人的代码,可以是full project 也可以是sandbox 项目。
- 研究模块、提建议,或指出/标注相似项目。
- 遵循Review Bonus机制,通过多评论他人代码提升自主发布项目的审查进程 。
- 申请 full project GIT 许可。
- 通过tracker、群组、IRC、聊天室、IMs等途径解答 ticket 疑问。[TODO#1]
审查结果示例
- 项目快速审查 (自动生成 审查结果),或手写一两条关于sandbox 模块 或project application的审查结果。
- 创建IRC账号,实时回复issue。
- 学习讨论热点问题、相应解决方案和代码审查原则。
- 深入探究自动审查工具 (如:Ventral/PAReview或其中文版水滴东西/代码审查),关注代码审查团队最新Project Applications review 动态。
其他资源:
- 提供支持,在IRC上与Drupal 社区对话
- Drupal Group:Full Project 代码审查
[TODO#5, TODO#6, TODO#7]
返回顶部
4 - 视觉优化:设计/用户体验/用户界面/主题
这个工作组的参与者将是一群视觉关注者,专注于改良 Drupal的整体设计或用户体验。
- 改良 Drupal 核心或模块 界面,依据mockups/wireframes [TODO#8]或设计文件 进行设计。
- 研究/讨论Drupal设计、主题开发、可用性及用户体验(UX)的标准及最佳应用。
- 为现有主题贡献patch,改善浏览器兼容性。修复issue以及其他前端改良。
- 帮助改进/推动以及评论社区相关的UX/UI。
- 贡献主题、设计和主题UI或 实现/标准/APIs相关文档。
贡献范围将主要以前端界面程式设计为导向,涵盖纯PSD设计、利用SASS或JQuery 改善响应式设计。
涉及人员:
- 设计师:利用Photoshop、Illustrator (AI)、GIMP等进行图形设计。
- UX/UI 设计师: 具备更深层次的理解力,基于用户体验 及最佳可用性应用设计原型图及界面。要求对最终应用进行深刻的功能性理解。
- 主题设计师:具备PHP或其他服务器端编程技能、了解Drupal 主题系统。
- HTML/CSS 程序员: 掌握HTML/CSS技能、浏览器兼容性测试、响应式设计等
- Javascript/客户端程序员:大部分浏览器/前端编程,了解并能使用不同的Javascript库,如JQuery。
- 其他(咨询、项目经理等)
参与结果示例:
- 为热点 Spark主题贡献patch。
- 在drupal.org上贡献新的响应式主题设计、wireframes及代码。
- 以高标准测试若干模块UI后,在bug tracker中提供UI/UX反馈。
[TODO#5, TODO#7]
返回顶部
5 - 技术优化:修补漏洞,维护模块,贡献代码
开发者最擅长、本职的领域即是贡献代码。
- 创建新模块。
- 共同维护:帮助维护已有模块。
- 帮助修复ticket/feature requests,贡献 patches。
- 书写Drupal 最新端口 (如Core 8.x贡献)。
- 邀请他人共同维护(参见 处理无支持的/放弃的项目)。
参与结果示例:
- 在模块tracker中发布ticket,上传patch,由社区审查及测试(RTBC) 并推动其行动。
- 参与贡献GIT代码,修复指定issue。
- 在GIT中贡献/添加新模块或sandbox代码。
其他资料:
[TODO#1, TODO#4, TODO#5, TODO#6, TODO#7]
返回顶部
6 - 知识转化:文档/翻译
文档的缺乏对项目成败影响很大,应当引起重视。有竞争力的开源项目(如 Drupal 项目)想要取得成功尤其需要详细的文档。模块对比 一文指出了文档的重要性,具备文档将能够得到社区极大的支持。详见贡献文档。
- 编辑 或更新已有文档。
- 添加/书写文档手册。
- 添加/书写模块使用教程。
- 学习/讨论文档书写标准及最佳范例。
- 加入 翻译组并翻译 Drupal核心、模块、文档等(如简体中文翻译组)
推荐使用视频和其他多媒体工具来提高文档/教程质量[TODO#4]。
具体结果示例
- 将模块、主题中的string翻译为简体中文。
- 将Views核心或规则文档页、教程等翻译为简体中文。
- 在groups.drupal.org中添加新的教程,指导使用第三方模块(如Display Suite)并提供中文图例链接。
[TODO#1, , TODO#5, TODO#6, TODO#7]
返回顶部
7 - 实际应用:发起项目,协同合作
许多基于Drupal或由Drupal association赞助的项目涉及各行各业拥有Drupal以外技能、经验和知识的人才的参与。这场活动的总体思路是团结不同背景的人参与Drupal贡献 (参见proselytism)。
这个session的贡献范围需要进一步明确、讨论、组织规划。
这实际上是自由开发/咨询/设计/帮助的一天,向任何有好 想法的人开放,由于各种不同原因他们或许能够受益于/惠及 Drupal社区:
- 项目本身从技术角度来说很有趣。
- 项目非常适合用Drupal解决,或展现出极其便利/常见的Drupal使用案例。
- 项目提出了不错 的培训机会,或之前培训session中研究过的应用。
- 项目非盈利、开源、协会组织及或由其他 社区驱动。
- 其他有可能引起参与者兴趣的原因。
根据社区和参加者反馈,讨论范围大至网站整体、小到具体模块、主题的代码编写。
这个组与其他类型的贡献如模块及主题开发 (#WS4, #WS5)主要的区别在于,这个组所提出的项目/模块必须与现实生活中的问题有密切联系、需要网络开发或Drupal 以外背景的人参与。
具体结果示例
- 编程技能较弱的某位参与者,如市场部门工作者,表达了对Drupal强烈的兴趣,希望为一个组织建立一个小型网站、支持简单的博客功能、几个页面和一些小的功能。一位开发者正好对此有兴趣,愿意辅导/演示网站创建过程。
- 更多针对高级程序员的复杂项目,不是full project,而是bug 修复、测试、特性开发等。
[TODO#1, , TODO#5, TODO#6, TODO#7]
返回顶部
8 - 集思广益:欢迎意见和建议
目前的session可以扩充加入其他话题/主题,我们邀请/鼓励各位提出其他想法、意见、建议。
很多人可能有误解,认为贡献只是分享代码、上传patch或模块。其实仅仅在drupal.org上发表一两句评论、提问或报告遇到的问题,就是在作有意义的贡献了。
其他可能的贡献示例: 项目管理、推广Drupal等。
[TODO#7, TODO#9]
返回顶部
其他说明:
- 在家贡献:
以上没有哪一组活动要求必须 出席,我们将利用Drupal 群、IRC、Instant Messengers (IM)等[TODO#1, TODO#4],寻找一些线上合作方式。 - 我们希望充分利用Drupal社区提供/推荐的工具,尽可能多地保持沟通和贡献,如drupal.org、groups.drupal.org、localize.drupal.org、Ventral/PAReview等。网络 项目合作更佳 [TODO#1, TODO#4]。
- 请忽略以上带TODO#N标记的内容,此为原作者标注的待办事项。待本文编辑完善后这些标记将被移除。
- 此 Wiki既不代表Drupal协同贡献聚会的唯一正式指南,也不代表Drupal 贡献、工作组、讨论话题的指南。
唯一目的是组织和定义不同类型协同合作活动的贡献范围。此Wiki内容仅代表作者个人观点,我们鼓励您持有不同意见。
欢迎各位提出不同问题、意见、建议及反馈。我们随时倾听。
Comments
非常专业,大开眼界!我也想学习!
非常专业,大开眼界!我也想学习!
2013-03-16 在上海聚会
活动贴已经贴出来了 - http://groups.drupal.org/node/284353
2013-03-16 10:00 - 19:00 在上海
感兴趣的话可以报名咯 - http://groups.drupal.org/node/284353#signup-form
Drupalers 在上海
listen to your heart
很好很强大
很好很强大