Suggestions for participating in open-source projects

Source: Internet
Author: User

I always wanted to join an open-source project. The purpose was simple: to share ideas and accept the test of everyone, but it was not possible.

After reading this article, I was inspired by it. Note: There are deletions. Http://

The idea of participating in open-source projects is often dispelled for the following three reasons:

1. I am not good enough

2. I don't have enough time

3. I don't know what kind of project suits me

The following three basic principles should be known when you seek opportunities to participate in open-source projects:

1. projects require professionals of various levels of competence.

2. Even a negligible contribution is better than nothing.

3. From the project you are using as the first step to participate in open source

Some project members look like stars. Yes, they are really talented programmers. However, most of them are not.

The project only requires those who can complete the task. Sometimes you do not need to pay too much, sometimes it takes a lot of time, sometimes it is programming, and sometimes it is not.

The following are some suggestions or experiences for participating in open-source projects. If you are interested, try:

0. Add to the email list:

For most projects, the email list is still the main channel for project development and communication.

In a large project, there are usually many email lists to choose from. For example, the PostgreSQL project has at least 12 user-oriented email lists and 6 developer-oriented emails.

I suggest you pay attention to the most important user-oriented email lists and core developer lists.

1. Follow up and write a blog:

A blog is generally maintained by core developers. It usually contains information about future versions of items.

How can I obtain this information? A star site usually contains news or blog entries from many related projects. If there is a star site,

For example: or, then all you have to do is search "Planet <Project Name>" by Google ".

At the same time, you can also use your blog to write down some of your project experience and record your problems and solutions.

2. Add to IRC:

Many open-source projects have dedicated Internet Relay Chat (IRC) channels for developers and users to discuss development issues.

Find out what the IRC channel is in the project site.

3. Code Diagnosis:

It is usually difficult to report bugs. diagnosing and quickly fixing bugs helps reduce developers' time.

If the user reports that "the system cannot work when I operate xx", you have to spend some time solving these problems.

Or will it be repeated? For example, is this type of problem only caused by some browser incompatibility? There are other reasons for this problem only in the release.

4. Disable fixed bugs:

Bugs are usually fixed in the code library, but are not updated in the problem tracking system.

Although it is time-consuming to clean up these messy items, it is worthwhile for the whole project.

5. Test the beta version or candidate version:

Any project designed for running on multiple platforms may have various compatibility issues.

When a Beta or candidate version is released, the project leader wants to get test feedback on different people and platforms, and you can be one of them.

6. Fixed the bug:

Fixing bugs is usually the place where contributors start to get started with the code. It is very simple. Find the bugs that interest you in the problem tracking system and fix them. If appropriate, write a document for fixing the code.

7. Write test:

Most projects have Test suites for testing code, and it is hard to imagine that more tests cannot be attached to the test suite.

Use a test override tool such as C-based gcov and Perl-based devel: cover to identify the scope where the source code cannot be tested through the test suite, and then add a suite to overwrite it.

8. Rationally handle compilation Warnings:

Many C-Project-based builds often have a lot of weird compilation warnings, which are usually not errors, but look like,

Too many warnings make the compiler sound like a false alarm, carefully checking whether the Code does hide bugs.

9. Attach a comment:

When you study the code in depth, you may find that there are doubts. This is an opportunity for you, and others may encounter the same problem. They may post comments to them to submit patches.

10. Create an example:

There are not many examples of getting started in general projects, whether it is Web APIs, common libraries, or GUI applications such as Gimp, or command line tools,

An appropriate example can give a clearer and faster explanation of how the software is used than a long document.

11. Answer:

The best way to participate in the Community is to help others. Answering questions, especially those involved for the first time, is critical to the growth of a project,

Even if your answer is simply "read the fxxk manual", everyone needs to take action. If the project is to become powerful, everyone needs to mobilize.


12. website improvement:

Many programmers are very bad at graphic design, especially for project websites that cannot help the design department.

If you have web design skills, you may wish to improve your website. As a project sign, it is worth time.

Maybe the project interface needs to be thoroughly transformed, or just a logo, which is a lack of skills in the community. If I can provide some help in graphic design, others will like it very much.

There are too many ways to participate in open-source projects, even if we write a historical review of the features of a new product.

Everyone who uses open source projects can bring technology to the community and help open source become an important part of the IT industry.

One sentence: communication focuses on action.

Suggestions for participating in open-source projects

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.