The developer in me says life and our society are like open source software. A gigantic piece of code constantly being rewritten and growing exponentially over time. Too much for anyone to truly grasp in its completeness as time progresses, but also not purely spaghetti code, so you can always break it down into smaller components one can eventually understand. Of course, like the author argues, you can use this software without ever caring or wondering about its inner workings. Or you can try to make contributions. However, there are no contribution guidelines for life. "Usefulness" depends on everyones' individual definition (improve the kernel or code readability) and "capacity to act" doesn't age well (I started hacking with jQuery). A contribution can be anything that may leave an impression on someone - a single person or any amount of people, a good or (for sake of completeness) a bad impression, something forgotten after an instant or something passed on for generations in some form or another - legacy contributions that eventually also get rewritten over time. Personally, I don't think the results matter as much as trying to make these contributions. After all, not all merge-requests make it into production code, but they are all worthy efforts of trying to improve small parts of the software of life and move our society forward.