这些伟大的程序员,竟然都是女的:揭秘计算机世界中的“才女”

数据包 2022-09-24
5190 字丨阅读本文需 12 分钟

给你十秒钟你能说出多少个世界上最伟大的程序员?

你可能会说出下面这些答案:

Java 之父 :詹姆斯 · 高斯林 James Gosling

Python 之父:吉多 · 范德罗姆 Guido van Rossum

Linux 之父:林纳斯 · 托瓦兹 Linus Torvalds

C 语言之父:丹尼斯 · 里奇 Dennis Ritche

Unix 创始人:肯 · 汤普逊 Ken Thompson

微软 :比尔 · 盖茨 Bill Gates

并发包之父 : Doug lea

......

但是这些名字的背后都有一个特征:男人。所以我们无外乎都有一种遐想,即计算机是由男人创造的,在座的各位小伙伴们扪心自问有没有这种想法。

如果没有的话,那么你可能多少了解几个女程序员的故事,如果你脑子里充满着"计算机是由男人创造的"这种狭隘的思想的话,那么请吃千吨锤。

这篇文章我们就来盘点一下这世界上那些非常伟大的女程序员,而且这些程序员,都是美女。

所以比你优秀的人可能长得还比你好看,简直卷到古代去了。

Ada Lovelace

埃达·洛夫莱斯被誉为世界上第一个女程序员。她是编程历史上的一位传奇女性,同时她也是第一个给计算机编写程序的人。

埃达·洛夫莱斯是英国浪漫主义文学泰斗、诗人拜伦的唯一婚生女,她的母亲安娜贝拉·米尔班克(Annabella Milbanke)出身贵族家庭。

艾达的童年很难说幸福。父亲风流成性,且重男轻女,当拜伦夫人生下一个女孩后,他感到很失望。

1816年1月16日,安娜贝拉带着刚刚满月的艾达,被拜伦赶出门,回到柯比马洛里的娘家。

四个月后,拜伦不情愿地签下分居协议便离开了英格兰。

艾达8岁那年,拜伦在希腊独立战争中病逝。

至此,艾达的至亲唯有母亲一人。20岁生日前,母亲从未给她看拜伦的画像。

要知道,艾达的成功人生少不了一位优秀的母亲,还有「虎妈」式教育。

母亲安娜贝拉从小便接受过良好的教育,曾师从著名思想家威廉·弗伦德,学习数学和天文学。

拜伦曾盛赞夫人为「平行四边形公主」,其代表作《唐璜》中的唐娜·伊内兹(Donna Inez)这一角色便是以安娜贝拉为原型塑造。

安娜贝拉晚年热衷办学,是当时颇有威望的教育改革家。

出色的母亲对孩子的要求也不会低。

由于安娜贝拉本人热爱数学,坚持让女儿从小开始学习逻辑、科学和数学。这些学科在19世纪对于女性几乎是禁区,对这些学问感兴趣并愿意钻研的女性极为罕见。

另外,拜伦夫人对女儿的教育规划也是井井有条。小艾达的课程表丰富多样,让她在学习过程中对自然界的许多现象表现出浓厚的兴趣。

Ada 与计算机的渊源颇深。

1834 年,当时还是一名出色的机械工程师查尔斯 · 巴贝奇发明了一种可以顺序执行函数命令的机器 --- 分析机,并邀请了各行各界的朋友观摩,Ada 和其母亲也有幸参与了巴贝奇举办的参观,Ada 见到分析机之后就对其产生了浓厚的兴趣,并对分析机的运行原理略知一二,这引起了巴贝奇的注意,后来巴贝奇邀请 Ada 和他一起改良了分析机。

在 1842-43 年的九个月期间,Ada 翻译了意大利数学家 Luigi Menabrea 关于巴贝奇最新提出的机器分析引擎的文章,并在文章中加满了她自己的理解和注释。

由于解释分析引擎的功能是一项艰巨的任务;许多其他科学家没有掌握这个概念,英国机构对此也没有表现出什么兴趣,所以这项工作在当时社会是一项不切实际的任务。Ada 的这份笔记是计算机发展历史上一个重要的里程碑,它超越了这个时代,才得以使后来人们站在巨人的肩膀上窥探计算机的全貌。

网友在恶搞 Ada 的同时也体现了对她的尊敬,于是把她 P 成了这样。

后来,为了纪念 Ada 对现代电脑与软件工程所产生的重大影响。America 国防部将一种高级程序语言命名为 Ada 语言。

也许是天妒英才,年仅 36 岁的 Ada 由于宫颈癌去世,她留给后人的只有这一份珍贵的写满了其注解的笔记和她为分析机编写的"第一个程序"。

