当前位置:网站首页>这一次,话筒给你:向自由软件之父 Richard M. Stallman 提问啦!
这一次,话筒给你:向自由软件之父 Richard M. Stallman 提问啦!
2022-08-10 00:18:00 【《新程序员》编辑部】
亲爱的各位开发者朋友们,大家下午好啊~
近年来开源热潮席卷全球,但许多人可能不太了解,其实在开源软件之前还有另一个很重要的概念——自由软件,而 Richard M. Stallman 就是自由软件运动的发起人,即“自由软件之父”。
恰逢最近 CSDN《新程序员》即将采访自由软件之父 Richard M. Stallman,在此面向所有开发者征集“你最想问 Richard M. Stallman 的 1 个问题”,欢迎各位程序员们留言提出自己最为关心的问题!
从上面这张照片可以看出,与传说中容易脱发的程序员不同,Richard M. Stallman 拥有一头浓密的头发,在技术圈中也颇有名望:Richard M. Stallman,代号“RMS”,世界神级程序员之一,自由软件基金会 FSF(Free Software Foundation)创办人,也是 Emacs 的构建者、软件自由的传教士。
一、起底这位“自由软件之父”
从小,Stallman 就对计算机有着浓厚的兴趣,高中时期便开始学习 IBM 7090 手册研究计算机入门,也参加了一些编程课程。到了 1970 年,Stallman 考入哈佛大学,偶然成为了麻省理工学院(MIT)人工智能实验室的一名程序员,同时经常以“RMS”之名活跃在黑客社区。
1974 年,从哈佛大学毕业的 Stallman 决定去麻省理工读研,之后在攻读物理学博士学位一年后选择了放弃,决定专注于他在麻省理工学院人工智能实验室的工作,深入 AI、软件项目等方向的钻研。
然而进入 80 年代后,计算机行业中商业化和软件专有化盛行,在 Stallman 看来,专有软件是一种“为分离人类而砌造的壁垒”。因此,他在 1983 年决心创建一个完全自由软件组成的类 Unix 计算机操作系统,GNU 项目由此发起,旨在倡导软件用户能够对软件自由进行使用、学习、共享和修改。
一开始,GNU 计划只有他一个人,甚至在想为 GNU 系统引入一个编译器遭对方无情拒绝后,Stallman 也是凭一己之力从头编写了全新的编译器 GCC(GNU Compiler Collection)。
随后在 1984 年 9 月,Stallman 开始编写 GUN Emacs,到次年年初该工具就已经可以使用了,并迅速在开发者之间流行开来,如今更是业界公认最受专业程序员喜爱的代码编辑器之一——广为使用的 GNU 通用公共协议证书(GNU General Public License, GNU GPL)也在那时诞生。
彼时,Stallman 为防止不法厂商将自由软件专有化,与许多律师一同起草了 GNU GPL 协议,创造了 Copyleft 的授权办法,即可以拷贝、修改、甚至出售自由软件,但关于源代码所有的改进和修改都必须对外公开,以此确保自由软件传播的延续性。
到了 1985 年,Emacs 的成功推动 Stallman 创建了自由软件基金会(Free Software Foundation,简称 FSF),致力于消除对计算机程序在复制、分发、理解和修改方面的限制。
二、作为自由软件倡导者,拒绝倡导开源
可能对于许多开发者来说,以上 Stallman 的这些事迹并不属于他们熟知的范围,但如果说 Linux 操作系统的诞生至少有他一半的功劳呢?
在很多人的认知中,1991年 Linus Torvalds 设计编写了 Linux 系统内核,但实际上仅内核并不能代表整个操作系统,其中还包含大量用于编译、项目管理、运行的各种工具和各种函数库,而它们大多都源于 GNU 项目——所以,Stallman 一直认为,将 Linux 操作系统称为 GNU/Linux 更为合适。
此外,尽管如今开源之势盛行,但作为自由软件的倡导者的 Stallman 却一直将自由软件和开源划清界限,甚至还有些抵制。这一点在 Stallman 邮件回复 CSDN 的采访邀约中再次提到:
“开源”的关键在于忘记自由。开源重复了自由软件的次要方面,却压制了它的关键之处。这就是我拒绝提倡开源的原因。
除了拒绝倡导“开源”,Stallman 还曾说过许多语出惊人的言论,每次几乎都能引起开发者们的激烈讨论:
Mac 正朝着“监狱”的方向发展。用户越来越难安装自己的可执行程序。这理应是非法的。
Ubuntu 是一个非自由发行版,我不建议任何人使用它。
如果学校不得不使用 Zoom 之类的非自由软件,那么老师们应该在每一堂课上说自己为使用 Zoom 感到羞耻。
那些沉迷于非自由游戏的人,实际是在一起做有损自己利益的事情。
……
至此,在初步了解了这位圈内传奇且颇具脾性的自由软件之父后,接下来让我们更进一步走近他的世界吧!现在,把你最想向 Richard M. Stallman 提问的内容在评论区写下,我们将精选最有意思、有深度的问题向他采访提问。
提问方式:在评论中发出即可,最好详实、具体、有针对性。
一旦你的提问被采纳,还将有机会获得由《新程序员》编辑部提供的礼品哟~赶快行动吧!
边栏推荐
- 收银管理软件如何做好员工管理?
- 3.4 - 编译与解释 3.5 - 编译过程 3.8 - 文法
- 基于Web的疫情隔离区订餐系统
- -red and black-
- win10重装系统后没声音怎么办?
- R语言使用glm函数构建logistic回归模型,使用forestmodel包的forest_model函数可视化逻辑回归模型对应的森林图
- 游泳馆系统次卡的设置有哪些细节?
- 365 days challenge LeetCode1000 questions - Day 052 Step by step summation to get the minimum value of positive numbers Greedy
- 深入理解Aarch64内存管理
- 快速响应性智能型/智能响应性聚乙二醇纳米/还原响应型水凝胶的研究与制备
猜你喜欢
Quick responsiveness intelligent/smart responsiveness of polyethylene glycol type nano/reduction response hydrogels research and preparation
【CAS:41994-02-9 |Biotinyl tyramide】Biotinyl tyramide price
365天挑战LeetCode1000题——Day 052 逐步求和得到正数的最小值 贪心
最高月薪15K,谁有历经千辛万苦的意志,谁就能收获属于自己的成功~
CAS:851113-28-5 (Biotin-ahx-ahx-tyramine)
西安生物素-四聚乙二醇-酰胺-4苯酚 浅黄色半固态
03|Process Control
ASEMI整流桥GBJ1010参数,GBJ1010规格,GBJ1010封装
数据的存储——C语言
How to add control panel to right click menu in win7
随机推荐
abicc 知:API compatibility report 介绍
基于SSM实现手机销售商城系统
技术分享 | 接口自动化测试如何处理 Header cookie
LeetCode常见题型——链表
02| operator
字符统计柱状图
3.4 - 编译与解释 3.5 - 编译过程 3.8 - 文法
鲜花线上销售管理系统的设计与实现
收银管理软件如何做好员工管理?
【Django】缓存
Prometeus 2.31.0 新特性
CVPR22 Oral|通过多尺度token聚合分流自注意力,代码已开源
Enhanced Deep Residual Networks for Single Image Super-Resolution
CAS:183896-00-6 (Biotin-PEG3-C3-NH2) PEG衍生物
算法---整数替换(Kotlin)
C language pointer practice questions
Are the numbers entered symmetrical?
Kubernetes 开发环境比对
JVM :运行时数据区-虚拟机栈
商业模式及其 SubDAO 深入研究