编程本是女性的天下,为何现在被男性主导?

这中间到底发生了什么???

电脑科学家和早期计算机零件 图片来源:smithsonianmag.com

摘要:谈及程序员,人们脑海中浮现的总是一个精于技术的、不懂人情世故的男性书呆子形象,但Abbate在《Recoding Gender》一书中说道,计算机编程并非天生是一份男性的工作。在Abbate发掘的历史细节里,电脑与编程的内涵几经变化,在二战时期,编程完全是女性的工作,但随后女性又不断被否认或贬低。当编程最终成为21世纪最重要、最有希望也回报最高的行业之一时,女性终于被排除在外,成为了不适合做程序员的一群人。

著名影星本尼迪克特(卷福、奇异博士)曾经在电影《模仿游戏》中扮演现代计算机技术的奠基人之一阿兰·图灵(Alan Turing)。在这部电影中,图灵用他的天才智慧设计了电脑原型机,用跨时代的运算速度帮助英国情报部门破击了纳粹德国的各种情报,为反法西斯战争的胜利立下了不朽功劳。作为流行文化的代表,这部电影讲述着一个不完整的故事。这个故事里只有男性的英雄,却没有女性的贡献。这绝不是因为女性在历史中的缺失,而仅仅是她们在故事中被有意地遗漏了。

电影《模拟游戏》 图片来源:1905电影网

一切都从二战时期军队中的计算机技术研究开始。这时,编程(programming)完全是女性的工作。

电脑的起源,被抹杀的女性劳动

伴随着《模仿游戏》等影视作品的流行,很多人开始了解到,电子计算机起源于二战时期情报破解和武器研发有关的计算需求。1940年,图灵在布莱切利庄园(二战时英国的情报破译中心)设计并制造了一部电子机械电脑,用来破解纳粹德国的加密情报。之后纳粹的情报加密更为复杂,数学家纽曼(Max Newman)和工程师弗劳尔斯(Tommy Flowers)根据图灵的设计,第一次完全使用真空电子管,制造了第一台真正的电子化的计算机Colossus(巨人)。Colossus于1943年12月完成,1944年1月开始使用。

与此同时,美国研制电子计算机是为了计算弹道轨迹、指导武器射击。莫克利教授(John Mauchly)和他的同事艾克特(John Presper Eckert)在1945年11月完成了美国第一台电子计算机ENIAC。不同于Colossus专为密码破译而制造,ENIAC是第一台通用电子计算机,可以为了不同任务编程(multi-task),影响了战后的产业发展。

1946年,美国军方造出了图灵机,即世界上第一台电子计算机ENIAC。图片来源:sohu.com

男性科学家们建造早期电脑的成绩被很多人所赞颂。然而人们似乎忘记了,在这个时期,无论是英国的情报部门还是美国的电脑研究,存在着大量女性的身影。不同的性别从事着完全不同的工作:男性负责硬件(hardware),女性则负责软件部分(software)。也就是说,这时编程完全是女性的工作。但是,因为当时硬件的设计与制造被视为是最复杂、最需要创意的工作,所以女性总是处于从属的地位。

在某种程度上,女性的工作确实是艰苦的蓝领工作。在布莱切利庄园,60名女性操作员长期三班倒地破译密码,以保证情报破译的效率和时效性。当时的编程不是完全在电脑上进行,而是先在纸上打孔、再交给体积巨大的机器运行。如果出现问题,则需要细致耐心地排除故障。早期的电脑很不稳定,故障可能来自编程设计,也可能是成千上万的二极管中某一个的问题。因此Abbate总结道,一个优秀的Colossus操作员,至少需要体力、机械才能、对细节的关注、编码的记忆力以及心算能力。不难发现,这时编程便是非常复杂、对人要求很高的工作。

然而,女性的工作被历史叙述彻底忽视了,甚至在战时,她们的贡献也没有得到充分承认。我们可以说,在布莱切利庄园,正是女性操作员的努力和才智使得英国的情报破译成为可能。但是在战争结束后,英国要求所有女性操作员严格保密她们在战时的工作。她们不仅没有因为战争功勋得到奖励,甚至不能依靠这份经历继续寻找相关行业的工作。设计和制造Colossus的男性科学家们的战后经历却完全相反,他们继续着研究,成为了知名的电脑科学先驱。

纪录片《密码破译者:布莱切利庄园的幕后英雄》

