get started

what is open source?

Open source software is code that is made freely available for anyone to use or enhance! Here at ACM, we take pride in all of our projects being open-source and open for anyone to work on.

what makes open source possible?

The main backbone of open source initiatives are tools that simplify collaboration and sharing of code. Git and Github are two popular tools used by researchers, companies, and students; at ACM, we use both.

how can i contribute?

We'll quickly go over how we can use git/github to work on some open source projects. If you want to learn more about the specifics of what we'll cover, you can check out git's documentation or our writeups on git workflows and github as a collaboration tool to get a closer look at what we're doing!

jumping into contributing on a project

There are thousands of open-source projects out there - it's hard to even find out where to start! Luckily, some repositories, or the main hub of projects, have issues, or project tasks, marked as good first issue. These are great starting points for people to hop in and contribute!

Check out some of our projects tagged with good first issues here!

contribution workflow

Repositories normally tell you how the steps you need to take to get to work, usually within their README.mdor their but generally, there's generally a standard couple steps you'll have to take. For a detailed contribution guide, check out github's contribution guide!

forking and cloning a repo

By clicking fork on a project that you want to contribute to, GitHub generates a personal copy of that repo under your account. To clone it onto your computer, you can click the code button above the list of files and run

$ git clone

to get it onto your machine.

branching, making changes

Generally, when you want to make a specific change to a project, you make a branch, so that you can work on a new feature without affecting other people's work. To do so, run the git checkout -b BRANCH_NAME command to generate a new branch or git checkout BRANCH_NAME to switch between branches.

After you've made your changes, run git add . then git commit -m "a short commit description" to take a snapshot of all the changes you've made and git push to push the changes you made to GitHub.

making a pull request

Now that you've successfully made the changes you want on your fork of the project, if you head over to the original project repository and click Open a pull request, you can put in a title and description of your changes.

After making a pull request, the maintainers of the project will check if your code is up to snuff and request changes as necessary. Once they approve your changes however, you can merge your changes in and you've successfully contributed to the project!

what are you waiting for? go work on some projects!

acm's projects w/ good first issues

acm currently has 1 project with good first issues!


Topics •
opensource @ acm, work-in-progress

good first issues