diff --git a/projects/projects_2022_23/Report-Arthur-Ferier-20691800.md b/projects/projects_2022_23/Report-Arthur-Ferier-20691800.md new file mode 100644 index 0000000000000000000000000000000000000000..de2e3c3fcebee6059274814e3d227f306712b36d --- /dev/null +++ b/projects/projects_2022_23/Report-Arthur-Ferier-20691800.md @@ -0,0 +1,68 @@ +# Contributing to an Open Source Project : Python-sc2 + +| **Author:** | Arthur Ferier | +| ------------------------ | ---------------------------------------- | +| **Date:** | 19/01/2023 | +| **NOMA:** | 20691800 | +| **Academic Year:** | 2022-2023 | +| **Open Source Project:** | [python-sc2](https://github.com/BurnySc2/python-sc2)| +| **Pull request made:** | [Pull Request](https://github.com/BurnySc2/python-sc2/pull/159) | + + + +## Why this project ? + +It took me all the term to choose the project I wanted to contribute to. +I First searched for simple projects so that I wouldn't be bothered with complicated code that is not useful to learn. +Then, I remembered about a project I cloned (and used) two years ago to use for my own fun which was _BurnySc2/Python-sc2_. +The library consists on an Interface to create bots powered by machine learning for the game Starcraft 2. + +I was already running Ubuntu for my daily use and I had a rough time making the library work on a linux platform +since the game is originally designed for Microsoft and Mac users. +The library was designed to include the linux users to use it, +but the Readme.md file wasn't clear to me, at the time. +So I decided to update it, for the project but also for myself and +the other users of this library that is meaningful to me. + +## Getting in touch with the maintainer + +Before contributing to the project, I sent a message on discord to Burny, the maintainer of the project. +I already had a conversation with him 2 years ago when we tried to make the library work on linux together, so I knew +that I could contact him by this channel of conversation. +I told him what I wanted to do, and he said that it was a good idea and that +he could personally review my PR when it would be done. + +## The project + +What I wanted to do was not really complicated, since it is only modifying a .md file and I already noted all the steps +required to make the project work under linux. +I was surprised to see that all the steps were already here on the Readme.md file. I don't know if they were already there +two years ago, or that I just didn't take the time to properly read the file back then... +In any case, I found that all these steps could be gathered on one place to make it easier to follow. +I also changed the size of the titles of the different sections. + +#### 31 December +I made the pull request and notified Burny. He checked it, found that I introduced a typo and there was +a broken URL somewhere else on the file (not my fault in this case). from that, he made 2 request changes which I accepted. +he showed no more activity until the 5th of january. + +#### 5 January +I got a response from him, he asked me to make a few more structural changes. +We had a last discussion on a few changes, until he was happy with the result and accepted my pull request. + +## conclusion and learning from the project + +it was fun to contribute to this project, and now I know a bit more on how to contribute to projects. I won't be +shy the next time I encounter an interesting project with ways of contributing that are at my level. It is really +rewarding to do things for my own sake, and for the others at the same time ! + +The next thing I learned is the gain of time to first get in touch with an active member of the repository and discuss with +the person, before making any changes. It allowed me to do things that I knew would be in the same mindset as the +community. It was also a lot quicker to get the PR accepted this way in py opinion. + +finally, I learned new things about git and GitHub which was all the PR stuff : + - how to make a PR (first forking the project and then making the PR in question) + - how to accept request changes (I personally had difficulties to do it) + - Getting more experience the GUI interface of GitHub for PR + +And it will now take less time for the linux users to run Starcraft II bots !