只不过因为编程一开始是女性的工作,所以在当时被轻视为低技能的、不重要的。例如在最初对ENIAC的新闻报道中,这个新发明被形容成一个可以自动完成计算任务的“电脑”,而使电脑真正运转起来、不断排除各种问题的女性操作员的工作,遭到了媒体报道的无情忽视。

1950-1970s:进击的时代,女性的急流勇退

1950-1970s是计算机与编程行业的快速发展期。以美国为例,Abbate估计在1955年左右有1200-1400名程序员;1960年,美国统计局公布有13000名专业的电脑专家或技术人才;1970年,这个数字变成了16.3万程序员和10.8万电脑系统专家。

1970年,在16.3万程序员和10.3万电脑系统专家中,女性分别只占了24.2%和13.6%。这与电脑刚刚被发明时的情况完全相反:从编程完全是女性的工作,到女性在劳动力市场中变为劣势群体。这个变化与二战结束后男性回归工作岗位导致女性退出很多行业的趋势有关。但是编程并非传统的男性工作,为什么也要让位给男性?

很显然,在编程行业的早期发展中,社会分工经历了某些调整,女性被歧视,逐渐被排斥出了编程行业。事实上,在1970s年代以前,就业市场是公开歧视女性的。Abbate回顾当时的招聘广告,发现男性和女性的工作有各自专属的版面。雇主如果在女性版面投放广告,往往意味着工作的级别和待遇都更差。

上世纪七十年代美国的一张歧视女性的广告。图片来源:豆瓣

随着计算机软件的发展,分工也更加细致。在这个时期,编程工作被人为地分成“系统分析”(systems analysis,分析问题并设计系统框架)和“编程”(programming,具体的代码编写)两个部分。这个分类并非是劳动分工的必要,因为很多人可以同时胜任并且连贯地完成这两项工作。这个分类更主要的作用在于创造等级划分:男性负责概念性的系统分析,女性则负责执行。换句话说,男性占据了更好的位置,女性要么从事重复性的工作,要么被分配更低的职位。

竞争的话语:做好编程需要什么特质?

那么,女性到底是如何被排斥的?

在1950-1970s年代,编程还是一个崭新的行业,大学里没有计算机专业,绝大部分人也没有相关工作经验。所以雇主只能寻找别的标准来筛选出适合编程工作的人。如何确定这些标准的关键在于,雇主对这个全新的编程行业如何理解。然而Abbate发现,无论是怎样看似中性的理解,都蕴含了相应的性别意涵。面对新的行业,人们常常用已有行业来比喻它。有三种行业最常用来比喻编程:数学、工程、商业(business)。这些关于编程工作的比喻,反映了当时的雇主对这种工作及员工的期待。

数学能力是当时编程工作最常见的要求,但是它和编程能力其实没有直接联系。用数学比喻编程似乎有利于女性进入这个行业,因为当时在理科专业中,数学专业的女性比例是最高的。然而,行业内的性别分工束缚了女性的工作机会。大量拥有数学专业的本科甚至硕士学位的女性,却只能从事重复性的日常编程工作。

把编程理解成一种工程类专业也非常常见,因为计算机科学既涉及硬件、又涉及软件,很像是利用工具解决实际问题的工科。这个比喻显然对女性非常不利,因为几乎在所有国家,工程类专业都是典型的男性行业。但事实上当时计算机已经足够发达,编程工作并不需要如何设计硬件的知识。

由于计算机产业越来越从科研需求转向并集中于商业需求,很多企业把编程描述成商业工作的一部分,管理和顾客沟通的能力成为工作的关键。强调商业中的沟通技能看似对女性是有利的,因为女性被认为拥有更多人际技巧。但实际上,女性只能被束缚在文秘行政类工作中,传统上,销售和管理工作一直由男性支配着;那些负责编程的专业女性,却被描绘为提供幕后支持的客户服务人员,而非专业人才。

其实,在这些被男性支配的论述之外,编程行业的女性劳动者也提出了很多如何理解编程的比喻。在她们的体验中,编程像编织、像音乐、像烹饪、甚至像是做母亲、做老师,因为她们在工作中感受到,编程也需要创意、艺术感、沟通和同情。但是这些比喻却无法与主流话语进行有效的竞争。

作为一个崭新而又飞速变化的行业,从事编程工作的劳动者经历着持续的认同危机。毕竟,再多的比喻也不过是比喻,而非编程工作本身。从业者必须问自己,到底该如何定位编程这份工作?

1950-1960s年代的编程技术发展,曾经被一种自动编程(automatic programming)的理念所主导,这种理念希望随着编程语言的发展与普及,编程将变得足够简单,用户可以自己在电脑上编程,专业程序员将不复存在。从1950s年代开始,程序员不断地发展编程工具,简化甚至消灭了重复性的程序编写(coding)工作。编译器的发明标志着编程技术的成熟,很快各种高级语言被发明出来。高级编程语言的出现减少了大量的基础程序编写工作,却同时创造了大量的新的需求,拔高了对程序员的要求。编程工作开始接近今天的模式。

女性从业者尽管只是行业中的少数,却在这个过程中做出了突出的贡献。最早的编译器和编程语言的发明者Hopper[1]就是一位杰出的女性计算机科学家。本书作者Abbate相信,女性的突出贡献是因为女性从业者们更加愿意去关心周围人的真实需求。她们对编程技术的关注,更多地集中于如何解决真实的问题,也让工作更方便。

图为Grace Hopper。图片来源:tech.it168.com

男性的最终胜利:软件工程(Software Engineer)的诞生

1960s末,把编程工作定位为软件工程(software engineer)的声音逐渐占据了主流,编程变成了工科专业,一套新的行业规范正在被建立起来。

工程学范式的最终胜利有很多原因。首先,它更加强调编程应该提供一套清楚具体的、标准化的技术,最终生产出可测量的成果,这个理念在实践中具有优势。同时,工程师是更有地位的专业群体,而工匠或者艺术工作的社会地位更低,所以程序员也接受这样的认同。另一方面,工程学范式也符合管理者的期待,因为工科一直意味着规范、标准化、可预测,最终方便管理。最后,如果编程是工程学,学界研究者也更容易得到业界的研究经费。

可惜的是,在所有这些声音中,女性编程的先驱们,甚至是那些知名的从业者,集体被噤声了。编程被重新定义为一门工科时,它也从一项由女性开始的工作被重新定义为一项男性的工作,因为工科一直是男性统治的领域。这里的逻辑对于女性来说几乎是死循环:起初因为编程是女性工作,所以它是低端的;如今它是工科了,所以它对于女性来说就太难了。与此同时,被男性气质支配的新的软件工程专业,反而丢掉了一些被认为是女性化的特质,例如沟通和人际关系的技能,最终损害了工程师的工作能力。

另一种可能性:软件服务中的女性创业者

在1950-1960s年代,美国正处于男主外、女主内模式的历史巅峰时期。当时的男性期待自己一个人的工资可以供养整个家庭;所有的家务劳动和照料家庭成员的责任都由女性承担。即使在今天,企业的招聘标准也没有什么变化:他们寻找的理想员工是没有家庭责任、只为工作存在的员工,而理想员工其实就是男性员工。对于女性而言,生完孩子之后,留在工作岗位变得不太可能,因为我们的社会性别分工把工作以外的责任都丢给了女性。

即使如此,在历史中有一些杰出的女性做出了完全不同的选择。Abbate讲述了两位优秀的女性企业家Shirley和Shutt的创业故事。她们不仅自己在婚后留在了编程行业,而且通过创办企业,帮助那些需要承担照顾孩子等家庭责任的已婚女性留在编程行业。她们证明了女性群体所拥有的聪明才智和能够付出的坚韧努力,展现出编程工作的另一种可能性。

出生于1928年的Shutt最早在美国第一台电脑ENIAC上工作,1953年她进入企业成为了一名程序员。1957年,Shutt因为怀孕必须放弃全职工作,但是她不愿意放弃自己的职业生涯。幸运的是,她曾经服务的旧客户需要额外的编程工作,所以Shutt开始兼职工作。后来Shutt发现自己一个人没办法承担所有工作量,于是她开始雇佣两个处于类似情况的前同事:她们也都是因为生育而失去工作的前程序员。最终,Shutt成立了一家由兼职的家庭主妇组成的小公司。同样的,出生于1993年的Shirley由于感受到编程行业的性别歧视,也选择成立了自己的编程公司,并招聘在家兼职工作的女性。这两家公司都不以盈利为目的,而是为已婚的女性们提供留在编程行业的工作机会。在规模上,为了不影响自己的家庭生活,Shutt把公司人数控制在13人以下,而Shirley企业的规模则飞速发展,在保留兼职女性的前提下,也开始招聘大量的全职程序员。