Ada 被后人所铭记最重要的贡献是:她编写了世界上第一个计算机程序。

Grace Hopper

"Hopper believed that computers would someday be widely used and helped to make them more user friendly. "

Hopper 希望有朝一日计算机能被广泛使用并且对我们越来越友好。这是 Hopper 生平最希望看到的。

Grace Hopper 是计算机先驱和海军军官,她获得了耶鲁大学硕士和博士的数学学位。Hopper 以口齿伶俐和才华横溢著称,她在 America 的海军部门和私企部门都具有非常大的影响力。要知道,在此时的 America 社会,女人在军方掌权和具有影响力是一件极其困难的事情。

在珍珠港爆 炸后和第二次世界大战 America 加入后,Hopper 以海军的身份加入战争。虽然刚开始 Hopper 由于身材矮小被拒绝,但她还是坚持了下来。在二战之后的 1943 年 12 月,Hopper 被分配到哈佛大学船舶计算项目组。在这个项目组,Hopper 和 Howard Aiken(爱德华 · 邓肯)一起工作,Howard Aiken 开发了 IBM 自动序列控制计算器,更广为人知的是 Mark I,它是最早的计算机之一。Hopper 的主要工作之一就是负责对 Mark I 进行编程并将机器指令打到磁带上。同时她还为 561 页的 Mark I 编写了用户手册。

所以说 America 军方和计算机之前的联系以及二战和冷战的培育,造就了 Hopper 的职业道路。

Hopper 和她实验室的同事们致力于研究对战争的精确计算,比如计算火箭 弹道,为高射炮创造射程表等,除此之外,Hopper 和她的同事们还完成了军队的计算,并且在冯诺依曼研制投放在日本炸 弹中起到了巨大的作用。

战后,Hopper 决定留在哈佛,成为了工程科学和应用物理学的研究员,伴随着从哈佛和海军获得的资助,Hopper 帮助开发了 Mark II 和 Mark III 计算机,在 1945 年一个晚上,Hopper 在开发 Mark II 时和她同事遇到了一个问题,当她们拆开机器的时候,发现了一只大蛾子。虽然很多工程师都使用 bug 一词来描述机械故障,但是 Hopper 是第一个将计算机问题称为 bug 并谈到 debugging 的人。

1946 年,由于年龄的原因,海军拒绝了对她定期的资助,Hopper 离开了海军。此后不久当她明显不会被提升成为终身教授时,Hopper 离开了哈佛。1949 年,她加入费城的 Eckert-Mauchly 计算机公司,担任高级数学家。该公司很快被 Remington Rand(雷明顿兰德)收购,根据军队合同开发了第一台电子计算机(ENIAC)。

1952 年,她的编程团队开发了第一个名为 A-0 的计算机语言编译器,这个编译器将数学代码翻译成机器可读的二进制代码,她们实现了为多台计算机开发程序而不仅仅是单台计算机开发程序。然后她们团队开发了 Flow - Matic ,这是第一个使用类似英语命令的编程语言。与使用数学符号的 FORTRAN 不同,Flow - Matic 使用的是常规英语单词。

Hopper 一直致力于让计算机更加贴近用户的使用:她开发用英语作为日常编程使用的语言是一种重要实践,更重要的是 1959 年 COBOL 语言作为第一个商业计算机语言被引入后,Hopper 仍促进了这门语言被军队和私企用户使用。在整个 1960 年代,她都在致力于为 COBOL 开发编译器,使得 COBOL 成为 70 年代最受欢迎的编程语言。

纵观 Hopper 的整个职业生涯,她都一直是海军预备役人员。她在军队服役了 19 年的时间。

Hopper 在她生命的尽头成为了一个广为人知的人物。她获得了 40 多个荣誉学位,许多奖学金、教授职位、奖项和会议都以她的名字命名。1991 年,乔治·布什总统授予 Hopper 国家最高技术奖国家技术奖章;她是第一位获得如此荣誉的女性。

Hopper 在晚年获得了如此多的关注甚至成为 "名人",是由于一位来自伊利诺伊州的共和党国会议员在 1983 年的“60 分钟”节目中看到了对 Hopper 的采访,看到采访后,他成功地提出了一项法案,让 Hopper 晋升为准将军衔。当她在 79 岁时作为海军少将退休时,Hopper 是 America 武装部队中最年长的现役军官。1992 年,Hopper 去世,她以全军荣誉被安葬在阿灵顿国家公墓。

2016 年,Hopper 追授了 America 最高平民荣誉总统自由勋章,以表彰她对计算机科学领域的卓越贡献。

Margaret Hamilton

Margaret Hamilton 是 America 计算机科学家、系统工程师和企业家,同时她也是麻省理工学院仪器实验室软件工程部主任,这个实验室专门为 Apollo 太空计划开发机载飞行软件。

