I recently had the opportunity to attend a talk by Richard Stallman touching on what the free (and open-source) software movement means. Attending Stallman's talk was an eye-opening experience that left me thinking about the foudations of computer science and its implications on society.
For those who are unfamiliar, Richard Stallman could be considered one of the 'founding fathers' of computer science.
He worked at MIT for many years, and most notably, pioneered GNU, an operating system and collection of free software, and the Free Software Foundation, a nonprofit with the mission of promoting free software.
He directly created the GNU of GNU/Linux, GNU Emacs, GCC (GNU Compiler Collection), and GDB (GNU Debugger).
These are software that I use daily as a developer, and since GNU/Linux makes up a majority of server computers, the world as we know it runs on GNU.
GNU/Linux was also created at the starting point of operating systems. The code for different Unix versions are publicly available now, but at the time, there was no truly open-sourced operating system. (In fact, GNU stands for "GNU's Not Unix".)
Without the creation of GNU, research and development of operating systems as a whole would have also been significantly limited.
The Free Software Foundation (FSF) was founded in 1985 to support the development of the GNU Project, the development of free software, and promotion of the ideals of free software. It advocates for the technological, ethical, and social aspects of software freedom.
As defined by Stallman, free software was not at all a matter of price. He made it a point to mention that he sold GNU Emacs on physical media when he first developed it. Free software is about the freedom to use, study, modify, and share the software.
He says that if you could not control the software, then you were enslaved by the software. The software obeys itself or someone else which he deems a privacy and security concern.
As a computer scientist, I couldn't miss out on the opportunity to hear and speak with such a pillar of the computer science world. I use much of his software, and I wouldn't be able to do the things that I do in the ways that I do them without the work of Richard Stallman.
Watching Stallman speak reminded me of why I am drawn to programming and computer science in the first place - to do work that I enjoy while making a positive impact on the world. Whether it is working on a free software project that I believe in, contributing to research, or teaching others, I love learning and applying my knowledge to help the people that I care about and society as a whole. The societal implications of computing choices cannot be overstated.
Hearing Stallman's philosophy and its relation to the constitution and human rights forced me to think about how I use my skills and the impact that they may have. Stallman, as an example, has influenced the globe beyond the tooling used by software engineers. Projects like GNU/Linux, Firefox, and the Google Summer of Code would not exist without the principles of free software. The cultural influence has been integral to modern software development.
Not everyone has access to the funds necessary for education and research; and not all proprietary software is safe from hackers or malicious insiders. I think everyone should think critically about how the free software philosophies apply to their lives. For software engineers, it is not just about writing code, it is about writing code that respects our freedoms. Stallman's talk reminds us that, as scientists, we hold the power to shape how the world develops, and that power should be used responsibly.
Happy Hacking