关于开源的两篇文章

Benefits in contributing to Open Source

What the benefit will i get, if i contribute to Open Source? This is the frequently asked question by many people. I just want to pen down the benefits which i know and i hope you will agree with it.

Open Source is free to use and very few successful project owners are paid well. Remaining others are struggling for a sponsor, but still as a project owner, they know how to survive and move ahead. They know they have to face lot of difficulties to make their project successful and useful to others.

Now, You may ask, Even the project owners are struggling, What benefit will i get in contributing to a project? Below are few.

Practical knowledge:

In college, we learn mostly theory. What we learn in college and what we work is totally different. There is a huge gap between college and industry. If you contribute to Open Source project by spending time in reading the code, Try to understand how they have written , Try to fix a bug or add additional feature. During the course of the work, you will learn a lot. Say for example, If you pick a Content Management System (CMS), you will learn about archiving, searching and lot more. 

Certificate / Acknowledgement of work:

By contributing, you may request for a Certificate or Acknowledgement for your work. Project owner are obliged to do that. If you contribute regularly then they will list your name in their contributors list and provide a link to your profile page. You could request for a recommendation from project owner, from your Linked in user account. This will increase your chance of getting selected in other companies. Your resume will be easily picked up by the consultants.

Money / Perks:

Well funded open source projects may pay you for your contribution. Few may give out some perks / gifts like T-shirt, Mugs etc to motivate the contributors.

Identity / Recognition:

If you regularly contribute, you will get identified / recognized within the project community, user group and mailing lists. You could answer the queries raised in the forum. You will get an identity. 

Consulting:

I know, two of the people here in Bangalore work for full time in an open source project. They do work from home and their parent company is in US. They are paid in dollars and it is big money. Open Source project might have started in a country but it require presence in every other country / state / city. You could take initiative in bringing up the community. You could provide consulting for the project in your place. If you get an identity, people will have faith in you.

Give back to the society:

We accumulate wealth for our need but some times it is pleasure to give some money back to social cause. Similarly it is good to share our knowledge for others by contributing to open sorce projects. 

I hope this article may motivate you guys to start contributing. Just check out our previous article, how to contribute to Open Source.

 这篇文章是我从http://www.findbestopensource.com/article-detail/benifits-contribute-opensource这八下来的。目的是想知道开源到底对我们有啥用处,这篇是说为什么我们要开源。
提炼下文章的观点:
学校学的东西过于理论化,如果你能花时间去阅读别人的代码,努力去弄清楚别人写的是什么,尝试去修补一个bug或者去增加一些功能,在这个过程中,你收获颇丰。在项目中学习是学到最快的。
在开源项目中有贡献,那么更容易让简历出彩 ,甚至获得相关开源项目组的推荐,更容易进入别的大公司。
获得一些资质,或者纪念品(应该是说在他那个开源网站里面的贡献者有机会获得)

How to learn from open source projects

Students ask this question frequently steps or methodology to learn from open source projects. There is no single answer or steps available. I listed the steps which i follow and i hope this will help for few.

Consider a java programmer wants to access database via ORM tools like Hibernate. In this case pick any open source projects which use database. The choice could be content management system or forum software. Among that pick Java projects and see which all use Hibernate to connect to database. Shortlist one or two and download their source. Search the source for hibernate related keywords. Most of the projects are object oriented and only one or two class will be responsible to access it to the database. Pick the class and learn the code. Reuse if possible.

If you want to learn anything related to generating charts, then pick projects related to reporting and analyze its source. If you want to learn any PHP based framework, then pick a CMS project which uses that.

Again this is should be a one time task. If you search, when there is a urgent requirement then you will waste more time in searching projects. This should be a like a habit, learn about one open source projects once a day or a week. Read their site and learn their design. What all the components they use to build their projects. Download the source and peep in to the lib directory to get the list of dependency. There are many small libraries which could make our life easier. Bookmark it and use whenever required.

Please feel to add your comments and write how would you learn.
这篇文章就直接是说如何从开源项目中学习,来源:http://www.findbestopensource.com/article-detail/learn_from_open-source
同样,我翻译一些观点:
去需找一些与你想要相关的开源项目,然后缩小范围,最后确定一两个,把代码下下来,并去看代码;
不要一直找项目,当你找到了相关的项目后应该在某一天或某个星期内只看一个项目,去看他们用了什么去构建他们的项目,下载源码,去剖析库目录,分析里面的从属关系。要记得这世界上有很多很不错的库可以让我们的工作变得更简单,记录起来,以备将来不时之需。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值