Helping Projects Improve Their Setup

Why?

Most contributors will need to install a project in order to contribute to it. But installing a project isn't always easy! It can sometimes take hours or even days to get a project set up. Problems you might encounter include:

  • difficulty using tools like version control or virtual environments
  • needing to install dependencies
  • setup designed for a different operating system or version
  • confusing build process

Not to mention the headache that ensues when none of those problems are documented!

Why newcomers?

Maintainers are very used to working with their setup. They know it inside out and have a ton of implicit knowledge. Newcomers, on the other hand, can't make easy assumptions about how things work. That makes you the perfect person to identify places where the setup process and documentation can be improved!

Challenges ahead!

Trying to install a project with missing or incorrect documentation can be super frustrating. That's okay! The key is to remember that it's not your fault and you're not incompetent. Instead, think of it this way: any difficulties you have are a chance for you to give feedback to maintainers. So lets get started!

The Steps

  • Step 1: Get Out Your Notes
  • Step 2: Pick a Project
  • Step 3: Let People Know What You're Doing
  • Step 4: Record Your Basic Information
  • Step 5: Try To Set Up the Project
  • Step 6: Give Your Feedback

Step 1: Get Out Your Notes

Open up a document in your favorite text editor. Starting now, you're going to write down everything. You may not end up using all your notes but it's better to write too much than forget something important.

Step 2: Pick a Project

You'll need to start with a project or list of projects you're interested in. If you don't know of any, try this exercise.

For your project, try to find:

  • the installation/setup guide, if it exists
  • the source code/repository you'll be installing
  • a way to contact the maintainer and/or community, such as IRC or a mailing list

Run into problems? Write them down!

Step 3: Let People Know What You're Doing

Use the contact info you found to let the maintainer and/or community know that you're going to try setting up the project. See if they're around to help you out. Tell them that you want to give them feedback about their instructions and ask what the best way to do that is. Should you send them email? File issues in the issue tracker?

(It's likely that no one will be around to answer your questions. For your first time doing this, you may want to try a few different projects until you find one where someone is around.)

Step 4: Record Your Basic Information

Write down your operating system, including the version you're using. You'll want to include this in any report you make.

Step 5: Try To Set Up the Project

Go to the current installation/getting started guide and start stepping through the instructions. If there is no getting started guide, make your best guess about how to begin.

If you get stuck, you can ask the maintainer on IRC, the good people of #openhatch (on Freenode), or mentors at your event for help. When you figure out the problem, make sure to write your solution down so you can add it to the documentation.

Step 6: Give Your Feedback

Give your feedback to the project. A maintainer may ask you to give feedback in IRC, or to the mailing list. Your default, though, should be to submit issues.

You may be able to contain all of your feedback in the text of a single issue. Ask a mentor to review the issue before you submit it.

All Done?

Make sure to record your contribution. You can do this by submitting a merge story. (Don't want to make it public? Just say so anywhere on the submission form.)

You can repeat this task with a new project, or move on to a different task.