看到这个标题,你可能觉得不可思议,在男程序员占据绝对多数的软件行业,居然是女生开创的?
01
先行者
早在1843年,诗人拜伦之女,数学家Ada Lovelace就设计了一个计算努利数数的方法, 这个方法的独特之处在于,可以被一个叫做巴比奇分析机的计算机来执行, 也就是我们现在面试必备的“算法”,所以,Ada也被公认为是世界上第一个程序员。
1945~1946年间,世界上第一台电子计算机ENIAC建成,这个庞然大物的的硬件主要由男生主导建造, 但很多基础的软件却由Jean Bartik和其他5个女同事完成的。
当时的编程可不像现在那样,有高级编程语言,有强大的IDE。她们只有逻辑图,然后通过拨弄各种开关,插拔各种电缆才能把程序“弄”到ENIAC进去,没有非凡的数学能力和计算能力是做不了“程序员”的。
ENIAC公开演示的前一晚出现了故障,Jean Bartik 和 Betty Snyder 挺身而出,及时解决了这个问题, 使得第二天的演示能顺利进行。
演示非常成功,但是在当时软件没有地位,不受重视, 这几位女程序员在新闻图片中连个名称都没有,甚至没有被邀请参加庆祝晚宴。
02
Bug
二战结束以后,Jean Bartik和她的程序员团队开始在UNIVAC上编程,这是第一个商用的计算机,在这里她们遇到了Grace Hopper。
当时的计算机编程需要输入大量的数字,这太复杂,非常不直观,Hopper一直在寻求一种使用单词来代替数字的方法,1959年她带领团队创造了一种编程语言,可以用英语来对计算机编程,这就是COBOL。
COBOL在商业计算领域非常流行,今年疫情期间还爆出来一个有趣的事情,美国新泽西州有个失业金救济系统,就是用COBOL写的,已经运行了40多年了,疫情期间新泽西州有大量失业救济申请,这个系统应付不过来,出现了故障,急需COBOL程序员来修复,可是会COBOL基本上都是爷爷辈的程序员了。
1947年,Hopper和她的团队在Harvard Mark II计算机上工作时,电脑不知道为什么不能正常工作了。经过Hopper的深度挖掘,发现原来是一只飞蛾意外飞入电脑的内部的继电器中, 造成短路而引起的故障。她把飞蛾“揪”了了出来,并在日记本中记录下了这一事件。从这以后,程序届开始用“Bug”(原意为“虫子”)来称呼计算机中隐藏的错误。
Hopper后来成为美国海军少将
03
软件工程师
在那个年代,男人们的兴趣还集中在硬件上,他们认为才是硬件是最难的,最有意思的事情。 软件是微不足道的一部分,就像“文书”工作一样, 无聊无趣,待遇又很低。
所以当Margaret来到NASA,加入阿波罗登月计划的时候,她费了很大的劲向那些男人们解释软件是怎么回事,是怎么工作的。
在NASA工作期间,Margaret带领100多人的团队进行载人飞船软件的开发,这是人命关天的软件,Margaret必须保证它非常非常可靠。
在阿波罗11号登月那关键的3分钟内,只有1024字节内存的计算机出现了过载,发出大量1202程序警报,几近崩溃, 这是千钧一发的时刻, 30多万技术人员,8年耗资250亿美元的工程可能毁于一旦,能不能登月成功,就寄希望于Margaret写的软件了。
Margaret设计的系统顶住了所有的压力,软件检测到了错误,剔除了低级别的雷达处理任务,把最宝贵的空间留给最重要的任务:让鹰号飞船着陆。
(Margaret团队编写的登月软件)
这位伟大的女程序员发明了一个词:软件工程师,以此来称呼包括自己在内的程序员。
她说:希望人们给与做软件的人以应用的尊重,因为他们和硬件工程师一样,在一个宏大的系统中作贡献。
04
抹黑
在上世纪50年代, 有30%到50%的程序员都是女生,Hopper说:编程就像准备晚餐,你得做出计划,把所有的东西安排好...... 对女生来说,当一个程序员是很自然的。
到了60年代,事情发生了变化,编程开始被视为复杂的智力工作,不再是简单的“文书”了,薪水也开始显著上涨,越来越多的男生对编程感兴趣,他们用了不正当的手段去排挤女程序员, 正如历史学家Nathan Ensmenger所披露的,一些专业组织发布抹黑的广告营销,阻止女性担任编程的工作;
公司招聘时也会针对女性设置障碍,比如有个性测试说优秀的程序员都有反叛的特质,很明显,这是男性所拥有的。
与此同时,《战争游戏》、《奇怪的科学》、《真正的天才》这样的电影也起到了推波助澜的作用,这些电影的情节几乎可以互换:古怪的电脑天才男孩通过高超的技术击败反派,得到了女孩的芳心。
05
拐点
80年代是真正的拐点, 个人电脑的流行改变了一切,PC的销售目标几乎全是男生,比尔·盖茨,史蒂夫·乔布斯等技术极客的出现更加强化了这一印象:PC是男生的好伙伴。
20世纪90年代,研究员简·马戈利斯调查了卡内基梅隆大学的数百名计算机科学学生, 她发现,家长们更愿意给男孩们买电脑,虽然女孩们也对电脑非常感兴趣。 这就造成了一个非常恶劣的后果:男生的电脑玩得贼溜,女生被远远抛在了后面。
在大学在招生的时候, 期望计算机科学系的学生已经具备很熟练的电脑使用经验, 女生就不太可能被录取了。
Source: National Science Foundation, American Bar Association, American Association of Medical Colleges
Credit: Quoctrung Bui/NPR
图中红色曲线表示计算机专业,从1985年开始,学习计算机专业的女生开始显著下降,到2011年,只剩下17%。
男生事实上已经接管了这个行业。
06
尾声
看完了美国的故事,再来看看国内的状况。
中国软件行业起步很晚, 90年代才出现第一批程序员,数量本身就很少,女生程序员就更少了。
经过20多年的发展,国内互联网非常发达,为什么女程序员还很少呢?道理很简单,编程工作绝不仅仅是白领的脑力劳动,已经变成996的体力劳动了!天天加班,疯狂起来要搞通宵,这么一个令人生畏的行业,肯定会吓跑了一大批女生。
女生做了程序员,白天要上班赚钱,回去还要做家庭主妇,照顾家里,辛苦可想而知,很难做到平衡,更不用说结婚、生子这样对职业发展有重大影响的事情了。
这不是说女生不适合编程工作,恰恰相反,女生沉静和细腻的性格非常适合,我也见过不少非常优秀的程序媛,这篇文章纪录了几位:《我所尊敬的三位女程序员》
参考资料:
https://en.wikipedia.org/wiki/Ada_Lovelace
http://eniacprogrammers.org/
https://hackernoon.com/a-brief-history-of-women-in-computing-e7253ac24306
https://timeline.com/women-pioneered-computer-programming-then-men-took-their-industry-over-c2959b822523
https://www.npr.org/ps/money/2014/10/21/357629765/when-women-stopped-coding