Freedom of expression is man’s fundamental freedom, Similarly for a developer, the freedom of expression translates to the freedom to write/checkin code (both express ideas into words), and it also comes with great responsibilities. It should never cause problems to others on the team, and keep the fabric of the code intact.
Most development teams lie at points in the spectrum of freedom allowed to the developers. Some can check in whatever they want and some need to go through a big process before the code goes into the repository. In agile teams, continous integration ensures that bad code is not checked in and others are not affected.
During various points in time people will restrict the freedom to write code and it should like RMS says be resisted at the very beginning. Unless most developers take a proactive stance against such restrictions, it will be hard to hold on to this freedom and will be lost to overheads who don’t understand much.