Actually there’s an idea sparking up on me.
When I was a junior programmer there were some business guys coming up with the requirement to implement their own validation language (similar to regex). I always thought it is totally stupid to invent your own instead of using something that already exists. But it turned out to be great fun implementing it. I had no prior knowledge in implementing parsers and interpreters. But man I was so proud after I came up with my own solution for the problem. It was such fun, that I even was doing over hours. At the end I create my own tokenizer, a parser and an interpreter. Even something similar to what I now know most people would call an AST (abstract syntax tree).
However, I know I have bought the Crafting Interpreters book without having read it. I really should start digging into it.
Yea doing some FOSS contributions definitely was something I always was considering. But then as soon as I was looking for the right project things started to get complicated again. And even if you find a cool project you look into the issue list and imposter-syndrome starts kicking in.
The main reason is that there is no single Linux operating system. Linux basically is just the kernel. Every thing else around this kernel, like tools, applications and libraries, is highly customisable and exists in form of various forms of Linux operating system distributions. The fact that these distributions are very different from each other makes it almost impossible to certify industrial products for „the Linux“ operating system. There are just too many variations of it.