`

如何向开源软件贡献自己的力量

 
阅读更多

JEECG第三期招募新成员!!!

截止日期:2013-10-10

http://www.jeecg.org/forum.php?mod=viewthread&tid=272&page=1&extra=#pid685



我经常看见很多学生在很多论坛里提问“我想向开源社区贡献源码,但是该怎么做呢?”。有很多种方式可以贡献源码,我列出了很多,希望能够对你们有多帮助。


1.贡献给现有的项目

虽然你对于贡献源码感兴趣,但并不是所有的开源产品都会接受你。每一个产品都有一些编码和提交代码的规范,而你需要遵循这些规范。

2.你感兴趣的领域

首先选一个符合你的兴趣或者使用了你喜欢的编程语言和技术的项目。不要仅仅根据开发语言来选择你感兴趣领域的项目。仅仅通过了解Java你不一定能胜任游戏项目的任务,你应该对它感兴趣才行。

3.对项目进行了解

找到项目所在的网站,你可能会找到关于“如何参与项目”、“用户手册”等信息的链接。了解他们的指导方针,编码标准和补丁的验收标准。加入他们的开发和用户邮件列表。下载源码并且试着了解他们是怎样实现的。

4.提交者

每一个项目都会有一个或者更多的提交者。他们负责提交代码。你的代码应该通过他们提交。很多项目可能会要求志愿者们把变更过的代码发给提交者,有些项目可能要求发送代码补丁到项目邮件列表。但最终你的代码将通过提交者提交到项目的主分支中。

5.测试和文档

编写代码并不是参与项目的唯一方式。你可以做测试和记录bug。你可以帮助完善项目文档。对信息进行本地化或者将帮助手册翻译成其他语言。

6.参与到新的项目中

寻找一些想法一致的人群然后根据你的想法开启一个新的项目。选择你的许可证的条款和条件。很多人就是通过开发新的开源产品获得了成功。

7.重复发明轮子

如果你没有任何独特的想法,那么你可以“重复发明轮子”。你可以尝试做一些别人做过的东西,但一定要加入特有的功能。应该跟别人的软件有一些独特之处和差异,这样才能让别人使用你的软件。很多人会倡导“不要重复发明轮子”,但是如果真是这样,那么在每个行业领域内将只存在一见产品。这不是同一个问题,通过“重复发明轮子”,你可以学到很多。

8.陈旧的项目

从Sourceforge或者GitHub这样的代码托管网站寻找一些陈旧的或者闲置的项目。该项目的最后一项活动可能是一年或两年前。选择一个这样的项目,解决掉项目中的问题,然后赋予项目新的生命。

9.代码移植

很多人可能会对代码移植很感兴趣。如果你是一个Java程序员,你发现了一些用Python或者Ruby语言开发的有趣的东西,那么把它们移植到Java语言来。将代码从一项技术移植到另一项技术中。一个程序员不可能掌握所有的编程语言,移植好的项目真的会对你有很大帮助,而且很多人都会感激你的努力付出。

很多人有兴趣,但仅仅只是兴趣,很少有人会真正去做一些事情。一旦你开始做了,别人就会追随你的步伐。

英文原文:How to contribute to open source/译:OSchina
分享到:
评论

相关推荐

    开源软件文集:开源革命之声.pdf

    《开源软件文集:开源革命之声》是一本集结了多位开源运动领袖和软件界大牛们观点的书籍。...通过这本书,我们可以更好地理解开源软件的革命性力量,并且为我们提供了一个全新的视角去思考软件开发和使用的未来。

    台湾开源软件刊物资料

    开源软件,顾名思义,是指那些源代码可以被公众查看、使用、修改和分发的软件。这种软件模式在全球范围内都有着广泛的应用和深远的影响,特别是在台湾地区,开源软件的发展尤为活跃,技术实力也相当先进。 台湾开源...

    开源软件之道(中文高清版)

    开源软件不仅是软件开发的一种模式,也是推动技术进步和创新的重要力量。随着技术的发展,开源软件已被广泛应用于各个领域,成为软件开发者和企业获取高质量软件资源的首选。本书《开源软件之道》深入探讨了开源软件...

    1.0.1 开源软件简史 (完善篇).docx

    随着时间的推移,开源软件逐渐发展成为一个强大的力量,推动着整个IT行业的发展。 #### 三、关键事件与里程碑 ##### 1. Unix 的诞生 - **时间背景**:1969年,随着ARPAnet网络的建立,计算机科学研究者开始共享代码...

    开源软件知识产权风险防控研究报告(2019年).zip

    通过深入研究开源软件的法律环境、风险防范策略和最佳实践,企业可以更安全地利用开源的力量,同时避免潜在的法律纠纷。这份报告对于IT决策者、开发人员以及关注开源生态系统的法律专业人士来说,都是不可或缺的学习...

    重新认识中国开源软件

    中国开发者和企业在开源社区的积极参与和贡献,正在打破既有的国际开源软件发展格局,为全球开源软件的发展注入新的活力。 在未来,中国开源软件预计将继续保持高速增长,不仅为本土市场提供更多创新解决方案,也将...

    构建自主互融创新的人工智能开源软件生态体系.pdf

    构建自主互融创新的人工智能开源软件生态体系是当前中国乃至全球信息技术领域的一个重要课题,涵盖了人工智能技术、开源软件的运作机制以及全球科技竞争格局等多个方面。随着人工智能技术的飞速发展,开源软件作为其...

    面向开源生态的软件数据挖掘技术研究综述.pdf

    当前,随着开源文化的发展,开源软件已经成为推动软件生产力增长的重要力量,并在软件开发和应用的各个阶段展现出巨大的影响力。然而,这一趋势也带来了数据规模的庞大、协同范围的不断扩展以及高度精简的管理模式,...

    清华镜像:开源软件资源的宝库与学术研究的得力助手.zip

    作为用户,我们应该充分利用清华镜像站这一宝贵资源,不断提高自己的技能水平,为推动我国软件行业的发展贡献自己的力量。同时,我们也要关注镜像站的发展动态,积极参与其中,共同打造一个更加繁荣、开放的开源软件...

    全流程一体化开源软件管理与实践.docx

    金融业作为IT技术应用的重要领域,正在积极采用这些前沿技术,其中开源软件成为了推动金融科技创新和数字化转型的关键力量。面对互联网的挑战,农业银行采取了“全流程一体化开源软件管理”的策略,以有效利用开源...

    崔宝秋:拥抱开源,小米的开源经验分享

    小米还努力推出自己的committer(社区贡献者),这样做不仅能站在巨人的肩膀上,还要能够为巨人指方向,赢得话语权,影响开源项目的走向,向有利于公司的方向发展,并避免内部分支与社区主干分支渐行渐远。...

    开源技术大会2014-CSDN-蒋涛《关于开源的思考》

    此外,大公司如谷歌、脸书、Twitter等不仅使用开源技术,也积极参与开源项目,贡献力量。 开源的兴起为开发者提供了极大的力量。在新的时代背景下,开发者们通过互联网协作,利用开源项目推动技术进步和创新。...

    开源对软件工程的作用及关键搜索技术分析

    随着网络技术的快速发展,开源软件逐渐成为软件行业的主导力量。开源软件的成功不仅推动了软件产业的创新,也为开发者提供了丰富的学习资源和合作平台。开源软件允许用户自由地访问、修改和分发源代码,促进了软件的...

    开源时代(电子杂志)

    电子杂志可能会讲述这些故事,展示开源社区是如何形成和发展的,以及个人如何参与到其中,为开源项目贡献自己的力量。 此外,开源还影响着教育、科研和创业领域。在教育中,开源软件为学生提供了免费的学习资源,...

    中国开源的发展

    ### 中国开源的发展 #### 开源兴起的背景与驱动力 - **互联网及Web2.0的推动**:互联网的迅速发展,尤其是Web2.0的兴起,为开源...从最初的参与者转变为贡献者,中国正在逐步成为全球开源软件生态系统的重要力量。

    一个开源的视频会议软件源码

    标题中的“一个开源的视频会议软件源码”指的是一个可供公众查看、修改...以上就是关于这个开源视频会议软件源码的相关知识点,开发者可以通过深入研究源码,学习并应用到自己的项目中,或者为这个软件贡献自己的力量。

    淘宝之开源之路

    开源软件已经成为推动技术进步和行业发展的重要力量。对于像淘宝这样的大型电商平台而言,合理利用开源技术不仅能够降低成本、提高效率,还能促进技术创新和业务增长。未来,随着开源文化的普及和技术生态的不断完善...

    开源正在吞噬软件业?看开源的7大理念.md

    本文分析了开源的7大理念,有助于读者更好理解**开源的本质要素**,这些理念为...开源发展依赖于社区,社区赋予开源软件的生命,社区力量的壮大,除了个人贡献,更多的依赖企业的贡献,也有利于企业降低维护代价,更多

Global site tag (gtag.js) - Google Analytics