jjzjj

【历史上的今天】3 月 3 日:AT&T 成立;全球最大分布式计算项目正式停止;家酿俱乐部首次会议

历史上的今天 2024-06-07 原文

整理 | 王启隆

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

今天是 2023 年 3 月 3 日,在 176 年前的今天,1847 年 3 月 3 日,电话的发明人亚历山大·格拉汉姆·贝尔(Alexander Graham Bell)出生。贝尔发明了世界上第一台可用的电话机,创建了贝尔电话公司,被世界誉为“电话之父”。为了纪念贝尔的功绩,后世将电学和声学中计量功率或功率密度比值的一种单位命名为“贝尔”。回顾计算机历史的 3 月 3 日,这一天还发生过哪些关键事件呢?

1885 年 3 月 3 日:美国电报电话公司(AT&T)成立

美国电报电话公司(AT&T)是美国的一间跨国集团控股公司,是全美最大的固网电话及移动电话电信服务供应商,此外还提供宽频及收费电视服务,合共 1.5 亿户提供服务,当中 8510 万户为无线用户。前文提到,今天是“电话之父”亚历山大·格拉汉姆·贝尔的生日,而 AT&T 的前身,其实便是贝尔电话公司。

时间回到 1875 年,贝尔在获得了电话的专利之后创立了贝尔电话公司。到 1881 年,贝尔电话公司已经成为美国贝尔电话公司,旗下有着许多子公司,业务分布十分广泛;其子公司之一便是成立于 1885 年 3 月 3 日的美国电话电报公司(AT&T)。

1899 年 12 月 30 日,AT&T 收购了其母公司美国贝尔电话公司的资产,成为新的母公司。AT&T 在美国建立了一个由当地电话子公司组成的网络;1913 年,美国电话电报公司及其子公司通过法庭和解,在 20 世纪的大部分时间里,由政府当局授权垄断电话服务,而这种长达数十年的垄断,被称为贝尔系统。

图源:维基百科

垄断之路只会随着时间变得越来越艰难,1984 年,美国司法部依据《反托拉斯法》拆分了 AT&T,分拆出一个继承了母公司名称的新 AT&T 公司(专营长途电话业务)和七个本地电话公司(即“贝尔七兄弟”),美国电信业从此进入了竞争时代。 1995 年,又从公司中分离出了从事设备开发制造的朗讯科技和 NCR 公司,只保留了通讯服务。

在 AT&T 拆分出来的众多子公司里,当属西南贝尔公司野心最大,气势最凶;西南贝尔公司创办于 1983 年,是根据美国政府与美国电话电报公司的反垄断诉讼的判决,而成立的其中一间独立公司。1995 年西南贝尔公司易名为 SBC 通讯公司,从此开始了一系列收购和扩张,包括 1987 年收购 Metromedia 移动业务和 1990 年代初收购几家有线电视公司;最终在 2005 年,SBC 收购了自己的“母亲”美国电话电报公司,并再度易名为 AT&T 公司。此外,这个全新的 AT&T 还继承了原由美国电话电报公司所持有的商标,以及在纽约证券交易所的上市编码:T(Telephone,电话)。

2007 年开始,AT&T 再次经历了一系列重组和并购。2007 年 6 月,兰德尔·斯蒂芬森在成为新任的 AT&T 公司总裁之后意图打造一个以无线服务为核心的全新 AT&T。当传统的固网业务不断萎缩, AT&T 公司计划跟进时代,开发新媒体,研究如视频共享和 U-Verse 这样的 IPTV 服务,并扩展全美乡郊地区的高速互联网业务。

公司转型并不是往往都能那么如意,2008 年 12 月 4 日,AT&T 公司公布因经济压力及应付不断变化的业务组合和更精简架构,将裁减 12000 人。在此之后,AT&T 稳扎稳打,保持着缓慢的收购节奏,预防再回到之前因垄断而解体的情况。2016 年,AT&T 宣布以 1087 亿美元收购知名的时代华纳公司,以增加其媒体资产。这一次,AT&T 成功躲过了被制裁的命运,两天后合并完成,第二天宣布时代华纳成为 AT&T 的全资子公司,更名为华纳传媒,逐渐演变成我们今天熟悉的样子。

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

1975 年 3 月 3 日:家酿电脑俱乐部召开第一次会议

你是否觉得“家酿电脑俱乐部”(Homebrew Computer Club)这个名字很奇怪?事实上,这个俱乐部里诞生了许多改变了计算机未来进程的天才程序员,乔布斯和他的挚友,也就是发明了苹果一号(Apple I)的史蒂夫·沃兹尼亚克便是这个俱乐部的一员。

