Why Linux (from my point of view):
Source code is the stuff a computer program is written from:
int main(int argc, char* argv[])
{
printf(``hello, world!\n'');
return 0;
}
First we write it, then we compile it, and the the computer runs it.
In Linux, you have:
Writing code is satisfying. It is satisfying to solve your problem, it is even more satisfying when other people use your solution, and it is the most satisfying when they build upon your solution to solve another problem.
Being able to solve your own problems is convenient. Being able to discuss a problem with the original author is also very convenient. If you don't want to invest the effort to solve it yourself, you can pay someone to do it, and that's convenient too.
Writing software is an enriching experience. You learn, you grow, you become a better person by having helped yourself and others. And if you're good, you get paid for your work, and that's another way of enrichment.