Begin contributing to Open Source with coala
Karan Sharma (~mr-karan) |
This devsprint covers a practical introduction on how to contribute to an open source project. You will learn about basic git usage (commit, push, rebase), code review and continuous integration. During the devsprint, you will do a real contribution to an open source project coala and interact with the community. Your knowledge will help you enter our and other open source communities easily.
What Do Participants Learn?
Participants will have a commit in an actual open source project and will be able to apply the knowledge to other projects and get started with free software.
coala really has a very beginner friendly community which is present at https://gitter.im/coala-analyzer/coala . It's very apt to assume that coala comes under easy to contribute projects, so that all the newcomers don't have a lot of trouble getting their first contribution accepted upstream. But with that being said, coala does have a really rigorous review process which eventually helps the contributor.
coala is based on Python so basic Python will be good, but not necessary as the participant can learn to contribute in other things, like fix typos, or do some low level bugs which are created only for the newcomers to get acquainted with the workflow and begin her journey to OSS world.
Example of such bugs are : coala newcomer issues
Participants will need a Github account. Also
Python should be installed in their laptops
Development Setup Instructions
You can fork and clone the repositories from:
The former is the core of coala, and the latter contains the set of standard bears.
- Create a Virtualenv using
(venv)$ pip3 install coala-bears --pre
(venv)$ pip3 install -e <path/to/clone>
With this workflow, you'll be able to make changes in your local copy and have them reflected in venv immediately. You can read more about the instructions in the documentation here
Karan Sharma is pursuing an undergraduate degree in Computer Science and he dabbles with all things Python. He's also a Google Summer of Code'16 student at coala. He has done significant contribution in coala and helps newcomers to get started with coala.
In his free time, he gives talks at his university's local ACM chapter and promotes FOSS over there.