家酿计算机俱乐部是加利福尼亚州门洛帕克的一个早期计算机爱好者组织,成立于 1975 年 3 月至 1986 年 12 月,今天介绍的便是俱乐部成员在 1975 年 3 月 3 日的第一次碰面。该俱乐部在微型计算机革命的发展和硅谷信息技术产业综合体的崛起中发挥了重要作用;一些知名的黑客和计算机企业家也从这个俱乐部中脱颖而出。俱乐部通过通讯和每月的会议来促进思想的开放交流,因为它属于个人电脑行业,所以被描述为“整个行业的熔炉”。

图源:维基百科

家酿计算机俱乐部里都是一群非正式的电子爱好者和技术爱好者,他们聚集在一起交换零件、电路和有关个人计算机设备 DIY 构造的信息。俱乐部的雏形是计算机科学家戈登·弗兰奇和弗雷德·摩尔在门洛帕克的社区计算机中心认识时诞生的一个想法;这些天才程序员们都有兴趣维持一个定期的、开放的论坛,让人们聚在一起,致力于让计算机更容易被每个人使用。

俱乐部的第一次会议是在 1975 年 3 月 3 日,在加利福尼亚州圣马特奥县门洛帕克法伦奇的车库里举行的;同一时期,MITS 公司将第一台牵牛星 8800 微型计算机送往这个地区审查。史蒂夫·沃兹尼亚克在后来回忆时,将自己设计苹果一号的灵感归功于第一次会议。家酿俱乐部接下来的几次会议是在加州阿瑟顿的一所大房子里举行的,这里曾是一所幼儿园;随后的会议则在斯坦福线性加速器中心(SLAC)的礼堂举行,直到 1978 年转移到斯坦福医学院。

这个俱乐部是硅谷文化形成过程中最有影响力的力量之一,在 2 月 3 日的专栏里,比尔·盖茨发表《致电脑爱好者的公开信》痛斥了当时早期的黑客侵犯商业软件程序的版权,便是将家酿计算机俱乐部视为主要目标。一群程序员们吃着烧烤,饮着啤酒,在不同的地点探讨着计算机界的未来。大部分会员都是业余爱好者,但都有电子工程或计算机编程的背景。

最初,他们参加会议讨论 Altair 8800,随后讨论其他技术主题,并转而交换原理图和编程技巧。从这个俱乐部的行列中诞生了许多计算机公司的创始人,包括史蒂夫·沃兹尼亚克(苹果电脑公司),哈里·加兰和罗杰·梅伦(Cromemco 公司),乔治·莫罗(Morrow Designs),保罗·特雷尔(Byte Shop)还有亚当·奥斯本(Osborne计算机公司)等等;受这些程序员的影响,还诞生了相关的改编电影《硅谷传奇》以及书籍《硅谷之火》。

资料来源:维基百科

2020 年 3 月 3 日:加州大学伯克利分校宣布无限期中止 SETI@home 项目

SETI@home,这个怪异的名字指的是“在家搜寻外星智慧”,因为 SETI 是“地外智慧”的意思;SETI@home 是一项旨在利用连入因特网的成千上万台计算机的闲置计算能力搜寻地外文明的工程。参加者可以用下载并运行屏幕保护程序的方式来让自己的计算机计算射电讯号所反馈回的数据,项目由美国加州大学伯克利分校的伯克利空间科学实验室主办。

SETI@home 最初的两个目标是:一、通过支持观测分析来检测地球以外的智能生命,来做有用的科学工作;二、证明“志愿计算”概念的可行性和实用性,也就是验证志愿者之间进行开源交流合作究竟能爆发多大的力量。

图源:维基百科

SETI@home 曾是全球最大的分布式计算项目,项目自 1999 年 5 月 17 日开始正式运行。至 2004 年 5 月,该项目在世界各地拥有近 500 万参与者,积累了近 200 万年的 CPU 运行时间,进行了近 5×1021 次浮点运算,处理了超过 13 亿个数据单元,无疑是非常成功的分布式计算试验项目。迄今为止,该项目尚未确认检测到任何 ETI 信号。

然而,它已经确定了几个候选目标(天空位置),其中强度的峰值不容易解释为噪声点,以供进一步分析。迄今为止最重要的候选信号于 2004 年 9 月 1 日公布,命名为无线电源 SHGb02+14a。虽然该项目尚未达到寻找外星智能的既定主要目标,但它已向科学界证明,使用连接互联网的计算机的分布式计算项目可以作为一种可行的分析工具取得成功,甚至可以击败最大的超级计算机。