Hamilton 就她参与的 60 个项目和 6 个主要项目发表了 130 多篇论文、论文集和报告。2016 年她因领导 America 宇航局 Apollo 登月任务机载飞行软件开发的工作而被 America 总统巴拉克奥巴马授予总统自由勋章。

1961 年 - 1963 年间,她在林肯实验室从事 SAGE 项目,在这里她为一台 AN/FSQ-7 计算机(XD - 1)编写软件,同时她还为空军剑桥研究实验室编写了软件。SAGE 项目是由麻省理工学院发起的旋风项目的扩展,这个项目旨在为创建一个可以预测天气系统并通过模拟器跟踪其运动的计算机系统。SAGE 很快被开发应用于军事用途,用于在冷战期间抵御潜在的苏联攻击的防空。

Hamilton 用这样一句话描述了她的工作:

当你作为初学者参与这项工作时,他们经常让你做的是给你分配一个没人能够弄清楚或运行的程序。当我还是初学者时,他们也给了我。这是一项很棘手的任务,编写它的人很高兴他所有的评论都是用希腊语和拉丁语写的。所以我被分配了这个程序然后我运行了一下,它甚至用拉丁语和希腊语打印了答案。我是第一个让它工作的人。正是她在这个项目上的努力使她成为 NASA Apollo 飞行软件首席开发人员的候选人。

Hamilton 随后加入了麻省理工学院查尔斯·斯塔克·德雷珀实验室,这个实验室当时正在从事 Apollo 太空任务。她领导了一个为 Apollo 和 Skylab 开发软件的团队。Hamilton 团队负责开发飞行软件,其中包括由多位资深科学家为 Apollo 指挥舱、月球着陆器和天空实验室涉及的算法。她团队的另一部分人设计和开发了系统软件,其中包括错误检测和恢复软件。在计算机科学课程匮乏并且软件工程课程不存在的时期,她付出了太多。

Hamilton 的专业领域太多了,多到现在的我都没听过其中的很多概念,包括系统设计和软件开发、企业和流程建模、开发范式、正式系统建模语言、面向系统的系统建模和开发对象、自动化生命周期环境、最大化软件可靠性和重用的方法、领域分析,内置语言属性的正确性,健壮系统的开放架构技术,全生命周期自动化,质量保证,无缝集成,错误检测和恢复技术,人机界面系统,操作系统,端到端测试,技术和生命周期管理技术。

她最出名并一直被人传诵至今的事迹就是在 Apollo 11 号任务的关键时刻,Apollo 制导计算机与机载飞行软件一起避免了登月失败。事情是这样的:

在月球着陆器到达月球表面前三分钟,触发了几个计算机警报。由于向着陆器的交会雷达供电的相位不正确,计算机因中断而过载。程序警报显示“执行溢出”,这意味着制导计算机无法实时完成所有任务,不得不推迟其中的一些任务。J. Halcombe Laning 设计的异步执行程序允许计算机通过优先处理任务来应对不断增长的需求。Hamilton 的优先警报显示打断了宇航员,以警告他们有紧急情况是否着陆,NASA 任务控制计算机工程师杰克·加曼(Jack Garman)认识到优先显示向宇航员呈现的错误的含义,并喊道:“继续前进”,于是他们继续前进。于是 Hamilton 设计的软件被冠以 “超可靠软件设计的基础”。

除此之外,她还发明了“软件工程师”这个术语,以至于后人在此基础上创造了一个职业。

Lois Haibt

当 Lois Haibt 刚从大学毕业后就接受了 IBM 的工作机会时,她对计算机编程就只有一个模糊的概念。当时 IBM 正在开发一种能够改变一切的编程语言。作为一名年轻的问题解决者和杰出的数学科学工作者,她符合 IBM 的要求。Lois 是十人团队中唯一的女性,而且在 IBM 之前,Lois 从未接触过电脑。

Lois 参与的这个项目,就是大名鼎鼎的 FORTRAN,Lois 成为团队中重要的一员。六个月后,她被安排进编译器项目中,此后再没有离开过。Lois 在 FORTRAN 编译器的核心构建了流分析,此后 FORTRAN 成为像国家气象局这种官方机构下所使用的标准语言,这门语言很快被认为是计算机编码的突破。

Barbara Liskov

Barbara 是因为找不到一份有趣的数学工作,才选择成为一名程序员的。她在斯坦福还没有计算机课程之前就进入了斯坦福大学,在斯坦福大学,Barbara 和其他同学开展了人工智能项目,并成为这个项目第一位获得计算机科学博士的女性。

