Skip to content
Extraits de code Groupes Projets
Valider d8c61d7e rédigé par Xavier Sanchez-Rivas's avatar Xavier Sanchez-Rivas
Parcourir les fichiers

Add report Xavier Sanchez 16171800

parent 38ef6b58
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
## Contributing to an Open Source Project :
| **Author** | Xavier < Sanchez-Rivas |
| ----------------------- | -------------------------------------------------------------------------------------------- |
| **Date** | 25/11/2024 |
| **NOMA** | 1617-18-00 |
| **Academic Year** | 2024-2025 |
| **Open Source Project** | [findissues](https://github.com/MinecraftForge/MinecraftForge) |
| **Pull request made:** | [#10163](https://github.com/MinecraftForge/MinecraftForge/pull/10163) |
| **License** | [GPL license](https://github.com/MinecraftForge/MinecraftForge/blob/1.21.x/LICENSE.txt) |
## **Project selection**
The project selection process began as soon as the assignment was announced and explained. My initial feeling was one of uncertainty; I wasn’t sure where to start. My first idea was to explore GitHub projects that needed help, focusing on those tagged "Help wanted" or with "first good issues." However, the sheer number of available projects left me overwhelmed and unsure where to look.
So I turned to a subject I’ve been passionate for years, like many others: video games. I reached out to the developers of League of Legends to ask if I could contribute by fixing bugs in the game itself. As I expected, they politely declined but wished me good luck with my coursework.
Then I shifted my focus to another game that marked my youth: Minecraft. I found a mod for Minecraft called Forge, which aims to assist with compatibility between the game’s various mods. This project aligned perfectly with my interests and seemed like an excellent opportunity to contribute.
## **Contributing to the project**
My first step was to ask the moderators of the project’s Discord server for a general explanation of how the contribution process worked. Here’s what one of the administrator, Fealtous, shared with me:
"If you're familiar at all with github, standard git/software development procedures is most of the answer to that.
When a change is desired, a Pull Request is made (for example, here is one of paint's https://github.com/MinecraftForge/MinecraftForge/pull/10085). Once it's complete, it will be reviewed by the Triage team and/or Lex. If changes need to be made to to comply with code style or functionality changes, they'll be requested during this stage.
If everyone's happy, it will be approved and merged into the branch the PR is targeting.
This is just a general overview of the process, there might be some other steps involved but for the sake of a simple description, that's it."
The license of this project is a typical GPL license.
When I began working with the code, understanding how everything functioned proved very challenging. My initial focus was on the BlockProvider component, but testing and verifying that the code worked in the game was difficult. Significant installation issues made progress slow and frustrating. When I hit a roadblock, I decided to shift my attention to another issue involving NetworkRegistry.
I was pleasantly surprised by the kindness and constructive tone of the feedback I received on my first pull request. The feedback was detailed and aimed at helping me understand the project’s expectations and improve the quality of my contribution. I particularly appreciated the way the moderators took the time to explain what needed to be corrected and guided me through the process of refining my code. This experience helped me understand the importance of following best practices in collaborative development, such as splitting changes into separate PRs to facilitate review and avoid mixing formatting adjustments with functional code changes.
I also discovered useful tools and tips, particularly for configuring IntelliJ to prevent unintended formatting changes, which will undoubtedly be helpful in my future contributions. In summary, this exchange not only allowed me to improve my PR but also helped me acquire valuable skills for my future open-source contributions.
## **Conclusion**
This project has been a significant learning experience, teaching me how to engage effectively with an open-source community. It has highlighted the importance of perseverance, adaptability, collaboration and kindness, which are essential for contributing successfully to any project. I look forward to applying these lessons in my future contributions.
## **Book**
"La nuit des Temps" by René Barjavel, a science fiction novel published in 1968.
Synopsis: The story begins with an international scientific expedition in Antarctica. The researchers detect a strange signal beneath the ice, seemingly originating from a long-lost civilization. After drilling to an extreme depth, they discover a gigantic golden sphere containing artifacts from a highly advanced civilization that lived 900,000 years ago...
This book is highly interesting because it addresses the topic of: The fragility of civilization and the danger of technology. It shows how a technologically advanced society can destroy itself due to ambition and human conflicts. This theme remains highly relevant today with the ongoing wars and the "threat" posed by artificial intelligence.
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