在项目运行了一段时间后,SETI@home 官方于 2005 年 3 月中旬发布消息,逐渐停止 SETI Classic(即旧平台)的计算,全面转入 BOINC 计算平台,数据转换预计在 2 个月之内完成。但是由于全球的计算者抵制新的平台,所以 SETI Classic 仍运行了数月,只是关闭新账户注册。2005 年 12 月 15 日 SETI@home 美国伯克利大学官方已关闭 SETI@home Classic。2020 年 3 月 3 日,SETI@home 官方宣布于同月 31 日起无限期休止分布式运算计划,服务器不再分派运算任务给参与的计算机,但仍开放网站与留言板,官方鼓励参与者加入其他的分散式运算项目计划。

以史为镜,可以知兴替。计算机科学发展至今,有许多至关重要的事件、人物。在《新程序员:我们的技术时代,我们的程序人生》中,来自四十余位技术人跨越半个世纪,用代码敲出一个个真实的程序人生故事!

扫描或点击《新程序员:我们的技术时代,我们的程序人生》订阅!

有关【历史上的今天】3 月 3 日:AT&T 成立;全球最大分布式计算项目正式停止;家酿俱乐部首次会议的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby-on-rails - rails : "missing partial" when calling 'render' in RSpec test - 2

    我正在尝试测试是否存在表单。我是Rails新手。我的new.html.erb_spec.rb文件的内容是:require'spec_helper'describe"messages/new.html.erb"doit"shouldrendertheform"dorender'/messages/new.html.erb'reponse.shouldhave_form_putting_to(@message)with_submit_buttonendendView本身,new.html.erb,有代码:当我运行rspec时,它失败了:1)messages/new.html.erbshou

  3. ruby-on-rails - 由于 "wkhtmltopdf",PDFKIT 显然无法正常工作 - 2

    我在从html页面生成PDF时遇到问题。我正在使用PDFkit。在安装它的过程中,我注意到我需要wkhtmltopdf。所以我也安装了它。我做了PDFkit的文档所说的一切......现在我在尝试加载PDF时遇到了这个错误。这里是错误:commandfailed:"/usr/local/bin/wkhtmltopdf""--margin-right""0.75in""--page-size""Letter""--margin-top""0.75in""--margin-bottom""0.75in""--encoding""UTF-8""--margin-left""0.75in""-

  4. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  5. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  6. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

  7. ruby - 检查 "command"的输出应该包含 NilClass 的意外崩溃 - 2

    为了将Cucumber用于命令行脚本,我按照提供的说明安装了arubagem。它在我的Gemfile中,我可以验证是否安装了正确的版本并且我已经包含了require'aruba/cucumber'在'features/env.rb'中为了确保它能正常工作,我写了以下场景:@announceScenario:Testingcucumber/arubaGivenablankslateThentheoutputfrom"ls-la"shouldcontain"drw"假设事情应该失败。它确实失败了,但失败的原因是错误的:@announceScenario:Testingcucumber/ar

  8. ruby-on-rails - Rails 3.2.1 中 ActionMailer 中的未定义方法 'default_content_type=' - 2

    我在我的项目中添加了一个系统来重置用户密码并通过电子邮件将密码发送给他,以防他忘记密码。昨天它运行良好(当我实现它时)。当我今天尝试启动服务器时,出现以下错误。=>BootingWEBrick=>Rails3.2.1applicationstartingindevelopmentonhttp://0.0.0.0:3000=>Callwith-dtodetach=>Ctrl-CtoshutdownserverExiting/Users/vinayshenoy/.rvm/gems/ruby-1.9.3-p0/gems/actionmailer-3.2.1/lib/action_mailer

  9. ruby-on-rails - 如何优雅地重启 thin + nginx? - 2

    我的瘦服务器配置了nginx,我的ROR应用程序正在它们上运行。在我发布代码更新时运行thinrestart会给我的应用程序带来一些停机时间。我试图弄清楚如何优雅地重启正在运行的Thin实例,但找不到好的解决方案。有没有人能做到这一点? 最佳答案 #Restartjustthethinserverdescribedbythatconfigsudothin-C/etc/thin/mysite.ymlrestartNginx将继续运行并代理请求。如果您将Nginx设置为使用多个上游服务器,例如server{listen80;server

  10. ruby - 在 jRuby 中使用 'fork' 生成进程的替代方案? - 2

    在MRIRuby中我可以这样做:deftransferinternal_server=self.init_serverpid=forkdointernal_server.runend#Maketheserverprocessrunindependently.Process.detach(pid)internal_client=self.init_client#Dootherstuffwithconnectingtointernal_server...internal_client.post('somedata')ensure#KillserverProcess.kill('KILL',

随机推荐