Barbara 为编码的进步做出了重要的贡献,她领导了 CLU 的设计和实现,创造了第一个支持数据抽象的高级语言 Argus,以及面向对象编程的 Liskov 替换原则。

2008 年,Barbara Liskov 赢得了 A.M.图灵奖,计算机科学界的最高荣誉之一。Barbara 是麻省理工学院的教授,她在 Java、C# 和 C++ 在内的每一种现代编程语言中都可以看到她的创新。

那么这些优秀的女程序员为什么我们都不知道她们的事迹呢?

因为这世界上掌握科技资源的一直都是男性,当我们提到程序员群体这个概念时,大部分想到的都是这样。

Margaret Hamilton

"我们的宇航员没有太多时间,但幸运的是,他们有玛格丽特·汉密尔顿。这是美国总统巴拉克•奥巴马(Barack Obama)在2016年11月向软件工程师玛格丽特·汉密尔顿(Margaret Hamilton)颁发给予平民的最高荣誉——总统自由勋章(Presidential Medal of Freedom)时所说的话。

玛格丽特的才华和热情对阿波罗登月任务的成功至关重要。她设计了现在所谓的"异步系统",它只授予基本功能优先级,拒绝所有其他功能。

这位令人难以置信的女程序员也是引入"软件工程"一词以获得该学科必要认可的人。当时,没有教授编程的机构,所以汉密尔顿在新的科学领域最终被接受之前就暴露了嘲笑。

即使在83岁的今天,玛格丽特的好奇心仍然呈现出每个女孩和男孩的发现精神。毕竟,她扩展了关于人和软件如何共同发展的现有假设。

Adele Goldberg

现代软件设计中一些最常用的布局模式是美国计算机科学家阿黛尔·戈德堡(Adele Goldberg)的创造。此外,她也是传奇的Smalltalk-80编程语言背后的大脑。

这位计算机协会前会长也曾在《福布斯》的《20位重要人物》中亮相。1994年,她成为该协会的会员。

史蒂夫·乔布斯(Steve Jobs)也对她的工作表现出兴趣,并要求演示她的编码想法。这位足智多谋的程序员没有什么可担心的,因为苹果最终在他们的Macintosh计算机上实现了她的解决方案。

Marissa Mayer

雅虎前首席执行官玛丽莎·梅耶尔(Marissa Mayer)被称为21世纪最繁荣的信息技术和数字媒体工程师之一。今天,她当之无愧地登上了历史上最好的女程序员名单。

她精致的品味和时尚风格随着她的编码生涯而发展。玛丽莎既是创意巫师,也是商界真正的时尚偶像。

在成为雅虎的第一位女性掌舵人之前,玛丽莎帮助谷歌上台。当时,在1999年,他们的团队只有20名工作人员。猜猜谁是20号员工?大脑和外表,这位女程序员毫无歉意地不断提高高成就者的标准。

Shafi Goldwasser

出生于50年代后期的Shafi Goldwasser是另一位Turning Award获奖者。她在密码学,数论,计算理论等的发展中发挥了重要作用。她与一位同事一起帮助开发了概率加密。该系统的创建为数据加密安全的世界设定了步伐。

除了这些成就之外,Shafi还参与了几种加密协议。例如,她创建了零知识协议,该协议有助于加密协议的发展。

目前,Shafi是麻省理工学院电气工程和计算机科学系的教授。

Radia Perlman

Radia Perlman是一名网络工程师和程序员。她最大的成就之一是创建了STP(生成树协议)。自STP创建以来,它已成为网络中连接的网桥的开发和运行的工具。同样,Radia也参与了网络布局和结构的开发和标准化。特别是,她帮助开发了链路状态协议,这帮助她赢得了互联网之母的名字。

在成名之前,Radia在麻省理工学院获得了博士学位。在她的整个职业生涯中,她因其贡献而获得了多个奖项。

尾声

女程序员群体大多数是人们的认知荒漠和资源倾倒的受害者,所以这不难理解为什么连我们程序员都不知道她们。

因为只有黑眼圈 + 佝偻背 + 脱发才符合大多数人心中对程序员的合理定义,所以当身边七大姑八大姨叫住我们修电脑和修路由器而我们对他们解释说:"我是程序员,不是售后维修"的时候,当他们会说:"诶你个搞电脑的怎么连这个也不会啊" 的时候,我们就只能默默苦笑了。

文章来源: cxuan,新智元,薛定谔D家肥猫

免责声明:凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处本网。非本网作品均来自其他媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如您发现有任何侵权内容,请依照下方联系方式进行沟通,我们将第一时间进行处理。

0赞 好资讯,需要你的鼓励
来自:数据包
0

参与评论

登录后参与讨论 0/1000

为你推荐

加载中...