„You see, some people have a talent for programming. At ten to thirteen years old, typically, they're fascinated, and if they use a program, they want to know: “How does it do this?” But when they ask the teacher, if it's proprietary, the teacher has to say: “I'm sorry, it's a secret, we can't find out.” Which means education is forbidden. A proprietary program is the enemy of the spirit of education. It's knowledge withheld, so it should not be tolerated in a school, even though there may be plenty of people in the school who don't care about programming, don't want to learn this. Still, because it's the enemy of the spirit of education, it shouldn't be there in the school.
But if the program is free, the teacher can explain what he knows, and then give out copies of the source code, saying: “Read it and you'll understand everything.” And those who are really fascinated, they will read it! And this gives them an opportunity to start to learn how to be good programmers.
To learn to be a good programmer, you'll need to recognize that certain ways of writing code, even if they make sense to you and they are correct, they're not good because other people will have trouble understanding them. Good code is clear code that others will have an easy time working on when they need to make further changes.
How do you learn to write good clear code? You do it by reading lots of code, and writing lots of code. Well, only free software offers the chance to read the code of large programs that we really use. And then you have to write lots of code, which means you have to write changes in large programs.
How do you learn to write good code for the large programs? You have to start small, which does not mean small program, oh no! The challenges of the code for large programs don't even begin to appear in small programs. So the way you start small at writing code for large programs is by writing small changes in large programs. And only free software gives you the chance to do that.“
— Richard Stallman American software freedom activist, short story writer and computer programmer, founder of the GNU project 1953
A Free Digital Society - What Makes Digital Inclusion Good or Bad? http://www.gnu.org/philosophy/free-digital-society.html#education; Lecture at Sciences Po in Paris (19 October 2011)]