Skip to content

OpenSourceCleaning/OpenSourceCleaning.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation


The Gist

When: January 2018

How it works: Create GitHub issues, fork, refactor, open/merge Pull Requests

  • Maintainers of open source repositories on GitHub create "OpenSourceCleaning" issues based on the proposed prioritized refactoring candidates from the Better Code Hub analysis results.
  • Contributors fork the repo, refactor some code based on the issue's description and then create a Pull Request proposing the improvement to the maintainers.
  • Maintainers can use the Better Code Hub webhook integration to validate the contribution and merge the Pull Request.

Gitter chat


What's the idea?

Starting out contributing to open source projects can be daunting. Some say that open source can be downright intimidating. No wonder, since opening up the issues belonging to popular open source projects typically means unfolding a set of very technical tasks for which deep codebase knowledge is crucial. Here is one example. This project is very successful, but where would a newcomer start...?

We see untapped potential here. There is latent development capacity that can be leveraged to bring open source projects forward, if a more "gentle" starting point would exist. We hold the belief that code quality improvements would be a nice fit for this. Maintainers can create bite-sized improvement items (refactoring candidates) and then propose them to be refactored by the community. The community can pick these up and do them, sparking a positive and welcoming exchange between the maintainers and new contributors. "The ice is broken" now, new faces get the hang of it, and become motivated to provide more contributions.

Every Pull Request matters. With enough of these contributions, the open source code on GitHub gets cleaner, easier to work with, reuse and extend. Small improvements, added up, will make a difference. The Open Source world will be a better place.

Getting started

As a maintainer

  • (If not already done) Enable issues in the repository's settings page on GitHub.
  • Create a 'OpenSourceCleaning'-label Here's how.
  • Create issues based on the proposed prioritized refactoring candidates from Better Code Hub and attach the 'OpenSourceCleaning' label to them.
  • To enable Better Code Hub to run on every Push and Pull Request, click the ⚙ icon and toggle the "Push & Pull request analysis" switch. This will activate the webhook.

As a contributor

Want to see a sample Better Code Hub report?

  • Head over to bettercodehub.com and login with your GitHub account. You'll then see your repos, and you can start an analysis clicking the ▶️ button. It will analyze the default branch.

Need a Playground?

  • Fancy doing some practice refactoring first?
  • Here's a repo just for that: Playground
  • Fork it and run Better Code Hub to see refactoring candidates.

Keep in mind

Better Code Hub supports 16 programming languages up to 100,000 lines of code per repository:

  • C#
  • C++
  • Go
  • Groovy
  • Java
  • JavaScript
  • Objective C
  • Perl
  • PHP
  • Python
  • Ruby
  • Scala
  • Shell Script
  • Solidity
  • Swift
  • TypeScript

Feedback

Don't hesitate to send us feedback about Better Code Hub at bettercodehub@sig.eu.

Let's do some thorough Open Source Cleaning, one Pull Request at a time!

Rob, Mircea and Michiel