My contributions @ KWoC 2022
P.S. I got selected as a top contributor š
Introduction
As a new open-source contributor, participating in the Kharagpur winter of code 2022 event was an incredibly valuable experience for me. I had the opportunity to work on an open-source project and make meaningful contributions to their codebase.
Projects I worked on
List of pull requests made by me
Summary
I work on Linux and use the command line all the time. This is probably the reason I gravitated towards Pydirman because it is a command-line application for Linux systems.
The first issue I faced with the project was with the installation. The project was initially developed only for Debian Linux. So naturally, my first step was to port the project for Arch Linux (my working distro). I had to replace the bash commands with the package manager for Arch Linux. Features like user input for required packages and optimising the path of the installed files were added and a single setup.py was created.
Once I had the project installed I started using the project on a daily basis. Which exposed some bugs and inadequacies. The default text editor used was nano, which is a command line text editor. The command line text editor which is most popular is 'vim'. So I modified the code so that users can use their choice of text editor by specifying it in the '.pydirman.config' configuration file. Another issue concerned with the 'test' command was fixed within this same pull request.
The next pull request I've updated the README.md to reflect the changes in the project. Also added the support for python debugger, this will enable the user to use the python debugger inside the Pydirman 'test' interface. Added support to execute .pyw python files alongside normal .py files. Finally created an uninstall.py file which removes all the installed files.
Future Work
-
Making a separate terminal emulator with python tkinter to display the 'test' interface.
-
Adding support for the 'u - open USB drive' command for other distros.
(referenced in the Issues tab)
-
Working on other projects like: DeGrasse - Python Discord Bot Using NASA Space API's and more, Code Runner
Learnings
One of the most important things I learned during my time as a KWoC participant was the importance of effective communication. I also learned the importance of asking for help when needed, as there were always team members and mentors available to support me.
I also gained valuable experience in project management and time management, as I had to juggle my KWoC commitments with my other responsibilities.