HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

这 5 个程序员,改变了世界

  • 2020-12-18
  • 本文字数:2178 字

    阅读完需:约 7 分钟

这5个程序员,改变了世界

本文最初发表于 Medium 博客,经原作者 Shalitha Suranga 授权,InfoQ 中文站翻译并分享。


致敬那些为软件开发奠定坚实基础的计算机科学先驱。


从 1 和 0 开始,编程经历了很长一段路,才达到了现在的抽象状态。过去的程序员用伟大的发明,为现代程序员轻松地完成工作奠定了坚实的基础。如果我们研究某个软件,也许,它是在若干个库的帮助下编写的,而这些库又有另一套多年前创建的依赖关系。


当我们再往前追溯,最终会发现,在计算机软件进化史上,有一位杰出的程序员做出了一项伟大的发明。


例如,Anaconda 数据科学环境是用 Python 编写的。而 Python 是用 C 编程语言编写的,C 编程语言是一个庞大的项目,推动了数以百万计的项目。类似的,Android 系统所使用的 Linux 内核也是一个由杰出程序员完成的一个大型项目。


下面这些程序员是计算机科学的先驱,他们通过完成一些令人难忘的项目,为软件开发奠定了坚实的基础。


Linus Torvalds


Linux 内核赋予了很多操作系统:主要是 Linux 发行版和其他基于 Linux 内核的操作系统,如 Android。另外,互联网上的大多数网络服务器运行的操作系统都是 Linux。


Linus 最初是在大学期间实现了 Linux 内核,因为他想为当时个人电脑非常昂贵的 Unix 创造一个免费的替代方案。此外,他那时使用的 Minix 操作系统通常是为了学术目的而实现的,它在授权模式和硬件支持方面存在一些缺陷。Linux 内核最早是在 Minix 内使用 GNU C 编译器进行编程的。


此外,他还创建了 Git 源代码管理工具,专门用于管理 Linux 内核的开发工作流程。Git 是由于他们之前用于源代码管理的 BitKeeper 工具出现了问题。这两个项目都是作为他的个人项目开始的。但现在,数以百万计的人在大量使用它们。在所有为开源做贡献的程序员中,我喜欢 Linus 的性格。


Richard Stallman



