Skip to content
Extraits de code Groupes Projets
Valider 63422101 rédigé par Hugo Delporte's avatar Hugo Delporte Validation de Lionel Dricot
Parcourir les fichiers

Add report Hugo Delporte (47142000)

parent 91c7fe35
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!387Add report Hugo Delporte (47142000)
# **LINFO2401 project report - Contributing to an Open Source project**
| **Author:** | Hugo Delporte |
| ------------------------ |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **NOMA:** | 47142000 |
| **Academic Year:** | 2024-2025 |
| **Open Source Projects:** | [Learn-Git](https://github.com/rcallaby/Learn-Git) |
| **Pull requests made:** | [#767](https://github.com/rcallaby/Learn-Git/pull/767), [#768](https://github.com/rcallaby/Learn-Git/pull/767) and [#769](https://github.com/rcallaby/Learn-Git/pull/769) |
| **License** | MIT License |
## Finding and contributing to a project (blog)
**12/10/2024** : As this would be my first contribution to an open-source project, I wanted to find a project that would be easy to contribute to. I started by looking for projects that I use on a daily basis. I quickly realized that most of the software I use is not open-source, and the ones that are too complex for me to contribute to :
- VSCode : I use it every day, but it is a very complex project and I don't think I would be able to contribute to it.
- Bitwarden : Also a project I use every day, but the project is too complex and there is too much security involved for me to contribute to it.
- Overleaf (online LaTeX editor) : I use it very often to write reports, but the project has recently become very "business-oriented" and I don't really feel like doing free work for a company that is making a lot of money.
- I then realized I was often using a very well-know library for making graphs in Python: [matplotlib](https://github.com/matplotlib/matplotlib). I thought that it would be really nice to contribute to a project that I like, and that is also very well known and used. I created my fork of the project and made it run locally.
**19/10/2024** : I start to look for open issues for beginners. In the issue tracker, I look for the ones with the label "good first issue". I start noticing a bit of a problem : there are _a lot_ of people wanting to contribute to the project, and there is a "No assigned issues" policy to avoid [cookie licking](https://www.redhat.com/en/blog/dont-lick-cookie).
This is of course very good for the quick progress of the project, but, unfortunately for me, results in a lot of beginner issues being closed very quickly. My reasonning at this point is that I will regurlaly check for a beginner issue, and if I see one, I will try to solve it as quickly as possible if I can.
_After a few weeks, I start to forget a bit about it due to a lot of other projects in different courses and medical issues._
**05/12/2024** : I come back to this project and start looking again for issues open for me in matplotlib.
**13/12/2024** : I realize this is a bit too late to contribute to matplotlib, and I start looking for other projects. Not being very inspired, I start looking into this git for projects that previous students have contributed to.
A lot of them are not really active anymore, but I find a project called [Learn-Git](https://github.com/rcallaby/Learn-Git) that Nicolas Daube had contributed to last year. It is a project with lessons to learn git, translated in multiple languages.
It seems very open to new contributions. In the issue tracker, I notice that the French translation of the courses is not complete. I decide to finish the translation and make a pull request.
**14/12/2024** : I start working on the translation. There are 3 open issues for the French translation, and I do one pull request for each of them, as requested by the maintainer. The issues I work on are :
- Translation of Lesson 6
- Changing the names of some files to make them more coherent with the rest of the project
- Updating the readme to include the new lessons and redirect to the French translation.
## Conclusion
I really would have liked to contribute to a project that I cared more about, but I found myself really late and decided that it was better to contribute to a small project like this than to do nothing. Overall, I still learned a lot by trying to contribute to matplotlib : how to fork a project, run it locally, where to look for beginner issues, etc. It was however a project that was probably a little big too big for a first ever open source contribution, and the fact that a lot of people are trying to contribute to it surely didn’t help.
With those learnings, I was able to very quickly fall back on my feet and get to work efficiently to contribute to Learn-Git. I was able to exchange a bit with the creator of the repo when merging the pull requests.
Although I would have liked to contribute to a more meaningful project, I am happy to have contributed to an open-source project. I learned a lot about git and the open-source community. I think most of my learnings actually came from looking for a project and trying to contribute to matplotlib, rather than the actual contribution to Learn-Git. I will definitely try to contribute to more projects in the future, and I hope to find a project that I use on a daily basis and that I can contribute to in a more meaningful way.
## References
- Nicolas Daube, for the inspiration of the project
- ChatGPT, for helping to find possible errors in my translation of Lesson 6 (PR #768)
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter