【历史上的今天】12 月 29 日:苹果首席密码学家出生;Erlang 语言问世;晶体管之父产生设计灵感

本文主要是介绍【历史上的今天】12 月 29 日:苹果首席密码学家出生;Erlang 语言问世;晶体管之父产生设计灵感,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

整理 | 王启隆

透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。

今天是 2021 年 12 月 29 日,在 102 年前的今天,一场在伦敦进行的日食试验证明了爱因斯坦的相对论。该理论取代了 200 年前主要由艾萨克·牛顿创立的力学理论,从而改变了 20 世纪的理论物理学和天文学;爱因斯坦的理论如此复杂,以致于很少有人能完全理解他的理论。在科技历史中的 12 月 29 日,今天还有哪些关键事件发生呢?

1892 年 12 月 29 日:爱迪生获得收音机专利

在这里插入图片描述

图源:CSDN 下载自东方 IC

1892 年 12 月 29 日,托马斯·爱迪生(Thomas Alva Edison)拿到收音机的专利。在美国,爱迪生名下拥有 1093 项专利,而他在美国、英国、法国、德国等国的专利数累计超过 150 项;他一生最伟大的两项专利一项为留声机,它可以保留并播放声音, 而另外一项专利备受争议,那就是世人所熟知的电灯,经过六年的漫长法庭斗争,最后以爱迪生成功获得电灯专利告终。

爱迪生名下的大多数专利是公共专利,在他的一生中,被专利保护了 17 年的发明包括了电子、机械或化学制品,大约十二个是外观设计专利,一个装饰设计亦被保护了 14 年。但是,爱迪生大多数的发明不是完全原创的,而是改善已被发明但仍不完善的产品。爱迪生是世界上第一个使用大量生产原则和其工业研究实验室来进行发明创造的人,他的主要发明诞生在新泽西州的门洛帕克实验室。门洛帕克实验室也是世界上第一个设立以专门用于技术革新和改善现有技术为目的的机构。

资料来源:维基百科、百度百科

1939 年 12 月 29 日:威廉·肖克利在笔记中写下晶体管发明思路

在这里插入图片描述

图源:CSDN 下载自东方 IC

1939 年 12 月 29 日,晶体管之父威廉·肖克利(William Shockley)在他的实验室笔记本上做下了一行记录:“用半导体取代真空管应该是可能的。”八年后,他与美国电话电报公司贝尔实验室的沃尔特·布拉顿和约翰·巴丁成功地研发并测试了点接触型晶体管。

肖克利是默文·凯利(Mervin Kelly)招募到贝尔实验室的第一批员工之一;凯利于 1936 年成为贝尔实验室的研究主管,专注于聘用固态物理学家。贝尔实验室的主管们推测,半导体可以提供固态的替代物,以替代贝尔全国电话系统中使用的真空管。肖克利在氧化铜半导体材料的基础上构思了许多设计,并在 1939 年与沃尔特·布拉顿(Walter brattan)一起试图制造出一个原型,但没有成功。

肖克利一生发展了晶体管作用背后的许多理论,在推动晶体管商业化的同时,造就了加利福尼亚州今天电子工业密布的硅谷地区。1947 年发现晶体管后,大约过了 10 年,制造商才学会如何量产晶体管,新一代的工程师也学会了如何使用晶体管,晶体管才正式在计算机设计中取代真空管。

资料来源:维基百科

1947 年 12 月 29 日:苹果首席密码学家 Richard Crandall 出生

理查德·克兰德尔(Richard E. Crandall)出生于 1947 年 12 月 29 日,他是美国物理学家、计算机科学家,NeXT 首席科学家,苹果首席密码学家。克兰德尔以发展无理基离散加权变换而闻名,这是一种寻找非常大素数的重要方法,对计算数论作出了重大贡献。他还拥有并经营在线出版公司 PSI Press。

在这里插入图片描述

图源:维基百科

理查德·克兰德尔出生于密歇根州的安阿伯,在加州理工学院待了两年,然后转到俄勒冈州波特兰市的里德学院(Reed College),他在那里学习物理学,撰写了关于数学随机性的本科论文。1978 年,他成为里德学院的物理学教授,在那里他教授实验物理学和计算物理学课程多年,最终成为 Vollum 科学教授和高级计算中心主任。

克兰德尔是实验数学的先驱。除了开发无理基离散加权变换,他还写了几本书和许多关于科学编程和计算的学术论文,并因在密码学领域的工作而获得多项专利;他晚年在写一本关于史蒂夫·乔布斯的知识分子传记,在这期间他待在俄勒冈州波特兰的家中,因急性白血病而昏倒;10 天后,他于 2012 年 12 月 20 日去世,享年 64 岁。

资料来源:维基百科

1987 年 12 月: Erlang 语言年底发布正式版本

20 世纪 80 年代,爱立信(Ericsson)调研了多门编程语言,鉴于其中没有一种能满足其电信业务特征,爱立信计算机科学实验室的乔·阿姆斯特朗(Joe Armstrong)等人开始开发 Erlang。1987 年年底,Erlang 发布正式版本;这是一种通用编程语言,支持多范式编程,包括函数式、并行和分布式,直接瞄准实时且容错性较强的分布式应用开发。

在这里插入图片描述

图源:CSDN 下载自东方 IC

Erlang 这个名字来源于对丹麦数学家和工程师 Agner Krarup Erlang 的引用,是“爱立信语言”的音节缩写。Erlang 的最初版本是在 Prolog 中实现的,并且受到早期 Ericsson 交换中使用的编程语言 PLEX 的影响。到 1988 年,Erlang 已经证明它适合于原型电话交换;总设计师乔·阿姆斯特朗在 2013 年接受 Rackspace 采访时评论道:“如果 Java 是‘编写一次,随处运行’,那么 Erlang 是‘编写一次,永远运行’。”

2014 年,爱立信报告称,Erlang 已被用于其支持节点、全球范围内的 GPRS、3G 和 LTE 移动网络,自开源发布以来,Erlang 已经扩展到电信以外的领域,在金融科技、游戏、医疗保健、汽车、物联网和区块链等其他垂直领域建立了自己的地位。Erlang 也是用来编写 WhatsApp 的编程语言,除了 WhatsApp,Erlang 还被许多知名互联网公司使用,比如任天堂(Nintendo)、三星(Samsung)、OpenX 和 SITA。

【欢迎投稿】以史为镜,可以知兴替。计算机科学发展至今,有许多至关重要的事件、人物,欢迎所有朋友一起共建「历史上的今天」,投稿邮箱:tangxy@csdn.net 。

这篇关于【历史上的今天】12 月 29 日:苹果首席密码学家出生;Erlang 语言问世;晶体管之父产生设计灵感的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/207019

相关文章

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

MySQL修改密码的四种实现方式

《MySQL修改密码的四种实现方式》文章主要介绍了如何使用命令行工具修改MySQL密码,包括使用`setpassword`命令和`mysqladmin`命令,此外,还详细描述了忘记密码时的处理方法,包... 目录mysql修改密码四种方式一、set password命令二、使用mysqladmin三、修改u

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

电脑密码怎么设置? 一文读懂电脑密码的详细指南

《电脑密码怎么设置?一文读懂电脑密码的详细指南》为了保护个人隐私和数据安全,设置电脑密码显得尤为重要,那么,如何在电脑上设置密码呢?详细请看下文介绍... 设置电脑密码是保护个人隐私、数据安全以及系统安全的重要措施,下面以Windows 11系统为例,跟大家分享一下设置电脑密码的具体办php法。Windo

C语言小项目实战之通讯录功能

《C语言小项目实战之通讯录功能》:本文主要介绍如何设计和实现一个简单的通讯录管理系统,包括联系人信息的存储、增加、删除、查找、修改和排序等功能,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录功能介绍:添加联系人模块显示联系人模块删除联系人模块查找联系人模块修改联系人模块排序联系人模块源代码如下

基于Go语言实现一个压测工具

《基于Go语言实现一个压测工具》这篇文章主要为大家详细介绍了基于Go语言实现一个简单的压测工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录整体架构通用数据处理模块Http请求响应数据处理Curl参数解析处理客户端模块Http客户端处理Grpc客户端处理Websocket客户端

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用