Linux 项目本身只是一个内核。当 Linus 在研究 Linux 项目的时候,与此同时,Richard 也在试图和社区合作,创建一个自由和开源的 Unix 克隆,并取了一个好听的项目名字 GNU(GNU's Not Unix 的递归缩写)。他创建并整合了操作系统所需的所有自由软件,除了内核这一块之外,所有计算机用户都可以自由使用。


最终,Linux 内核填补了 GNU 项目的最后一块缺失,而他的概念性操作系统的名字也因给数百万用户以自由而变成现实世界的 GNU/Linux。他还开发了 GNU 项目的几个模块,如 GNU 编译器集合和 GNU Emacs 文本编辑器。


除了 GNU 项目外,他还创立了 FSF(Free Software Foundation,自由软件基金会),该基金会鼓励每个人都能使用自由软件,而不会被专利软件公司所控制。此外,由 Richard 发起的自由软件运动也让人们对现代专利软件和操作系统下的用户隐私和用户权利有了更深刻的思考。在他的公开演讲中,他总是这样提到自由软件:


“对于软件来说,只有两种可能:要么用户控制程序,要么程序控制用户。如果程序控制了用户,开发者控制了程序,那么程序就是一种不公正的权力工具。”


Dennis Ritchie



几乎所有的计算机技术都以 C 语言为基础。C++ 语言就像是添加到 C 语言的一个扩展,它支持现代通用语言的特性,比如基于类的面向对象程序设计概念。


C 语言编程语言被广泛用于创建操作系统和嵌入式系统。Dennis 创造了 C 编程语言,取代了他的同事 Ken Thompson 创造的 B 编程语言。他的老同事 Brian Kernighan 曾经说过:


“Dennis 制造的工具,还有它们的直接后代,几乎运行着今天的一切。”


除此之外,他还和 Ken Thompson 一起在贝尔实验室(Bell Labs)为 Unix 操作系统的开发做出了贡献,并为 C 编程语言撰写了著名的手册《C 编程语言》(The C Programming Language)。


James Gosling



Java installer 所说的是真的;有超过 30 亿台设备运行 Java。Java 编程语言为 Web 服务器、移动电话、电视等各种组件提供了强大的功能,Java 在较短的时间内就吸引了人们的注意,因为用 Java 编写 / 编译的程序可以在任何机器上执行。


毕竟,程序中包含的原子指令将在名为 Java 虚拟机(JVM)的虚拟硬件设备中执行。由于 Java 具有虚拟机和完整的访问控制集,因此,它是一种安全的编程语言。Gosling 用 C/C++ 风格的语法创建了 Java。


它可以用于非常复杂的项目,这要归功于 Java 的、有吸引力的跨平台支持和纯面向对象的行为。另外,他还在 Sun Microsystems 开发了诸如neWS窗口系统等多个项目。


Ken Thompson



Unix 就像是世界上所有流行的操作系统的鼻祖。即便是 Minix 和 Linux 等独立项目,他们也会受到 Unix 的影响。Ken 与 Denis Ritchie 一起在贝尔实验室设计并实现了 Unix 的原始版本。Ken 创建了 B 编程语言,并为 Denis 创建 C 编程语言提供了途径。


此外,他对计算机世界的杰出贡献还包括他在正则表达式和UTF-8编码方面的研究。正则表达式的概念已经存在。而他写了自己版本的QED文本编辑器,用计算机编程的正则表达式来查找文本。从那以后,正则表达式随着计算机技术开始了它的旅程。


事实上,创造一种具有平衡抽象的编程语言无疑是很困难的。换句话说,要创造一种既接近硬件又接近程序员的编程语言是很难的。但是,他与 Google 共同发明了 Go 编程语言,并且获得了成功。


作者介绍:


Shalitha Suranga,软件工程师,供职于 99X。同时也是 Apache PMC 成员、开源贡献者(Neutralinojs 的作者)、技术作者。


原文链接:


https://medium.com/the-innovation/the-5-most-influential-programmers-in-computer-science-3fa590edc729

2020-12-18 14:244031
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 532.6 次阅读, 收获喜欢 1976 次。

关注

评论 4 条评论

发布
用户头像
那么问题来了,文中随便一位大佬动不动就50 60+了。中国的互联网公司有两种情况。一是做到30多快40的程序员,时刻要思考怎么不被公司干掉,二是没有被干掉而继续爬升的幸运儿,往往后面就专注于向老板汇报漂亮的PPT,还有就是怎么样剽窃下属的成果来成为各种大会上的明星。
2020-12-29 13:58
回复
这很正常的现象,哪里都有这种情况
2020-12-29 15:21
回复
用户头像
Salute to Ritchie
2020-12-28 13:27
回复
用户头像
什么时候才能有来自中国的大神
2020-12-25 19:46
回复
没有更多了
发现更多内容

携程商旅发布“全球影响力计划”

携程商旅

Mac版本的Java开发工具 IntelliJ IDEA 2023+注册码

展初云

Java Mac IntelliJ IDEA

DataGrip for Mac(数据库管理工具) 2023.2.3+注册码

展初云

Mac datagrip 数据库管理

Tampermonkey for Mac(油猴Safari浏览器插件)

展初云

Mac 油猴 Tampermonkey

从图像生成到分类的深度学习策略

百度开发者中心

人工智能 深度学习 大模型 图像生成

带着问题去分析:Spring Bean 生命周期 | 京东物流技术团队

京东科技开发者

spring 生命周期 @Bean 企业号10月PK榜

OmniGraffle Pro for Mac 图表绘制工具 附 注册机

彩云

OmniGraffle Pro

详解GuassDB数据库权限命令:GRANT和REVOKE

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟

VMware Workstation 17安装教程之轻松构建虚拟机

小齐写代码

火山引擎DataLeap背后的支持者 - 工作流编排调度系统FlowX

字节跳动数据平台

大数据 数据中台 数据安全 数据研发 企业号10月PK榜

硬件、数据、模型优化与分布式训练的实践

百度开发者中心

大模型 LLM LLMOps

深度学习预训练模型的突破与发展

百度开发者中心

模型训练 大模型 深度学习‘’ LLM

KaiwuDB 荣获“2023 IDC 中国可持续发展先锋案例”

KaiwuDB

大模型与Prompt模板全面升级

百度开发者中心

深度学习 大模型 LLM

厦门理工计算机与信息工程学院获“火焰杯”软件测试赛全国奖项

测试人

软件测试

焕新升级!新一代云原生可观测平台

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 华为云CCE容器服

限时领票|走进 2023 · 云栖大会,看大咖对话开源

Apache Flink

大数据 flink 实时计算

Mac键盘热键工具 Keyboard Maestro最新激活版

mac大玩家j

Mac软件 键盘管理工具

LeetCode题解:剑指 Offer 39. 数组中出现次数超过一半的数字,摩尔投票,JavaScript,详细注释

Lee Chen

JavaScript LeetCode

智能问答技术在百度搜索中的应用

百度Geek说

百度搜索 智能问答 企业号10月PK榜

2023 云栖大会 | 「动手实践」基于阿里云构建博学谷平台实时湖仓

Apache Flink

大数据 flink 实时计算

矢量图形编辑软件 Illustrator 2023 for mac(ai2023) v27.9密钥激活版

mac

Illustrator ai2023 苹果mac Windows软件 矢量图形编辑软件

建立性能基线的实践方法

老张

性能测试 性能基线

社区迭代|ETLCloud社区新增“论坛”啦!

RestCloud

ETL 社区 论坛

这5个程序员,改变了世界_AI&大模型_Shalitha Suranga_InfoQ精选文章