Les libertés (1) et (3) en impliquent une dernière, d’égale importance : l’accès au code source du programme. Tout programme qui offre à quiconque ces libertés est « libre » ; tout logiciel qui compromet l’une d’elles ne l’est pas.
Stallman lança son mouvement en réaction aux changements qui s’opéraient dans le milieu de la programmation logicielle. Dans le monde qu’il avait connu, les programmeurs étaient une sorte de scientifiques guidés par l’éthique. Les développeurs travaillaient sur des problèmes en commun, et partageaient les connaissances issues de leur travail. Il y a plus de 60 ans, le sociologue Robert Merton disait de la science que « les attaques naissantes et réelles contre l’intégrité de la science ont mené les scientifiques à reconnaître leur dépendance à l’égard de types particuliers de structure sociale » ; donc, Stallman pensait lui aussi que la
liberté de programmer se trouvait confrontée à des « attaques naissantes et réelles ». La défense de cette liberté, pensait-il, dépendrait de « types particuliers de structure sociale ». Il a donc cherché à en créer une qui aiderait les développeurs à préserver l’intégrité que leur discipline devait avoir selon lui. Le fondement
de cette structure serait un système d’exploitation « libre », inspiré d’Unix sans être Unix (et donc intelligemment nommé GNU — ‘Gnu is Not Unix’ : Gnu N’est pas Unix).