As a software developer, contributing to open-source projects is an excellent way to improve your skills and collaborate with other developers worldwide. I recently had the opportunity to contribute to an open-source project called "Junction", which manages call for proposals in PyCon India conferences.
I am grateful to my employer, EPAM, for providing me with the opportunity to work on open-source projects. EPAM is a global software engineering services company that offers a range of technology solutions to help clients transform their businesses. In the Python unit at EPAM, we have a culture of open-source contribution, and we are encouraged to participate in such projects.
My First Open-Source Project
Junction was the first open-source project I worked on, and it was an incredible learning experience. The project is available on GitHub https://github.com/pythonindia/junction, where developers can collaborate and contribute to open issues.
When my colleagues- Ananya Maiti, Rohit Chopra and I first looked into Junction, we found that the project had multiple issues, including broken GitHub login and password reset, deprecated versions of Python and Django, to dockerize Junction and other technical problems. Our first task was to upgrade Python and Django to their latest versions, which would help address many of the project's other issues.
Fixing Open Issues
I and Rohit worked together to upgrade Python to version 3.10 and Django to version 3.2. We also fixed the social login issue via GitHub and Google, allowing users to log in and reset their passwords through these platforms. Additionally, we worked on several other issues, such as dropping Python 2 support, upgrading Django to 2.2 LTS, and fixing other bugs and technical issues.
Our work on the GitHub issues #730, #614, and #611 helped to address several critical problems with Junction. By upgrading to the latest versions of Python and Django, we ensured that the project was running on stable, reliable software. We also fixed the social login issue, which is an essential feature for many users. Dropping support for Python 2 allowed us to take advantage of the latest language features and make the code more efficient and maintainable.
Ananya Maiti worked on dockerizing Junction and made it ready for the production #749. He also fixed few unit tests which were failing after Django 2.2 upgrade and added gunicorn for Production Server #748. Fixing SMTP configuration for sending emails, conference moderator filter so that Conference is viewable to Moderators in Django Admin Panel and Proposal comment template parameters which were causing 404 errors were fixed by him only.
Overall, contributing to Junction was a challenging but rewarding experience. We had the opportunity to work with developers from around the world and learn from their skills and expertise. The technical challenges we faced helped us to improve our skills and gain a deeper understanding of software development. We encourage other developers to contribute to open-source projects, as it is a great way to improve your skills and contribute to the community.
Disclaimer
This is a personal [blog, post, statement, opinion]. The views and opinions expressed here are only those of the author and do not represent those of any organization or any individual with whom the author may be associated, professionally or personally.
Top comments (0)