Open Source Software Starter Guide: Conceptual review

Source: Internet
Author: User
Keywords Open source we ourselves open source software work

Open source projects are now ubiquitous, from the web to personal computers to smartphones, and we seem to see it everywhere. In today's article, we will work on the following three topics:

Open Source Definition

Examples of popular open source projects

How to get involved in open source projects

1. What is open source software?

Open source software is a subclass of computer software in which the source code is open to the public and a specific licensing mechanism is available to allow anyone to modify the code and redistribute the code or executable file.

Although open source software is often developed and maintained by a group of people, it is in fact possible for anyone to have access to their code and express their ideas in it, if they wish.

I've contributed code to several open source projects, and contributing to open source projects is the best way to be a good developer and to give back to the tech community. You can come into contact with other developers to write code, and gradually learn how to improve their own code. As far as I am concerned, it is the most proud experience of the technical work process to see the open source projects that I have built with other developers.

Let's look at some of the most popular open source software scenarios. You may be surprised by the sheer volume of open source projects and the huge companies that support them behind them, such as Google and Automattic.

2. Common open Source projects

With millions of open source projects in the world, we list only the most common and most recognizable of them:

WordPress, one of the most popular content management systems on the Web, currently has a user population of millions of.

PHP is currently the most popular web programming language on the Web, and it supports more than 80% Internet content, including Facebook.

Audacity is a free and Easy-to-use multi-channel audio editor and recording tool.

OpenOffice is a free Microsoft Office alternative.

Android Open Source project is a well-known mobile operating system, as the name implies that the open source project.

The Firefox OS is a mobile operating system that is developed and maintained by Mozilla.

3. How the Open source system works

The development of open source project is mainly divided into three stages. Let's briefly comment on each of these phases.

Stage One: Contributions

If you want to be able to actually participate in the Open source project, it is best to contact the enterprise or organization behind the software and ask what contributions they can make to the project. This approach is especially suitable for smaller projects or start-ups, but you need to be clear about one o'clock-most open source projects will not pay for the results of your work, and our participation is entirely based on a voluntary basis.

When I was involved in the development of open source projects, I had been sit for weeks to wait for a response from the project manager--in fact, there was a wait period of up to two months. But please do not be impatient, this confirmation email is really very important, it is worth us to give it some patience. After receiving the notice, the development work can be officially started.

In addition, for larger projects, you can start coding work directly and build your own derivative software version. You should also be wary of situations where the number of participants in the same project is too high, and the results of our hard-earned work may not be included in the final version of the product at all. In this case, please weigh the pros and cons, if you are not satisfied with the decisive exit.

If you are looking for a project to guide the beginning of the work of inspiration, do not be bound by their own thinking. There may be a lot of interesting projects available on the web for our reference, especially in GitHub, SourceForge and Google code.

Before you really embark on a project-related task, you should first learn to familiarize yourself with how the project works and how to manage its structure, so that you can be aware of who is capable of helping to get through when you need it. Again, it's a good idea to be clear about what you want to achieve before you start working, so that we don't mess up the project or waste valuable time on existing functionality that other developers have already achieved.

Phase II: Submitting

When you have completed your expected changes or implemented new features that have been conceived for a long time, the next thing to do is to submit the changes to the main project and send the results to the project maintenance staff for review.

This work may need to be implemented using platforms such as GitHub or SourceForge. The changes we make to the project generally receive "accept" or "reject" feedback from the enterprise or project management team, and you will be able to understand whether your development results are actually applied to the project. If the answer is "accept," then it's time to move on to the release stage. If the answer is "no", we still need to go back to the stage of contribution and try to figure out if our ideas are biased.

Phase III: Publishing

Publishing may be one of the most complex phases of the open source project development process. During this time, the final version of the software will be submitted to the code base of the managed project, and the live version provided to the non-developer will be updated accordingly. Here, companies and developers can finally wave goodbye to heavy work, and the software results will be handed over to the public for use and judgment.

Content Summary

I hope that after reading this article, we can have more confidence in the open source development mechanism, and I hope you can understand how to participate in the development process of the project personally. Open source development is really interesting, but sometimes it's frustrating to be unable to get the desired results. Keep in mind, however, that sticking to it and not giving up when you meet obstacles is a prerequisite for success.

In the next installment of this series, we will look at the licensing mechanism for open source projects and the ways in which developers can find answers when they encounter problems. If you have any questions, you may wish to communicate with other friends in the comments section.

Related Article

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: info-contact@alibabacloud.com 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.