GSoC - Accepted to Google Summer of Code 2024

In the final moments of the MiniDebconf in Belo Horizonte that I attended back in April, as I was heading to the airport to go back home, a notification popped up on my phone: I had been accepted into Google Summer of Code 2024. It was a surreal and incredibly exciting moment.

Snapshot: MiniDebconf Belo Horizonte 2024

Small Picture

Google Summer of Code

Google Summer of Code provides a unique opportunity for participants to dive into open-source projects, gaining hands-on experience and contributing to global software development communities. Moreover, participants have the chance to enhance their technical skills, build professional networks, and often receive recognition and awards for their outstanding work throughout the program.

Why kworkflow?

Nowadays, the Linux kernel is a ubiquitous and critical piece of software for the modern world, as it has been for years. Kernel development has a giant impact on the technology industry as a whole. The kw project aims to provide tools for everyday tasks and be a unified environment for kernel developers.

Developing for the kernel is a complex task and can often be very time-consuming. Any help that can speed up this process is valuable. In this sense, kworkflow stands out for facilitating the workflow of kernel developers. I discovered the project through Rodrigo Siqueira, the primary maintainer of the project, who introduced it to me. Since then, I have enjoyed a remarkably enriching experience while contributing to the project, expanding my knowledge in areas such as the use of Linux, Linux kernel development, Bash script, and advanced Git.

My proposal

Currently, kworkflow has unit tests to validate functionalities, in addition to some basic integration tests, but the latter are not as robust as the maintainers desire. My proposal for this GSoC is to develop a robust infrastructure and implement integration tests that cover the deploy process. Furthermore, I plan to expand the coverage of integration tests, encompassing more system functionalities and flows, and improving the existing testing infrastructure. Additionally, an idea exists for implementing an acceptance testing pipeline that replicates a user’s workflow, leveraging the full suite of kworkflow features.

Conclusion

I believe this will be a valuable opportunity for both my personal growth and my career. I’m really excited about it! :-)