Git Product home page Git Product logo

programming-mindset-community-standards-for-posting-issues's Introduction

Community Standards for Posting Issues

Learning Goals

  • Identify best practices for posting issues

Introduction

When you work and/or play in the world of open source software, you are part of a community that helps others maintain and improve their projects. Not only does this help others, it helps you keep growing your skills and building your experience. A common way of submitting feedback on projects, including Flatiron curriculum, is through submitting issues at the project's repository. Here we'll run through some tips to keep in mind when posting issues on others' projects.

Identify Best Practice for Posting Issues

Most often when you post an issue to a project, you'll be following the workflow for GitHub issues. In this lesson, we're not concerned with the technical details of how to post an issue, but how to define and describe your issue so that it will be clear to the project maintainer what the problem is and how to solve it.

Here are some things to consider before you post an issue:

  • Share all details about the problem you've encountered and what steps you've already taken. Post relevant code, examples of the output you saw, references to documentation or other issues you uncovered in your own research. Often, the more information you can provide, the better chance the project maintainer will have in solving the issue.

  • Be specific and focused with your issue. Along the same lines as the previous guideline, a statement such as "This doesn't work for me" unfortunately does not help the project maintainer understand exactly what the problem is. While you want to make sure that you're giving the full picture, also make sure that the details you're providing are to the point.

  • Be polite and keep perspective. It's often a lot of work to maintain an open-source project! Respect the project maintainer's time and effort. Avoid making demands or disparaging remarks. You'll make a better impact in the community if you approach posting issues as a way you can help the project improve rather than a fix you are entitled to.

  • Leverage the Issues Tab of GitHub. Often Google searches will point you back to CLOSED status issues that might ask your same question. Be sure and appreciate the debugging technique applied so that when you see the solution post you can understand where you might need to make tweaks. If someone fixes the same error message by doing something with a library like foolib-3.5.4, and on your system, you have foolib-3.5.5, you're going to be expected to have made that "tweak" yourself.

  • Don't Comment on Closed Issues. When you see a closed issue, realize that while the error message might be the same, in the maintainers' minds this is a new issue. If it is a duplicate, let the maintainers decide that. As a professional courtesy, we recommend opening up a new issue and adding in the body: "This might be a repeat of issue #13 (URL)." Then you demonstrate that you know not to comment on old issues and you did your research. By showing this respect the maintainers and community will know you to be an appreciative, thoughtful, community member.

Conclusion

Out in the open-source community, you will sometimes run into code that could be improved. By posting issues that are thoughtful, targeted and polite, you will not only contribute to the code improvement but strengthen your own skills and community connections.

Resources

programming-mindset-community-standards-for-posting-issues's People

Contributors

jenmyers avatar sgharms avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.