Image source: https://hacktoberfest.digitalocean.com/
Intro
Hacktoberfest 2017 is upon us! Hacktoberfest is a month long celebration of open source software held by DigitalOcean in partnership with GitHub. The basis are thus:
- Go to https://hacktoberfest.digitalocean.com/
- Register with your GitHub account
- Make Pull requests in GitHub Repositories
- Make open source better
- Get a t-shirt (see site for details)
I posted about this recently on Reddit and I had many questions about what the bar is to become a contributor. I figured this was a fitting blog topic so I will cover it here.
What Can I Contribute?
There are a ton of areas that could use your help. Yes, you specifically. You don't need to be an advanced programmer but if you are we need you too. There are needs for documentation cleanup and review and error message fixes that don't require much knowledge beyond how to use git and make Pull requests on GitHub. There are also open issues for some relatively simple programming tasks in C# and even in PowerShell. And for the veteran programmers, there are plenty of challenging issues open that are collecting dust and could use your love.
Pretty much any one of any skill level and familiarity with PowerShell or technical documentation can assist. Your help will not only be welcome, but very much appreciated. Yes, even simple fixes like adding a missing comma in an error message will be appreciated. If you have used PowerShell for any length of time you are bound to have seen a poorly worded or flat out badly spelled error message or help document. Guess what? Those can all be fixed by us now.
Go here: https://github.com/PowerShell
That is the root for all of the official PowerShell open source projects. But that's not all! Hacktoberfest is open to any open source project. Many community PowerShell projects and modules could use your love too! Find GitHub projects with PowerShell.
Easy Wins
The easiest way to get started is to go to https://docs.microsoft.com/en-us/powershell/ look at documentation for your favorite PowerShell commands, spot errors in formatting, spelling, grammar, punctuation, missing details, missing parameters, or even poorly worded phrases. The click the edit link in the top right corner.
Another easy win is error messages. Go run your favorite PowerShell commands (the ones that come from the actual PowerShell modules). Make them spit out errors until you find an error (spelling, grammar, punctuation, or just plain confusing) in an error. The go to https://github.com/PowerShell/PowerShell and search for that bad error. Usually you will find these in files that end in .resx. Click the pencil button.
This will at least get you started on your journey to your first PR. Read these to find out more:
https://help.github.com/articles/using-pull-requests/
https://github.com/PowerShell/PowerShell/blob/master/.github/CONTRIBUTING.md
https://github.com/PowerShell/PowerShell-Docs/blob/staging/CONTRIBUTING.md
For the Novice to Midrange Coder
Take a look at the open issues in any of the PowerShell repos. Pick an issue and see if it's something you can do. if not, go to the next one! Pretty much any issue that is not assigned is fair game for the community. Don't see an issue for a missing feature or bug you have run into? Submit one! Even if you are not the one to add the feature or fix the bug, submitting issues brings them to the eyes of people who can and will. Both community contributors and the Microsoft Team look at open issues to find work to contribute. Just make sure you search open and closed issues and the known issues before submitting a new one. And if you did you best but somehow miss that something is a known issue, don't feel bad. A re-reported bug is better than an unreported bug.
https://github.com/PowerShell/PowerShell/labels/Hacktoberfest
https://github.com/PowerShell/PowerShell/labels/Up-for-Grabs
https://github.com/PowerShell/PowerShell/milestone/27
Those are some good places to start. Remember, you can look for open issues in any GitHub repo. It doesn't have to be the official PowerShell repos. These issue are labeled Hacktoberfest in repos that use PowerShell.
For the Veterans
You've already done your time in the trenches. Why should you help out? Because there is still a need for highly skilled community members. You can really help improve things like performance and usability with your vast experience. You probably already know all the very annoying little secrets that PowerShell keeps swept under the rug. well, it's time to stop complaining about them and helping us fix them! PowerShell is not just Microsoft's any more. They have made it open source and they have really engaged with the community. It's not a futile marketing ploy. Changes you make now will be seen in future versions and your experience is very welcome!
Conclusion
Get out there, get hacking, and lets make Hacktoberfest as much about PowerShell as it is about all the other languages and projects that participate. Lets show them that we are a growing and thriving community by lighting up PowerShell repos with fresh Pull Requests. Let's make our beloved PowerShell and community modules better!
Whether you have never contributed to open source before, your are a regular contributor, or you are on hiatus: The time is now!
I'll be waiting to review your Pull Requests!