Contribute to Open Source with the Pythonistas at Microsoft – Hacktoberfest 2022

Dawn Wages

The Python Cloud Developer Advocate Team and friends will be getting together October 10th at 2PM Pacific on Microsoft Developer Channel Twitch to talk Python and Hacktoberfest! Hang out with Sarah Kaiser, Pamela Fox, Dawn Wages, Jay Miller and Anthony Shaw while we share some of our favorite projects to contribute to and where we have set our sights this year.

Tips for Open Source contribution

1. Find a project by searching open repositories, chatting with Open Source contributors or checking out third party sites.

If you’re interested in checking out Python projects on GitHub that are participating in Hacktoberfest you can search them by seeing which projects are tagged hacktoberfest. Using GitHub’s advanced search box, you’re able to search for projects that are interesting to you. To learn more about finding a project to work on, check out Hacktoberfest and Microsoft Learn guide.

2. When looking for a project, look for repositories with:

  • Issues labels titled Good First Issue and Hacktoberfest.
  • A README with a “Getting Started” and “How To Contribute” sections. Sometimes contribution documents are located at[project_org]/project/contribute. NOTE: Maintainers of these repositories may call them different things and may be inside the repository or described in external documentation that is linked. It serves as a place with instructions on how to get started and setting up the project. It can also go into detail about how bugs or features are submitted, how to structure your pull request or Python coding guidelines.
  • A Code of Conduct: This document helps protect participants by establishing expectations for behavior in the contributing community. The enforcement of this document makes sure that the community supporting the project feels safe and respected.
  • Dependencies that sound familiar to you: If you are looking for a good place to start contributing, it may be helpful to start searching for repositories that rely on packages with which you have some familiarity.

3. Find a helpful list to guide you to the right project.

If you’re unfamiliar with projects that could be a good fit, try out some of these sites:

4. Figuring out how to get un-stuck can be tough. Don’t be afraid to ask for help respectfully.

Maintainers of popular projects may receive calls for assistance frequently, however, if a project is signed up for Hacktoberfest, that’s a sign that the maintainers are interested in helping out new contributors, and they often have a lot of experience with guiding contributors in the right direction. Sometimes they will direct you to a Slack or Discord channel where people are having conversations regularly.  Commenting on issues or pull requests are the most common ways to start to engage with maintainers. Sometimes they will point you to a piece of documentation or an old issue that already addresses your question. Sometimes it may take time for them to reply to your question. These are all normal parts of contributing to Open Source. At the end of the day maintainers of Open Source Software are human and are excited for your contribution. Being helpful and respectful when reaching out is the best way to make friends and get help.

Our favorite projects accepting contributions

The Python Cloud Developer Advocates Sarah, Pamela, Jay and Anthony and Dawn, the Python Community PM, will be streaming together to talk about how we go into Open Source Contribution. Don’t miss our chat October 10th at 2PM Pacific on the Microsoft Developer Channel.

Here are some of our favorite projects and which are participating in ⭐Hacktoberfest 2022( the starred projects⭐ are participating in ⭐Hacktoberfest 2022):

  • Pyright is a static type checker for large Python source bases, and powers Pylance the default language server for Python development in Visual Studio Code and Visual Studio. It can run a “watch” mode and performs fast incremental updates when files are modified.
  • If you’re interested in contributing and maintaining efforts, the VS Code team could use the continued support in the Python community for vscode-pylint, vscode-flake8, vscode-isort, and vscode-black-formatter which are VS Code integrations for Pylint, Flake8, isort and ⭐Black respectively.
  • Black is “the uncompromising Python code formatter”, maintained by the Python Software Foundation, that removes the burden off developers to hand-format their code. There is also a VS Code extension for Black, which reports format errors in your code and fixes them. Black is participating in Hacktoberfest 2022.
  • CPython is the name of the core Python repository. The Python Developer’s Guide is the comprehensive resource for contributing to Python for both new and experienced developers. As of the release of this post, the latest is Python 3.12 of which its documentation is updated daily! A good How-To Guide written by Real Python or this talk Contributing to Core Python [YouTube] by Carol Willing’s, a Python Software Foundation Fellow, former Director and core developer for CPython, could also help point you in the right direction. The Python Software Foundation also has Python Core Mentorship that is “predicated on the idea that Python core, and Python as a whole would be served by further lowering the barrier to contribution to Python core. From fixing code bugs to translating documentation to improving Python’s official site with some front-end skills, there are lots of ways to contribute.
  • NumFOCUS affiliated projects are some of the most popular scientific Python packages in the world. The list of sponsored projects includes Numpy, pandas,⭐IPython and scikit-learn. Each of these projects have their own community that contribute back their efforts into the scientific community at large.
  • IPython is a command shell that allows code to be interpreted for interactive computing in multiple programming languages and is an alternative to using the default Python interpreter with enhanced features like syntax highlighting and object introspection during runtime. IPython is participating in Hacktoberfest 2022.
  • pytest is a popular test framework to write and run tests in Python. Learn more about pytest in Testing with pytest Microsoft Learn Module or contribute to pytest this Hacktoberfest. Pytest is participating in Hacktoberfest 2022.
  • picologging beta is a high-performance logging library for Python that is 4-10x faster than the logging module in the standard library.
  • Wagtail CMS is a Django Content Management System focused on flexibility and user experience. It has an active community on Stack Overflow and Slack of developers, designers and editors that are eager to help. They participated in Google Summer of Code 2021 and 2022 where core team members help first time contributors work on summer long projects, which fosters a community that welcomes new participants. Their contribution docs go into development set up, testing and committing code. Wagtail CMS is participating in Hacktoberfest 2022.
  • Check out some of the Python and Azure demo projects maintained by our teammates! fire-map uses Azure Functions to map MODIS Fire Detection. diversity-orgs-django is a Django implementation deployed on Azure which aggregates tech orgs that support diversity initiatives. AZ-Queue-Tweeter is a demo application that sends images to Twitter using text from Azure Queue Storage.

We love to hear from you!

The Pythonistas at Microsoft spend their working days thinking about how to help you.

Drop us a line, keep in touch:

Talk Python projects on Azure and VS Code:

Upcoming events: