DEV Community

Vicki Langer
Vicki Langer

Posted on

Open Up to Open Source Contributing

What is Open Source

Open source software is software with source code that anyone can inspect, modify, and enhance. reference

Why Open Source

Allowing everyone to modify and enhance provides an environment that allows collaboration and continued improvement. Open Source gives more people more access to make more impact.

What could I possibly contribute?

There are tons of ways to contribute. Yes, you can contribute code, but there are many other ways to get involved.

  • Weird spacing? you can fix that
  • Messed up syntax? you can fix that
  • Noticed some typos? you can fix that
  • Subpar documentation? you can fix that
  • Know a cool bit of trivia? you can add that
  • Wording doesn't make sense? you can fix that

How do I get involved?

Disclaimer: this example is from my own project. contributions are welcome and I'm happy to help

GitHub

Before you start:

  1. Read the README.md
  2. Read contributing.md, if there is one
  3. Look at the Issues tab

Read the README.md

The README.md will often answer the questions: who, what, when, where, why, and how. It may also tell you how you can contribute to the project. Here's a screenshot of what the readme looks like for Code Questions Bot.

Once you've read this, you should take a look at the issues tab. For Code Questions Bot, you can just click the link in the README.

Screenshot from readme at https://github.com/VickiLanger/code-questions-bot

Look at the Issues tab

Screenshot from issues at https://github.com/VickiLanger/code-questions-bot/issues

It looks like a lot, but let's break it down. Each row is an issue. It has a name and a number. It may or may not also have labels*, a progress bar*, and a picture of who is assigned**.

Labels make it easier to see if there is something that pertains to you
**Progress bar means there is a checklist in the issue and shows the progress
*
*Assignee is someone who intends to do resolve the issue

Screenshot from issue #2 at https://github.com/VickiLanger/code-questions-bot/issues/2
If you have questions about an issue, want clarification, or just want to provide more info, you can click on an issue and leave a comment. If the issue isn't labeled as such, this is also a good place to ask if help is wanted.


Making a Contribution

Now that you've got the basics, would you like to make your contribution? Here's how.

Screenshot from issue #2 at https://github.com/VickiLanger/code-questions-bot/issues/5
In the case of Code Questions Bot, I've already set up the issue to guide you through what to do with the code. You don't even need to know the language to make a contribution.

'question goes here',  # short answer goes here, add a link if it's not a short answer
Enter fullscreen mode Exit fullscreen mode

All you need to do is add the above code to questions.py. Oh yeah, and fill in the new question and answer you're adding.

Here's how to add it. We'll do it all in the browser to make it as easy as possible.
Back on the code tab, find and click questions.py. Then click the pencil in the upper right. This will allow you to edit the file.

Next, go ahead and add your question. Make sure to follow the notes in the issue.

added
Once you've added your change, click the 'preview changes" tab. In green, it'll show you what you added. In red, it'll show you anything you've removed. If you're satisfied, scroll down.
screenshot of GitHub commit changes section
You'll need to give a commit message and choose the option to Create a new branch for this commit and start a pull request.

Now you're pretty much done. You can add comments to your Pull Request, if needed. Otherwise, you wait for the owner of the project to accept your change or ask questions

Now you can do it again! Go forth and conquer.

Other References

Top comments (0)