Nishka Dasgupta

Computer scientist, reader, writer

Outreachy: Some Final Thoughts

As my internship with Outreachy concludes, I can only look back and realise how far I have come in the past three months. Although the nature of an Outreachy application means that I had submitted patches before my internship, it was the internship itself that made me feel much more confident in making open source and free software contributions.

For a start, as I have mentioned before on this blog, my internship gave me the opportunity to poke around in files all over the Linux kernel, whether or not they compiled on my native architecture. While I will not claim to understand the function of every file, I do understand some things better now than when I started. I am now relatively comfortable with the directory structure of the kernel as well as the formatting requirements for the files I have worked on most frequently.

The scope of my patches put me in touch with a wide variety of kernel maintainers, and their feedback was instructive. That different maintainers might want different formatting of patch subject lines was not something I had considered before, although it seems logical in hindsight.

My mistakes were always educational. The same change might be accepted in one driver but rejected in another; or perhaps different maintainers of the same driver might disagree over the correctness of my proposed patch. The resulting debates taught me a lot about different parts of the kernel. As more and more of my patches were accepted, I gained the confidence to question rejections, not so much out of a desire to argue but so I could learn from my mistakes. Even this would have seemed unthinkable not so long ago; however, I do not regret having asked kernel developers other than my mentor how I could do better. Their responses were always instructive. Very rarely, I was even able to make the developer see things my way (albeit for very mundane reasons such as confused phrasing in my original rejected patch).

I do certainly intend to continue contributing to Linux even after my internship ends. I also hope to branch out into other free and open source software. While I know that I still have a long way to go, this internship has taught me that I do have a non-zero chance of succeeding as well. If I have learned anything over the past three months, it is that the open source community does not consist of unfriendly people who have no patience for newcomers. While communication styles vary, many of them will be amenable to changes from any source, so long as the prospective contributor is willing to put in effort. I look forward to continuing to work in this community.