Now what RMS did with open source took this to the next level. Now there is so much control in the hands of the programmers and end users. You can keep stepping into functions until you hit the metal while debugging. Its fantastic and so much better than the previous opaque proprietary libraries of old. Any kid can modify whatever they want. I feel the young people today using npm, pip etc don't really appreciate how different a world we program in thanks to RMS. Had the dev world stayed on the 70's path we would be in a very different place that would have a fraction of the apps we see today.
Now, this lack of history is starting to come back around and bite us. I year and half ago I was on a project that brought on a new manager. He announced that the company was switching everything to Salesforce. He based his decision on the fact that Salesforce throws good parties and he had been invited to one. I looked into it and at the time you had to develop using a language called lightning that was a strange mix of java and sql that, surprise surprise, only ran on their proprietary platform. Because I am now the old guy on every team I spoke my mind and told them this was an obvious trap and once we go down this very expensive road it will be very difficult to get off. The manager guy looked disappointed and said he understood what I was saying. In an effort to get me on board, and missing my point entirely, he got me invited to one of their parties (which had half decent wine and great food and I did not say the phrase "this is an obvious trap" even once, I swear (but I did think it)). Long story short, I quit the job in disgust at their tech choices. (in fairness to SF, I heard near the end that they were switching to javascript, so they may know they need to be more open source)
RMS should be very proud of the fact that no sane programmer in this day and age would ever use anything other than open source. We need to teach tech history to avoid repeating the mistakes of the past.