以在家工作的兼职女性员工作为主要的劳动者,Shutt和Shirley必须克服很多困难。首先,她们必须有效地管理和利用分散的员工们。她们必须找到合理的办法分割任务,使得每个人可以独自在家完成各自的部分,同时又可以方便地合并起来。这提出了额外的技术要求。为了避免兼职女工被客户歧视,Shirley通常选择固定价钱的打包服务,而不是列入包含每个人薪酬的详细预算,这也强迫她们更有效地估计和控制成本。同时,Shirley在员工管理上也有创新,她制定了一套详细的指导手册,提示员工应该注意哪些问题、遇到各种情况应该如何处理。最后,因为不以盈利为最高目的,而是关注女性程序员的职业机会,所以她们都非常重视员工的培训投入。这些培训在代码世界飞速变化的1970s年代至关重要,最终帮助两家企业在这个迅速变化、激烈竞争的行业中坚持了下来。

事实上,愿意雇佣女性、特别是因为生育被迫离开编程行业的女性,反而构成了Shutt和Shirley的竞争优势。首先,她们的招聘成本很低,因为女性兼职员工在别处总是碰壁,她们很愿意加入这样一家女性的公司。其次,IBM等大企业几乎变成了她们的免费培训机构。当职业女性生了孩子而被迫离开职场、然后加入Shutt和Shirley的团队时,她们已经经过完美的职业训练,而且拥有丰富的工作经验。最后,女性兼职员工的稳定性非常之高,既因为公司理念的感召,也因为她们很难找到别的工作机会。相比之下,当时的编程行业因为员工流动性过高而深受其苦,招聘和培训成本明显更高。

然而,在男性支配的编程领域,在家兼职的妈妈们组成的编程企业不可避免地面临着各种歧视与偏见。所以,Shutt和Shirley也必须有各种形象管理的策略作为应对。作为女性程序员,她们更加需要维持自己职业化的形象,不能展现出情绪化的一面,也不能让孩子出现在客户面前,因为这些都会让她们显得不够专业。Shirley甚至不得不把她的女性名斯蒂芬妮(Stephanie)改成对应的男性名的史蒂夫(Steve)才能得到更多工作会议的机会。Shirley在谈生意时,从来不主动提及她的员工构成,而且Shirley总是要求她的员工比实际工作要求的资历更高(overqualified),以避免客户产生质疑。

无论如何强调这些困难都不算夸张。但是,重要的是,两位女性创业者成功了,而且她们提供了合作社式小企业和成功的现代企业两个样本她们的成功,不仅是两位女性创业者,而且是为她们工作的所有兼职主妇、兼职妈妈们,对现有的男性气质支配的程序员行业提出了反对意见:编程工作并非只有现在这样一种可能,职业化也并非只有现在这样一种方式。

《Recoding Gender》封面。图片来源:The MIT Press

Abbate在这里提供了至少一种可能:妈妈们也可以是工作的专业人士。问题的关键是,为什么总是女性需要面对工作与家庭的两难选择?所谓的理想工人真的存在吗?要求工人没有工作以外的职责,本质上是要求男性负责工作、女性负责家庭。这正是我们要挑战的观念。

工作以外的责任并非理所当然都应由女性负责,所有人都应该是多重身份的。有人既是妈妈又是程序员,也有人既是爸爸又是程序员。当男性的家庭职责不被忘记时,女性的职业地位也终将有所改善。

在重新发现软件工程的历史之后,Abbate告诉我们,计算机编程并非天生是一份男性的工作。事实是,我们在历史中做了一些选择,我们选择遗忘女性在二战以及技术发展中的贡献,我们选择贬低女性主导的工作,我们选择用工科来重新定义编程同时我们又选择忽视和否定沟通与人际关系、关心人的需求等传统的女性特质。最终程序员变成了男性的工作,强调利用一整套标准化的技术提供可测量的成果。直到今天,程序员终于发展出了一个精于技术的、喜欢钻研、内向而不善言谈、甚至有些不懂人情世故的男性书呆子形象。

注释:

[1] 从1950s年代开始,程序员不断地发展编程工具,简化甚至消灭了重复性的程序编写(coding)工作。开始是子程序(subroutines)替代一些常用的代码;1951年,Grace M. Hopper发明了编译器(compilers),借助编译器,程序员可以直接用高级语言来编程,再由编译器转化成电脑可以识别的语言;1955年,Hopper发明了第一个商用编程语言。很快,很多新的高级语言(high-level languages)被发明出来。编程工作开始接近今天的模式。

作者:李傻圆

编辑:Targaryen

美编:黄山

土逗原创

标签:

发表评论

电子邮件地址不会被公开。 必填项已用*标注