Breanna Devore-McDonald <Breanna.S.Devore-McDonald.1@xxxxxx> writes: > Hello all, Hello, > I'm a third year Computer Science student at the University of Notre > Dame, and for the final project of my Data Structures class, my group > and I have to find a way to contribute our (hopefully) newly-found > data structures and optimization knowledge to a well-known open source > project. We thought Git would be a great project to work on, but we > have no idea where to start. I am a teacher and I offer my students a similar project. I maintain a list of small projects as source of inspiration for students: https://git.wiki.kernel.org/index.php/SmallProjectsIdeas Some advices before you get started: * Start with a very, very small contribution, as soon as possible. The list of microprojects from GSoC is a good place to start, and the easiest projects in the page above can be of interest too. This way, you will: - Understand how submitting contributions work (if you haven't done so, read https://github.com/git/git/blob/master/Documentation/SubmittingPatches ) - Get an idea of how productive you are when working with the Git codebase. * Even for the actual project, don't try something hard. The difficulty here is not to write the first draft, but to get it properly tested, reviewed, to respond to reviewers, and finally get the code accepted into git.git. Unlike traditional school projects, you can't anticipate difficulties (no teacher wrote the correct version for you in advance...), and the quality standard is much higher than what you're probably used to. A rough heuristics: estimate how long you are going to take for your project, multiply by 2 or 3, and you're still getting an underestimation. As a comparison, for Google summer of code, a very good student works full-time for 2 months and writes about 2000 to 3000 lines of code. BTW, how long is your project? How many students in your group? * Interact with the mailing-list as much as you can and as early as you can. What you want to avoid is to write a large amount of code and get it reviewed at the end of your project. That would almost certainly result in requests for changes that you wouldn't have time to apply. OK, that may all be a bit discourraging ;-). But it shouldn't: it's _really_ very interesting to contribute to a project like Git. -- Matthieu Moy http://www-verimag.imag.fr/~moy/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html