自1980年以来计算领域的重大新发明

时间:2009-01-11 13:27:43

标签: innovation

这个问题源于comments关于过去50年左右计算中不同类型的进展。

其他一些参与者要求我将其作为一个问题提交给整个论坛。

这里的基本思想不是抨击当前的事物状况,而是试图了解提出基本新思想和原则的进展情况。

我声称在大多数计算领域我们需要真正的新想法,而且我想知道最近已经完成的任何重要和强大的想法。如果我们真的找不到它们,那么我们应该问“为什么?”和“我们该怎么办?”

129 个答案:

答案 0 :(得分:311)

互联网本身早于1980年,但由Tim Berners-Lee提出和实施的万维网(通过简单机制分发的超文本)始于1989/90。

虽然超文本的概念之前已经存在(Nelson’s Xanadu试图实现分布式方案),但WWW是实现分布式超文本系统的新方法。 Berners-Lee以一种功能强大且易于实现的方式结合了简单的客户端 - 服务器协议,标记语言和寻址方案。

我认为大多数创新都是以原始方式重新组合现有作品而创建的。 WWW的每个部分之前都以某种形式存在,但这种组合在后见之明是显而易见的。

我确信您现在正在使用它。

答案 1 :(得分:235)

Free Software Foundation(1985年成立)

即使你不是他们哲学的全心支持者,他们一直在推动自由软件,开源的想法对软件行业和一般内容产生了惊人的影响(例如维基百科)。 / p>

答案 2 :(得分:150)

我认为可以公平地说,在1980年,如果你使用电脑,你要么得到报酬,要么你是一个极客...那么改变了什么?

  • 打印机和消费级桌面 出版即可。意味着你不需要 印刷机大批量生产, 高品质的印刷材料。那 是 - 当然,现在我们 完全认为是理所当然的 大多数情况下我们甚至都不打扰 印刷部分,因为每个人的 无论如何在线。

  • <强>颜色即可。认真。彩色屏幕对非极客们产生了巨大的影响 对游戏的看法和应用。 突然间游戏似乎不那么难了 工作,更像是看电视,哪个 打开任天堂世嘉的大门, Atari等人带来了消费者游戏 进入家庭。

  • 媒体压缩(MP3和视频 文件)。还有很多东西 - 像TiVO和iPods - 我们没有 真的把它当作计算机 因为它们无处不在 方便使用的。但他们是。

我认为,这里的共同点是曾经不可能的东西(制作印刷文件;准确地再现彩色图像;实时向全世界发送信息;分发音频和视频材料),然后由于所涉及的设备和物流,现在是消费者层面的。那么 - 现在大企业做什么过去是不可能的,但如果我们能够弄清楚如何做到这一点,可能会很酷。便宜?

任何仍然涉及实际交通的东西都很有趣。视频会议尚未取代真正的会议 - 但是使用合适的技术,它仍然可能。一些充满感官的沉浸式环境可以消除一些休闲旅行 - 家庭影院是一个微不足道的例子;另一个是位于Soho办公大楼的“虚拟高尔夫球场”,在那里您可以在模拟球场上打18洞真正的高尔夫球。

对我来说,下一个非常重要的事情就是制作。制作东西。勺子和吉他和椅子和衣服和汽车和瓷砖和东西。仍然依赖于制造和分销基础设施的事情。我不必去商店买电影或专辑了 - 多长时间才能到商店买衣服和厨具?

当然,OLED显示器和GPS以及移动宽带和IoC容器和脚本以及“云”都有一些有趣的发展 - 但它们仍然只是将图片放在屏幕上的新方式。我可以打印自己的照片并编写自己的网页,但我希望能够制作一个亚麻篮子,它恰好适合我桌子旁边的那个角落,还有一个用于将我的吉他FX单元固定在我桌子上的安装支架,以及一些东西。把我的手机夹到我的自行车车把上。

没有编程相关?不......但在1980年,两者都没有合理的产量。或视频分发。或者向赞比亚的亲戚发送信息。想想大,人......:)

答案 3 :(得分:137)

包管理和分布式版本控制。

软件开发和分发方式的这些模式是最新的,并且仍然刚刚开始产生影响。

Ian Murdock称package management是“Linux给业界带来的最大进步”。好吧,他会的,但他有一点意见。自1980年以来,软件的安装方式发生了重大变化,但大多数计算机用户仍然没有经历过这种变化。

Joel和Jeff一直在讨论with Eric Sink中的版本控制(或版本控制或源代码管理)Podcast #36。似乎大多数开发人员还没有赶上集中式系统,而DVCS被广泛认为是神秘且不必要的。

来自the Podcast 36 transcript

  

0时06分37秒

     

Atwood: ......如果你认为 - 这是一个很大的假设 - 大多数开发人员都有点掌握了基本的源代码控制 - 我发现这不是真的,坦率地说。 ..

     

Spolsky:不会。大多数人,即使他们有,也是他们理解的签到,签出,但是分支和合并 - 这使他们感到困惑。

答案 4 :(得分:123)

BitTorrent。它彻底改变了以前似乎是一个明显不可改变的规则 - 一个人通过互联网下载文件所需的时间与下载它的人数成比例增长。它还解决了以前的点对点解决方案的缺陷,特别是围绕“泄漏”,以一种对解决方案本身有机的方式。

BitTorrent优雅地改变了通常的缺点 - 许多用户试图同时下载单个文件 - 成为一个优势,在地理上分发文件作为下载过程的自然部分。它优化两个对等体之间带宽使用的策略阻碍了作为副作用的吸收 - 所有参与者的最佳利益是强制执行限制。

这是其中一个想法,一旦其他人发明它,似乎很简单,如果不是显而易见的话。

答案 5 :(得分:120)

Damas-Milner类型推断(通常称为Hindley-Milner型推断)于1983年出版,并且一直是每个复杂静态类型系统的基础。这是编程语言中一个真正的新概念(基于20世纪70年代发表的观点,但直到1980年之后才开始实践)。在重要性方面,我提出了Self和用于实现Self的技术;在影响力方面它没有同行。 (OO世界的其余部分仍在对Smalltalk或Simula进行修改。)

类型推断的变化仍在发挥作用;我最常提出的变化是Wadler和Blott用于解决重载的类型机制,后来发现它可以在类型级别提供非常强大的编程机制。这个故事的结尾仍然在写。

答案 6 :(得分:104)

这是谷歌map-reduce 的插件,不仅仅是为了它本身,而是作为谷歌在不可靠的商用机器农场上运行快速,可靠服务的代理。绝对是一项重要的发明,与1980年统治重量级计算的大型铁主机方法完全不同。

答案 7 :(得分:91)

标记,信息的分类方式。是的,每个问题下的小文字框。

令人惊讶的是,发明标签花了大约30年的时间。我们使用了列表和目录;我们使用了针对印刷书籍优化的东西。

然而,30年比人们认识到印刷书籍可以更小的格式需要的时间要短得多。人们可以把书放在手中。

我认为核心CS人员之间的标记概念被低估了。所有研究都集中在自然语言处理(自上而下的方法)。 但标记是计算机和人们都能很好理解的第一种语言。这是一种自下而上的方法,使计算机使用自然语言。

答案 8 :(得分:80)

我认为我们正在以错误的方式看待这个并得出错误的结论。如果我做对了,那就循环了:

想法 - &gt;第一次实施 - &gt;少数民族收养 - &gt;临界质量 - &gt;商品

从最初的想法到商品,你经常有几个世纪,假设这个想法永远进入那个阶段。达芬奇可能在1493年画了一种直升飞机,但需要大约400年的时间才能让一台真正的机器升空离地。

从William Bourne在1580年对潜艇的首次描述到1800年的第一次实施,你已经有220年了,目前的潜艇还处于起步阶段:我们几乎不知道水下旅行(海洋中有2/3的行星) ,想想潜在的房地产;)。

并没有任何迹象表明我们之前从未听说过的早期,早期的想法。根据一些传说,看起来亚历山大大帝在公元前332年使用了某种潜水钟(这是潜艇的基本概念:一种携带人和海底空气供应的装置)。相信这一点,我们正在考虑从创意(即使是基本原型)到产品的2000年。

我所说的是今天寻找实施,更不用说1980年以前甚至没有想法的产品了......我认为,“快速排序”算法被中国古代的一些没有名字的文件职员使用了。所以呢?

40年前有网络计算机,当然,但这与今天的互联网不相上下。基本的想法/技术就在那里,但无论你不能在网上玩魔兽游戏。

  

我声称在大多数计算领域我们需要真正的新想法,而且我想知道最近已经完成的任何重要和强大的想法。如果我们真的找不到它们,那么我们应该问“为什么?”和“我们该怎么办?”

从历史上看,我们从来没有能够“快速地”找到与这个想法相近的“找到它们”。我认为周期越来越快,但计算仍然很年轻。

目前,我正试图弄清楚如何制作全息图(星球大战,没有任何物理支持)。我想我知道如何让它发挥作用。我甚至没有收集工具,材料和资金,但即使我要在任何程度上取得成功,实际的想法已经有几十年了,至少和相关的实施/技术已经使用了很长时间

只要您开始列出实际产品,您就可以确定概念和首次实施是否存在。无所谓。

你可以用某种理由争辩说,没有什么是新的,永远的,或者说一切都是新的,永远。这种哲学和两种观点都可以得到捍卫。

从实际的角度来看,真相介于两者之间。真理不是二元概念,布尔逻辑应该被诅咒。

中国人可能早就拿出了印刷机,但大约只有10年的时间,大多数人可以在家里以合理的价格印刷出色的彩色照片。

根据您的标准和参考框架,发明无处不在。

答案 9 :(得分:68)

Google的Page Rank算法。虽然它可以被视为网络爬行搜索引擎的改进,但我会指出它们也是在1980年后开发的。

答案 10 :(得分:66)

DNS,1983,以及依赖性的改进,例如通过MX记录而不是bang-paths的电子邮件主机解析。 * *不寒而栗

Zeroconf在DNS,2000上工作。我将打印机插入网络,我的笔记本电脑看到它。我在网络上启动一个Web服务器,我的浏览器就可以看到它。 (假设他们广播了他们的可用性。)

NTP(1985)基于Marzullo算法(1984)。准确的时间超过紧张的网络。

鼠标滚轮,1995年。使用没有它的老鼠感觉很原始。不,这不是恩格尔巴特团队想到的,忘了提及。至少当我问一个当时在团队中的人时。 (这是1998年左右的Engelbart活动。我得到了第一批老鼠之一。)

Unicode,1987及其对不同类型的编码,规范化,双向文本等的依赖性进展。

是的,人们每天都使用其中的所有5种是非常普遍的。

这些是“真正的新想法吗?”毕竟,有老鼠,有字符编码,有网络计时。告诉我如何区分“新”和“真正的新”,我会为你回答这个问题。我的直觉说这些都是新的。

在较小的领域中,最近的进展很容易。例如,在生物信息学中,Smith-Waterman(1981)和更特别是BLAST(1990)有效地使该领域成为可能。但听起来你要求的是整个计算领域中非常广泛的想法,并且首先选择低调的果实。因此,它始终是一个新的领域。

答案 11 :(得分:63)

数码相机怎么样?

根据维基百科的说法,first true digital camera出现在1988年,大众市场的数码相机在20世纪90年代后期变得可以承受。

答案 12 :(得分:50)

现代着色语言和现代GPU的流行。

GPU也是一款低成本的并行超级计算机,配备CUDA和OpenCL等工具,可实现快速高级并行代码。感谢所有那些游戏玩家降低这些日益令人印象深刻的硬件奇迹的价格。在接下来的五年里,我希望每台售出的新电脑(以及iPhone也能够)能够将大规模并行代码作为基本假设运行,就像24位彩色或32位保护模式一样。

答案 13 :(得分:43)

JIT汇编是在20世纪80年代后期发明的。

答案 14 :(得分:42)

解决两个问题:“为什么新思想会死亡”,以及“该怎么做”?

我怀疑很多缺乏进展是由于资本大量涌入和行业内根深蒂固的财富。听起来违反直觉,但我认为任何新想法都是一次性的,这已成为传统智慧;如果它没有在第一次尝试,它不能回来。它被一个有着根深蒂固的利益的人买走,或者只是失败了,能量消失了。几个例子是平板电脑和集成办公软件。牛顿和其他几个人都有真正的潜力,但最终(通过竞争性的消耗和糟糕的判断)浪费了他们的出生权,杀死了整个类别。 (我特别喜欢Ashton Tate的框架;但我仍然坚持使用Word和Excel)。

怎么办?首先想到的是Wm。莎士比亚的建议是:“让我们杀死所有的律师。”但是现在他们的武装太好了,我害怕。我认为最好的替代方案是找到某种类型的开源计划。他们似乎比替代品更好地保持可访问性和增量改进。但是这个行业已经变得足够大,所以必须采取某种有机协作机制才能获得牵引力。

我还认为,有一种动态,即根深蒂固的利益(特别是平台)需要大量的变革 - 流失 - 来证明持续的收入来源;这吸收了许多可能以更好的方式花费的创造力。看看我们花了多少时间用微软或Sun或Linux或Firefox的最新版本进行测试,从而对大部分工作正常的系统进行了更改。这不是因为它们是邪恶的,它只是建立在行业中。没有稳定均衡这样的东西;所有反馈机制都是积极的,有利于改变稳定性。 (你有没有看到一个功能被撤回,或者一个变化撤回了?)

这已经在SO讨论的另一个线索是臭鼬鼠工厂综合症(参见:杰弗里·摩尔):在大型组织中真正的创新几乎总是(90%+)在自发产生未经授权的项目显示出来,由个体或小型专用燃料小组倡议(通常是正式的管理层级)。所以:问题权威,支持系统。

答案 15 :(得分:36)

令我震惊的一件事是简单的电子表格。非程序员通过简单的公式网格为现实世界问题构建了疯狂而精彩的解决方案。在桌面应用程序中复制他们的工作通常需要比编写电子表格所花费的时间长10到100倍,并且生成的应用程序通常更难以使用并且充满了错误!

我认为电子表格成功的关键是自动依赖性分析。如果电子表格的用户被迫使用观察者模式,他们就没有机会做到正确。

因此,最大的进步是自动依赖性分析。现在为什么没有任何现代平台(Java,.Net,Web Services)将其构建到系统的核心?特别是在通过并行化扩展的时代 - 依赖关系图导致平行重新计算。

编辑:Dang - 刚检查过。 VisiCalc于1979年发布 - 让我们假装它是1980年后的发明。

Edit2:似乎Alan已经注意到电子表格 - 如果the question that bought him to this forum是正确的!

答案 16 :(得分:36)

软件:

  • 虚拟化和仿真

  • P2P数据传输

  • 社区驱动的项目,如维基百科,SETI @ home ......

  • 网页抓取和网络搜索引擎,即遍布全球的索引信息

设备:

  • 模块化PC

  • E-纸

答案 17 :(得分:36)

功能编程研究人员对monad的重新发现。 monad有助于使纯粹的懒惰语言(Haskell)成为一种实用的工具;它也影响了组合库的设计(monadic解析器组合甚至已经进入Python)。

Moggi的“关于程序模块的类别理论说明”(1989)通常被认为是将monad带入有效计算的视野; Wadler的工作(例如,“Imperative functional programming”(1993))将monad作为实用工具。

答案 18 :(得分:36)

收缩软件

1980年之前,软件大多是专门编写的。如果你经营一家企业,并想要计算机化,你通常会得到一台计算机,编译器和数据库,并编写自己的东西。商业软件通常是为了适应商业惯例而编写的。这并不是说没有罐装软件(我曾在1980年之前与SPSS合作过),但它不是常态,我所看到的往往是基础设施和研究软件。

如今,您可以前往电脑商店,在货架上找到经营小型企业所需的一切。它不是为了适应您曾经拥有的任何实践而设计的,但是一旦您学会根据其工作流程或多或少地开展工作,它就能很好地工作。像SAP和PeopleSoft这样的大型企业比以往更接近收缩包装。

这不是一个干净的休息时间,但在1980年之后,从昂贵的定制软件到低成本的现成软件的转变非常明确,灵活性从软件转移到商业程序。

它也影响了软件的经济性。定制软件解决方案可以盈利,但不能扩展。您只能向一个客户收取这么多费用,而且您不能向多个客户销售同样的东西。使用收缩包装软件,您可以销售大量相同的产品,从而在非常大的销售基础上分摊开发成本。 (您必须提供支持,但这可以扩展。只需将其视为销售软件的边际成本。)

理论上,如果变革中有大赢家,那么就会有失败者。到目前为止,软件业务一直在不断扩大,因此随着区域商品化,其他领域也开放了。这可能会在某个时候结束,适度有才华的开发人员会发现自己陷入了真正的困境,无法为大男孩工作并挤出市场。 (这可能发生在其他领域;我怀疑会计师的需求比没有QuickBooks之类的要小得多。)

答案 19 :(得分:34)

除了硬件创新之外,我倾向于发现在阳光下几乎没有新东西。大多数真正重要的想法可以追溯到像冯·诺伊曼和艾伦·图灵这样的人。

现在很多被称为“技术”的东西实际上只是某个人编写的程序或库,或者用新的比喻,首字母缩略词或品牌名称来翻新旧的想法。

答案 20 :(得分:32)

计算机蠕虫于上世纪八十年代早期在施乐帕洛阿尔托研究中心进行了研究。

来自John Shoch和Jon Hupp的The "Worm" Programs - Early Experience with a Distributed Computation“(ACM通讯,1982年3月第25卷第3期,第172-180页,1982年3月):

  

The Shockwave RiderJ. Brunner   发展了无所不能的概念   “绦虫”程序运行松动   通过计算机网络 - 一个   看似相当令人不安的想法,   但这也超出了我们的范围   目前的能力。基本模型,   然而,仍然是一个非常挑衅   一:程序或计算   可以从机器移动到机器,   根据需要利用资源,和   必要时复制自己。

     

类似地,我们曾经描述过一个   基于MATLAB的计算模型   经典科幻电影 The Blob :一个开始的节目   在一台机器上运行,但作为它   它对计算周期的胃口越来越大   可以找到,找到未使用的机器,   并发展到包含这些资源。   在半夜,这样的   该计划可以动员数百人   一栋建筑内的机器;在里面   早上,用户收回他们的   机器,“blob”必须   有条不紊地撤退,   收集中间结果   它的计算。躲在一个或一个   白天两台机器,   程序可能会在以后再次出现   资源再次可用   扩大计算。 (这个   对夜间探索有亲和力   一位研究人员将这些描述为   “吸血鬼计划。”)

引用Alan Kay:“预测未来的最好方法是发明它。”

答案 21 :(得分:31)

更好的用户界面。

今天的用户界面仍然很糟糕。我并不是以小的方式,而是以大的,根本的方式。我不禁注意到,即使是最好的程序仍然具有极其复杂的界面,或者需要以其他方式进行大量抽象思考的界面,而且这些界面不会接近传统的非软件工具。

当然,这是因为软件允许比传统工具做更多更多。但是,没有理由接受现状。此外,大多数软件都做得不好。

一般来说,应用程序仍然缺乏某种“正常工作”的感觉,因为它可以通过什么来完成,而不是应该做什么。一次又一次提出并且仍未解决的一点是拯救点。应用程序崩溃,破坏了工作时间。我习惯每隔几秒按一次Ctrl + S(当然,这不再适用于Web应用程序)。为什么我要这样做?这是令人费解的愚蠢。这显然是自动化的任务。当然,应用程序还必须为我做的每个修改保存一个diff(基本上是一个无限的撤消列表),以防我出错。

解决这个问题实际上并不困难。在每个应用程序中实现它很难,因为没有好的API可以做到这一点。在允许在所有平台和程序中轻松实现此类effords之前,编程工具和库必须得到显着改进,适用于具有任意备份存储且无需用户交互的所有文件格式。但是,在我们最终开始编写“好”应用程序而不仅仅是适当的应用程序之前,这是必要的步骤。

我相信Apple目前在某些方面近似于“正常工作”的感觉。以他们最新版本的iPhoto为例,它具有面部识别功能,可以自动将出现在其中的人对照片进行分组。 是一项经典任务,用户不会想要手动执行,而且理解计算机不会自动执行此操作的原因。甚至iPhoto距离良好的UI还有很长的路要走,因为所述功能仍然需要用户的最终确认(对于每张照片!),因为脸部识别引擎并不完美。

答案 22 :(得分:30)

HTM系统(Hiearchical Temporal Memory)。

人工智能的新方法,由Jeff Hawkins通过“On Intelligence”一书发起。

现在作为一家名为Numenta的公司活跃起来,通过开发“真正的”AI来对这些想法进行测试,邀请社区通过SDK使用系统参与。

更多的是从头开始构建机器智能,而不是试图模仿人类推理。

答案 23 :(得分:26)

使用物理学在人机交互中提供另一种可理解的隐喻。这与手势和触觉相结合可能会导致70年代发明的当前常见GUI隐喻的替换以及自80年代中后期以来的常用GUI隐喻。

1980年没有计算能力来实现这一目标。我相信Games可能会在这里引领潮流。在iPod Touch / iPhone中列表滚动的交互中可以很容易地看到一个例子。交互机制依赖于动量和摩擦在现实世界中如何工作的直觉,以提供滚动项目列表的简单方法,并且可用性依赖于导致滚动的物理手势。

答案 24 :(得分:25)

我相信单元测试,TDD和持续集成是1980年以后的重大发明。

答案 25 :(得分:25)

手机。

虽然第一个“无线电话”专利是在1908年,他们正在烹饪很长时间(1945年0G,1979年在日本推出1G),现代2G数字手机直到1991年才出现.SMS没有直到1993年才存在,互联网接入出现在1999年。

答案 26 :(得分:23)

我从1980年1月2日开始编程。我试图在我的职业生涯中考虑重大的新发明。我很难想到。我认为重要的大多数实际上是在1980年之前发明的,但直到之后才被广泛采用或改进。

  1. 图形用户界面。
  2. 快速处理。
  3. 大记忆(我在1980年为16k支付了200.00美元)。
  4. 小尺寸 - 手机,掌上电脑,iPhone,上网本。
  5. 存储容量大。 (我已经从携带一个大的90k软盘到8 gig usb拇指驱动器。
  6. 多个处理器。 (现在几乎所有的计算机都有不止一台,软件很难让他们忙碌)。
  7. 标准接口(如USB),可轻松连接硬件外围设备。
  8. 多点触控显示。
  9. 网络连接 - 导致90年代中期互联网爆炸。
  10. IDE使用Intellisense和增量编译。
  11. 虽然硬件已经大大改善,但软件行业一直在努力跟上。我们比1980年还要光明,但大多数改进都是改进而不是发明。自1980年以来,我们一直忙于应用我们所做的进步而不是发明。大多数这些增量发明本身并不重要或强大,但是当你回顾过去29年时它们是非常强大的。

    我们可能需要接受渐进式改进并引导它们。我相信真正原创的想法可能来自那些几乎没有接触过计算机的人,而且他们变得越来越难以找到。

答案 27 :(得分:22)

没有

我认为这是因为人们改变了态度。人们过去常常相信,如果他们只是找到那个“大创意”,那么他们就会把它变得富有。今天,人们认为这是执行而不是发现最多的。你有咒语,如“想法是一毛钱一打”和“第二只老鼠得到奶酪”。所以人们专注于利用现有的想法,而不是提出新的想法。

答案 28 :(得分:16)

开源社区开发。

答案 29 :(得分:16)

iPad(2010年4月发布):这个概念肯定是绝对革命性的!

alt text http://www.ubergizmo.com/photos/2010/1/apple-ipad//apple-ipad-05.JPG

Alan Kay绝不会看到来自1970年代的! 想象一下这样一个“个人,便携式信息操纵器”......


...

等待?什么!?你说Dynabook

alt text

早在1968年,Alan Kay就想到了described in great details in this 1972 paper ??

NOOOooo <子> OOOOO ...

哦,好吧......没关系。

答案 30 :(得分:15)

关于社交计算的想法自1980年以来取得了进展。The Well始于1985年。虽然我确信以前有过在线社区,但我相信一些真实的见解。区域发生在1980年以后。社会群体的不利动态方面及其在软件系统上的互动很像Tacoma Narrows Bridge的灾难。

我认为Clay Shirky's在该领域的工作阐明了这些影响以及如何减轻这些影响。我会说社交软件见解的有趣真实世界示例包括reCAPTCHAWikipedia之类的内容,其中由软件调解的参与者完成了重要的宝贵工作。

答案 31 :(得分:14)

我认为自20世纪80年代以来发明的最好的想法将是我们不知道的。无论是因为它们如此小而且无处不在,或者因为它们的受欢迎程度还没有真正起飞。

前者的一个例子是单击并拖动以选择文本的一部分。我相信它首先出现在1984年的Macintosh上。在此之前,你有一个单独的按钮来选择选择的开始和选择的结束。相当繁重。

后者的一个例子是(可能是)可视化编程语言。我不是说像超级卡,我的意思是像Max / MSP,Prograph,Quartz Composer,yahoo pipe等。目前它们真的是利基,但我怎么看,它真的没有什么能阻止它们像作为标准编程语言的表达和强大,除了思想共享。

可视化编程语言有效地强化了参照透明度的函数式编程范式。对于代码来说,这是一个非常有用的属性。他们执行此操作的方式也不是假想的 - 它只是凭借他们使用的隐喻。

VPL让那些本来无法编程的人可以进行编程,例如有语言障碍的人,如阅读障碍,甚至只是需要简单节省时间的外行人。专业程序员可能会嘲笑这一点,但就个人而言,我认为如果编程成为一种普遍存在的技能,如识字能力,那就太棒了。

尽管如此,VPL仍然是一个利基市场,并没有真正成为主流。

我们应该做些什么

所有计算机科学专业都应该要求将CS专业与人文学科之一重叠 - 。绘画,文学,设计,心理学,历史,英语,等等。很多问题是,这个行业的人们对这个世界有一个非常狭隘和缺乏想象力的理解,因此无法想象计算机的工作方式与现有的有很大不同。 (如果有帮助的话,你可以想象我说的是你以外的人,读这个的人。)数学很棒,但最终它只是一个实现的工具。 我们需要了解创意本质的专家,他们也了解技术

但是,即使我们拥有它们,也需要有一个环境,在这种环境中,做一些新事物可能会带来风险。 任何真正的新东西被拒绝失控,而非恶意的可能性要高出100倍。 (牛顿就是一个例子)。 所以我们需要更高的容忍度。我们不应该害怕尝试过去失败的想法。我们不应该完全拒绝我们自己的失败 - 我们应该学会认识到失败的时候。我们不应该把失败视为坏事,因此我们不应该对自己或其他人撒谎。我们应该习惯它,因为它只是这个不断变化的行业中唯一的常数。 验尸后在这方面很有用。

关于smalltalk的一个更有趣的事情,我认为,不是语言本身,而是用于实现smalltalk设计的过程。迭代设计过程经历了许多修订 - 但也非常谨慎和批判性地识别现有系统的缺陷,并在下一个系统中找到解决方案。观点越多,我们对情况的看法越广泛,我们就越能判断出错误和问题的位置。所以不要只研究计算机科学。学习许多其他学术科目,你可以让自己感兴趣。

答案 32 :(得分:14)

1980年以前的日子当然是施乐帕洛阿尔托研究中心的辉煌岁月。当GUI,鼠标,激光打印机,互联网和个人计算机都被创建时返回。 (因为我太年轻,以至于当时还活着,而且你正在努力发明所有这些,我不能告诉你关于1980年你还不知道的任何事情,所以让我们继续前进。)

然而,事情是,1980年以前的在真正具有破坏性的新技术方面更加充满活力。这就是任何新领域的方式 - 在过去的100年里,你在铁路上看到过许多改变游戏规则的技术进步吗?你有多少人看过灯泡?在印刷机?一旦某些东西点燃了正确的圈子中的炒作,就会有一个爆炸性的发明时期,然后是长时间的成熟。在那之后,除非基本情况发生变化,否则你不会再看到同样完全激进的变化。

幸运的是,这可能发生在许多领域,并且已经发生在其他一些领域:

  • 移动性 - 智能手机将计算带入真正的便携式平台,很快将包括基于位置的服务和基于邻近度的ad-hoc网络。这是一个全新的范例,可能会像GUI一样改变游戏规则

  • WWW(HTTP,HTML和DNS)已经被提及并且是该列表的一个明显的补充,因为它在全球范围内实现全球,廉价,主流的丰富通信 - 所有这一切都归功于计算平台< / p>

  • 在界面方面,触摸,多点触控(Jeff Han浮现在脑海中)和Wiimote都需要提及。目前,它们基本上是好奇心,但早期的GUI也是如此。

  • OOP设计模式 - 更高级别的解决方案,作为解决难题的最佳实践。根据你对“计算”的定义,它可能属于也可能不属于列表,但是如果你把OOP算作1980年以前的一个重要进展(我当然这样做),我认为设计模式和GoF也值得提及

  • 谷歌的PageRank和MapReduce算法 - 我很高兴地注意到我并不是第一个提及它们的人,并且认真地说 - 世界哪里没有他们的原则?我清楚地记得他们面前的世界是什么样的,只要说谷歌真的是我的朋友就足够了。

  • 非易失性存储器 - 它位于硬件方面,但它将在计算的未来发挥重要作用 - 例如,使启动时间成为过去,并使我们能够使用计算机以全新的方式

  • 语义(自然语言)搜索/分析/分类/翻译......我们还没到那里,但像Powerset这样的公司给人的印象是我们处于危险边缘。

  • 在这方面,智能HTM也应该在此列表中。我是杰夫霍金斯的模型和方法的又一个信徒,如果它有效,它将意味着完全重新定义计算机可以做什么,它对人类意味着什么,以及世界可以从这里走向何方。以这种方式创造真正的智慧(综合)会比人类以前完成的任何事情都要大。

  • GNU + Linux

  • 3D打印/快速原型制作(以及及时制造)

  • P2P(也导致VoIP等)

  • 电子墨水,一旦技术成熟一点

  • RFID可能属于列表,但判决结果仍然在那个

  • 量子计算是列表中最明显的元素,除了我们仍然无法获得足够的量子比特。然而,我在现场的朋友告诉我,即使在我们说话的时候,仍然有令人难以置信的进步,所以我会为那个屏住呼吸。

  • 最后,我想提一下个人最爱:分布式智能,或其他名称:人工智能。将大量人员连接到网络中并允许他们通过某种形式的问答环境访问其他人的综合思想的想法。最近有很多次,雅虎答案,Askville,亚马逊机械土耳其人等等,但在我看来,这些都是很多人都错过了标记...就像许多分布式超文本的实现一样在Tim Berners-Lee的HTML之前,或谷歌之前的许多网络爬虫。说真的 - 有人需要在“蜂巢头脑”中建立一个搜索界面,以便将其他所有人都赶出水面。恕我直言 - 这只是时间问题。

答案 33 :(得分:14)

重组是我们需要的,而不是重塑。

我们现在拥有所需的所有硬件和软件组件,可以在未来几年内完成令人惊叹的事情。

我相信科学中存在一种疾病,参与者总是试图发明新的东西以区别于其他人。这与编写或教授旧作品的一些混乱工作形成鲜明对比。

构建“新”事物的人通常被认为具有比重用现有和几乎古老作品的人更高的血统。 (古代要说一个20岁的人,就像Lisp的说法,过去的生活时间翻了一倍。1958年)

好的旧观念需要复活和广泛传播,我们需要停止尝试建立业务或程序员运动,有效地践踏权力游戏中的旧作品和系统成为下一个新事物 - 实际上大多数“新闪亮”的东西只是旧思想复活的一部分。

答案 34 :(得分:12)

有效的并行化和量子计算 - 我认为这两个领域已经取得了进展,并且将对我们对计算能力的使用做出非常重大的改变。

有效的并行化意味着并行化和分发处理,而无需特殊的编程技术,但它在内置于编译器/框架中。

答案 35 :(得分:12)

飞行汽车和气垫板。哦等等,那些尚未发明的。但到2015年,我们必须拥有它们。否则回到未来2将是一个很大的谎言!

答案 36 :(得分:12)

在主流计算中没有改变的一件事是分层文件系统。这是一种耻辱,IMO,因为在20世纪80年代末和90年代正在进行一些工作来设计更适合现代,面向对象操作系统的新型文件系统 - 从头开始​​的OO。

OO操作系统往往具有可扩展且灵活的扁平对象存储。我认为EROS Project是围绕这个想法建立的; PenPoint OS是20世纪90年代面向对象的操作系统;而Amazon S3当然是一个现代的扁平物品商店。

在OO中至少有两个想法,我特别喜欢的平面文件系统:

  • 整个磁盘本质上是交换空间。对象存在于内存中,在不需要时被分页,并在它们存在时被带回。不需要与虚拟内存分离的分层文件系统。从某种意义上说,程序“总是在运行”。

  • 平面文件/对象存储允许对内容进行索引和搜索,而不是强制用户提前决定内容与其他内容相关的位置以及其名称应该是什么。可以在平面存储之上构建分层系统,但这不是必需的。

正如Alan Cooper在他的书About Face中所述,分层文件系统是一种kludge,专为20世纪60年代和70年代的计算机而设计,具有有限的内存和磁盘存储。可悲的是,Windows和Unix的流行至今仍保证了分层文件系统的主导地位。

答案 37 :(得分:10)

几乎所有在现代3D计算机图形中都很重要的东西。光线跟踪(在计算图形意义上)从Whitted的1980年论文开始。行进立方体('87)是从三维数据中提取等值面的标准方法。

答案 38 :(得分:9)

虚拟世界,您可以通过虚拟的自我(也称为阿凡达)代表社交和角色扮演。

最常被称为MMO - 大型(多)在线多人游戏。一些流行的例子包括魔兽世界,无尽的任务,第二人生。

PS:不,他们仍然不需要像80年代的极客电影中所描绘的那样沉重的头饰。真是太可惜了......

答案 39 :(得分:8)

用于人机交互的触摸屏和动作感应界面。

例如:

  • PDA,iPhone或任天堂DS的触摸屏
  • 动作感应,Nintendo Wii控制器或(在较小程度上)PlayStation 3的SixAxis控制器。

唯一的问题是......这些技术真的是80后的吗?

答案 40 :(得分:8)

答案 41 :(得分:7)

至于编程概念,1988年的IoC /依赖注入源于1983年.Fowler在他的Bliki上有关于概念历史的一些注释。

答案 42 :(得分:7)

访问海量数据。

与80年代相比,我们现有数据的庞大规模和规模是巨大的。我们必须对我们的硬件和软件进行大量更改才能存储和显示这些内容。有一天,我们实际上将学习如何获得资格并挖掘出有用的东西。一天。

保罗。

答案 43 :(得分:7)

前提:自1980年以来几乎没有新发明。

首先要做的是定义invention,否则你会走错路。 Dictionary.com的发明的第二个定义是:

  

U.S。专利法。一种新的,有用的过程,机器,改进等,以前不存在,被认为是一些独特的直觉或天才的产物,与普通的机械技能或工艺不同。

因此,自1980年以来,计算中很少有新发明。有什么?很明显,有大量新技术和新事物会出现,但它们是什么?

我们不再发明,我们正在改进主要存在的东西。

一个简单的例子:

光盘或光盘最初始于1977年,但直到1982年它们才被工业界接受。此时,第一家按CD的工厂刚刚开始准备就绪。最终,到1985年,CD-ROM(只读存储器)被接受为媒介。 CD-RW在5年后出现。 (来源:Wikipedia

现在怎样?好吧,鉴于我们有更大的硬盘驱动器(仍然只是对范例的改进),我们需要更多的空间来取代VHS市场并使视频与计算机兼容。因此,虽然我正在削减对现有CD技术的许多改进,但DVD也出现了。

DVD出现在1995年,是“发明的”。(资料来源:Wikipedia

从那时起我们就有了:

  1. 可写和可重写的DVD
  2. 双层DVD
  3. 三层和四层DVD(虽然通过简单的驱动程序修订可行,但尚未发布)
  4. HD-DVD
  5. 蓝光光盘
  6. 显然,此列表并非全包。但请记住新发明,记住我在上面列出的定义。你不能!它们只是光盘概念的变体,只是在同一硬件上的变化,而且只是现有软件的变化。

    为什么?

    成本。请注意,对现有产品进行渐进式改进在经济上更便宜。如果我可以向你推销HD DVD或蓝光光盘,因为你认为它是必要的还是很酷的,那么我就不需要发布我的三层或四层DVD计划了。事实上,我只是为了获得新技术而向您收取费用,因为您是早期采用者并且您需要我的“新的和改进的!”硬件

    这称为营销或产品关系。

    但是软件呢?

    怎么样? 1980年以前,有许多软件创造力在继续,但从那时起,它主要是对已经存在的东西进行改进或重新发明轮子。查看任何操作系统或办公软件包以查看此信息。

    结论

    就我而言,过去29年几乎没有新发明。我可以长时间地穿越许多行业,但我为什么要打扰?一旦你开始考虑它,并开始将“发明”与先前的类似产品进行比较......你会发现它非常相似,甚至都不好笑。甚至内燃机自1906年以来一直存在,此后该领域没有新的发明;这个“轮子”的许多改进和变化是,但没有新的发明。

    美国在伊拉克部署的新武器 - 即使用微波炉让人感到震惊的新武器 - 就像触及灯泡一样 - 是新的。在安全系统中使用了相同的想法,然后将其分类并从市场上撤下,用超声波使入侵者感到身体不适。这是具有不同波长和应用的武器的定向形式,而不是新发明。

答案 44 :(得分:7)

电可擦除可编程存储器,通用于非易失性读/写存储器,是目前最知名且无处不在的闪存。 http://en.wikipedia.org/wiki/EEPROM将此列为1984年发明的。

通过为存储介质提供与处理单元相同的一般物理,功率要求,尺寸和稳定性,我们将其作为设置处理器的设计的限制因素。这扩大了我们如何以及在何处将“智能”置于如此众多的智能设备(以及以前从未被认为是智能设备的事物)的可能性,我们仍然在激增。 Mp3玩家实际上只是其中的一小部分。

答案 45 :(得分:7)

光学计算。似乎应该有更长的时间,但我目前无法找到1982年左右的任何参考(相关的技术,光学晶体管,直到1986年才出现)。

答案 46 :(得分:7)

万维网已被告知,但更基本的是,我会说“DNS”。 似乎它是在1983年发明的(http://en.wikipedia.org/wiki/Domain_Name_System)和恕我直言,我们可以认为这是互联网协议的发明和传播到世界各地的能力之间的强制性联系,现在称之为网络。

仍然在“网络”部分,我会添加WIFI。它是在90年代发明的(但我同意它并不完全是“计算”,而是与硬件更相关)。

在更严格的“算法”部分,我想到了涡轮编码(1993年);有人说它只是接近香农信号理论定义的限制,但是这个论点不会拒绝所有其他答案“一切都已经在Lovelace,Babbage和图灵着作中的种子”吗?

在密码学领域,我将从P.Zimmermann(1991年)添加PGP程序,该程序为公民带来了一个非常强大(此时)的免费加密程序,并有助于动摇一点政府的态度关于加密。事实上,我认为这是加密“自由化”的因素之一,这是发展电子商务的先决条件。

答案 47 :(得分:6)

基础设施的变化,允许家庭和办公室访问互联网。

从W3C到API的文档化和接受标准

除此之外,我们认为新的约会时间比你想象的要长很多(例如GUI,OOP)。

答案 48 :(得分:6)

我认为笔记本电脑是在1980年左右发明的,我也认为笔记本电脑和便携式计算机的发展改变了很多人的生活 - 当然是我们这些从事IT工作或使用电脑和旅行的人。

答案 49 :(得分:6)

我认为最大的趋势是缺乏位置依赖性和普遍性。如今,一项有趣的哲学练习是计算你所在地区的计算机。他们到处都是台式机,键盘,微波炉,收音机,电视机,手机等......我的祖母电脑是文盲,但她的生活就像其他人一样充斥着小型计算机。她可以从空旷的田野中间打电话给我。然后我可以回答那个拉低高速公路的电话。

答案 50 :(得分:6)

声明性编程

1979年“计算机程序”势在必行。程序员应该在要做什么如何这两个方面指示编译器。 (N1)

今天,ASP.NET WebFormsWPF程序员经常编写代码而不知道或关心如何实现Wikipedia还有其他不太主流的例子。此外,所有SGML派生的“标记”语言都是声明性的,我怀疑1979年的许多程序员会在30年内预测它们的重要性或普遍性。

虽然声明式编程的概念存在于1980年之前(参见1975年的this paper),但发明是在引入Caml时发生的。在1985年(有争议)或Haskell在1990年(不太有争议)。 (N2)从那时起,声明性编程的普及程度大大提高。而且,当大量多核处理器最终到达时,我们所有都是声明性程序员。

-
注意:
(N1)我不能保证第一手资料,因为我是1979年的胎儿。
(N2)从其他答案来看,似乎人们对发明的概念感到困惑。达芬奇设想了一架直升机,但他没有发明它。问题是关于计算中的发明
(N3)请不要在评论中提及Prolog(rel.1975),除非你真的在其中构建了一个应用程序。

答案 51 :(得分:6)

播客它允许以信息的方式分发信息和辩论。我发现它比标准访谈更具互动性,但比博客评论更少。

答案 52 :(得分:6)

Instant Messaging已经存在很长时间(60年代中后期),但是IRC并没有在1988年之前出现。

视频通信,除此之外(例如,Windows Live Messenger,或Skype,或......)确实change the way we are communicating;)并且更新近。


<强>&LT;校正&GT;
(请参阅VideoConferencing: 1968alt text http://wpcontent.answers.com/wikipedia/en/thumb/6/64/On_Line_System_Videoconferencing_FJCC_1968.jpg/180px-On_Line_System_Videoconferencing_FJCC_1968.jpg,正如Alan Kay 他自己在评论中指出的那样:

  

再次,请查看Engelbart demoed in 1968(包括实时视频聊天和屏幕共享)。 IOW,猜测确实不如查找。这就是为什么大多数人对事物何时被发明做出弱假设的原因。)

my face;)中获取,并且理所当然。

注意:那些时间的“网络摄像头”(视频设置)并非完全针对普通客厅制作;)

<强>&LT; /校正&GT;


[...恢复答案:]

webcam alt text http://wpcontent.answers.com/wikipedia/commons/thumb/c/c5/Logitech_Quickcam_Pro_4000.jpg/180px-Logitech_Quickcam_Pro_4000.jpg的概括也有帮助(始于1991年,第一台这样的相机,称为CoffeeCam,指向剑桥大学计算机科学系的特洛伊室咖啡壶)。

所以:1980年后:3个中的2个:IRC和网络摄像头。

答案 53 :(得分:6)

“美国人没有过去也没有未来,他们生活在一个扩展的现在。”这描述了计算的状态。我们生活在80年代延伸到21世纪。唯一改变的是尺寸。 Alan Kay

来源: Alan Kay: Is Computer Science an Oxymoron?

答案 54 :(得分:6)

忆阻器。

虽然这个想法并不比1980年更新,但我相信直到2008年才创造出一种工作模式。如果它超越R&amp; D,它将成为自晶体管以来计算机硬件领域最重大的进步;至少,避免二次记忆。

答案 55 :(得分:5)

  

我声称我们需要真正的新想法   在大多数计算领域,我   想知道任何重要的事情   已经完成的强大的   最近。如果我们真的找不到   他们,然后我们应该问“为什么?”和   “我们该怎么办?”

我看到它的方式,我们在计算方面没有太多新想法,因为我们基本上不需要它们。我们一直在挤压旧的想法,并从中获取很多,例如cpu速度的显着增长。

当我们需要新想法因为“井已经干了”可以这么说时,我们就会发现必要性是发明之母。

答案 56 :(得分:5)

我能想到的一项活动是1980年不存在的全局搜索不相交的域名。即谷歌和一些(极少数)前辈 - 所有这些都在1980年后很好。与语法标记的惯例相关联,我认为它有资格作为“新想法”;但我认为它也刚刚开始;积累了大量的开销空间。

一种有可能加速这种闪电速度矢量的设备将很快成为组合摄像机/ GIS /电话/网络。它创造了第一次在四维空间中自动收集,分类和聚合数据点的机会。即使是这类数据的繁琐手工收集也在萌芽;想象什么时候默认完成。

无论好坏。

答案 57 :(得分:5)

设计模式使计算机科学更接近计算机工程。 GPS和互联网地址查找基于位置的交互。 面向服务的体系结构(SOA)。

答案 58 :(得分:5)

开放式PC设计导致价格合理的组件(Apple除外):-以及推动创新和降价的竞争。 这导致了用户进入计算机的大变化 - 有一个终端可供使用 - 到计算机来到用户并出现在家里​​甚至在一圈。

答案 59 :(得分:5)

Games With a Purpose - 像Luis von Ahn及其团队正在开发的集体智慧工具可能是1980年以前的一个梦想,但是没有一个广泛部署的网络,有数百万人可用且需要(例如{{ 3}})实际上让它发生。

答案 60 :(得分:5)

IP Multicast(1991)和Van Jacobsen的Dissemination Networking(2006)是自1989年以来最大的发明。

答案 61 :(得分:5)

这是一个消极的结果,这是一个奇怪的“有趣的创新”,但我认为适用,因为它开辟了新的研究领域,并关闭了无用的。

分配共识的不可能性:PODC Influential Paper Award: 2001

  

我们假设我们的主要价值   不可能的结果是关闭   没有生产力的研究方向   试图找到容错   共识算法。但对我们来说很重要   令人惊讶的是,它开辟了全新   研究方向。有过   究竟分析了什么假设   关于分布式系统模型   不可能证明所需要的。   许多相关的分布式问题   该证据也适用于此   发现,与看似相似   有问题的解决方案。   最终进行了长时间的研究   发展了原始人   根据他们的能力进行分类   实现无等待容错   共识。

答案 62 :(得分:5)

低成本/家庭计算。直到20世纪80年代早期才发现(至少在Blighty这里)的东西。没有家庭计算,有多少人在这里发布作为职业的计算机?或者甚至作为业余爱好1

我自己,如果我的伙伴们在1982/1983年没有得到Clive Sincliar谦逊的橡皮钥匙ZX Spectrum,我现在可能不会在这里。而且不只是斯佩西:C64Vic-20Acorn ElectronBBC A/B/MasterOric-1Dragon-32等所有燃料家庭计算机市场,并使每个8岁男孩和女孩都可以使用一个程序员。

如果这不是计算和编程方面的革命,我不会知道是什么......!

1好奇一边:这个网站上的业余爱好者和专业程序员的细分是什么?我知道这些统计数据没有整理,但可能很有趣。

答案 63 :(得分:5)

增强现实。这还没有真正起飞尚未,但是随着想法的发展,我认为它是巨大的,因为能够在地面上绘制虚拟箭头以帮助您找到目的地,用有用的东西装饰周围的一切信息或审美幻想。

想象一下,你的手机在房间里响起,你看着它,上面弹出一个信息气泡,告诉你谁在打电话。这会有多酷? AR将为我们思考和与技术互动的方式带来巨大变化。

闹鬼的房子也可能会变得更加可怕。

我还想提及{{3>} 脑 - 计算机接口,但显然这是1970年代首次发明的。

答案 64 :(得分:5)

虚拟化?
像VirtualBox OSE或VMWare这样的应用程序为我节省了很多时间。

答案 65 :(得分:5)

USB

答案 66 :(得分:4)

采用面向对象。

这个想法早在(例如Simula),但它在20世纪90年代成为主流。 (恕我直言,其最大的好处之一是在开发人员之间提供一个共同的词汇表,因此它的广泛采用使其更有价值。)

答案 67 :(得分:4)

我还会提名3D鼠标。从20世纪90年代早期开始存在几种变体。对于使用3D的人来说,像SpaceNavigator这样的事情会让生活变得更轻松。 (免责声明:我不以任何方式加入3Dconnexion,只是满意而且现在是RSI免费用户。)

答案 68 :(得分:4)

我相信没有重要的事情发明了......但自80年代以来,对软件的看法发生了很大变化。那时候有更多的理论家参与这个事情,现在你在程序员的论坛上问这个问题。

当时的大多数想法都没有得到实施,或者在实施时它们没有任何真正的重要性,因为软件行业不存在,市场营销或人力资源或开发阶段,或alpha版本:)。

这种缺乏发明的另一个原因是大多数人使用Windows :)不要误会我的意思,我讨厌M $,但这样看待它:你有一个完美的工作界面,没有什么新东西可以添加它,也许只是一些新的彩色按钮。它也足够封闭,所以你不能在没有破坏它的情况下使用它。这就是为什么我更喜欢开放的应用程序,这样你就可以得到更多“开放”的人,他们可以实际交谈,然后问问题,提出实际实现的新想法,或者至少放一个开放的待办事项列表,这样你就得到了某种“进化”。你真的没有看到任何新的东西,因为你被许多年前“发明”的基本界面所困扰......有没有人在生产环境中尝试过ION窗口管理器?它有一种新的界面,实际上可以让你更快地做事,看起来古怪的事件

M $,Adobe ..你的名字,拥有大量的专利,所以你不能将你的工作建立在他们或衍生品(你也不知道他们持有什么样的未开发的技术)。以MP3和GIF为例(我相信它们现在都是免费格式,但它们也有点死了......)如果那里的算法很少,MP3就是音频evend的“王者”..但是没有得到足够的牵引力,因为他们没有被推到消费者市场。 GIF ......加油,256色???从这个角度来看,我很好奇这个主题中有多少人正在开发一些“开放”的东西,这些东西将在其他一些项目中得到重用,有多少人在“封闭”中受到NDA项目的保护?

即使它听起来有点像“自由威胁”的演讲,回到80年代,软件是免费的,你得到了所有内容的文档,所有硬件都更简单,更容易使用...而且更有限,所以人们实际上并没有浪费时间来实施3D游戏或网页,而是使用真正的算法。

答案 69 :(得分:4)

The Eclipse IDE

为大众带来像IDE这样的Smalltalk;)

答案 70 :(得分:4)

Ctrl-C + Ctrl-V + Ctrl-X组合:)

答案 71 :(得分:4)

第一台真正的多媒体个人电脑Amiga:第一款32位抢占式多任务个人电脑,第一款采用硬件图形加速,第一款采用多声道声音,在许多方面是比多核更有用和更强大的机器, multigigahertz Windows boxen今天激增。

答案 72 :(得分:4)

奇怪的发展风格(如Eric {Raymond的http://www.catb.org/~esr/writings/cathedral-bazaar/cathedral-bazaar/所述)。 Raymond认为Linus Tourvald在1991年发布的Linux内核是第一次使用Bizarre开发风格。

答案 73 :(得分:4)

传感器网络:非常小的(纳米级)计算机形成ad-hoc p2p网络并传输“感官”信息。

3D打印:用于物理对象的Star Trek复制器(尚未提供早期灰茶)。

DNA计算:针对某些类型的问题进行大规模并行计算。

答案 74 :(得分:4)

具有社区支持的翻译软件,可以进行手动更正和推荐,然后使用AI bot来形成模式,最终区分并正确预测不同翻译和上下文中的歧义。

虽然这是真的Google Translate可能不是那种野兽,但它是母亲,或者也许是等待开发的系统的祖母。

如果您考虑一下 - 文本语言确实是大脑的输入,眼睛会看到文本并将图像发送到大脑,然后将其转化为理解。

虽然其真正的沟通(尤其是人类沟通)是一个高级主题,但基础知识是输入的(带有上下文) - &gt;翻译 - &gt;理解。

为什么我们仍然没有真正好的方式向远方的同事或不会说我们语言的合作伙伴发送电子邮件?这显然是第一阶段。

一旦完成,我们就可以进行实时电话转换等工作。

相反,月复一月,我们最大的智力资产涉及其他更重要的项目,如空间研究,流星探测,或试图证明圣经错误(哈欠)。

我们如何将更多时间用于基本的实践交流?

答案 75 :(得分:4)

USB钥匙/拇指驱动器

USB密钥是软盘的有效替代品,其中软盘在简单传输中仍然优于CD或DVD。

答案 76 :(得分:4)

我认为过去50年来计算机的一项非常重要的发明是GOOGLE。没有一个好的搜索工具,互联网就没有任何意义。搜索引擎的出现彻底改变了互联网,使其能够被小家伙货币化。

答案 77 :(得分:4)

RAID(1988)。

可以说,这只是过去几年纠错码的应用,但可以说,计算机科学中的所有东西都可以简化为几千年来的基础数学。

答案 78 :(得分:4)

增强现实

在某个视图中,现实世界以某种方式与虚拟元素相结合。

虚拟现实这个术语是在1989年“增强现实”一词出现之前的几年创造出来的。

一些早期的支持技术是在1980年之前发明的,但这个概念本身可以追溯到九十年代初期(至少这是维基百科所说的。)

http://en.wikipedia.org/wiki/Augmented_reality#History

答案 79 :(得分:4)

也许一个科幻作家论坛会给你更有趣的答案? ; - )

我怀疑这里的工作有点谬误,你把技术和科学的历史视为一个稳定的进步,作为一种线性现象。我怀疑它实际上是一个适合和开始,背景,经济,偶然性和普通随机性的过程。

你应该感到幸运的是,你处于历史巨潮之一的中心,大多数人永远不会有这种经历。

答案 80 :(得分:4)

有几个答案提到量子计算机,好像它们在未来仍然遥远,但我不同意。

在20世纪70年代和80年代,有人模糊地提到量子计算机的可能性(见timeline on Wikipedia),然而第一台“工作”的3比特核磁共振量子计算机建于1998年。该领域仍处于起步阶段,几乎所有的进展仍然是理论上的,仅限于学术界,但在2007年,一家名为D-Wave Systems的公司提出了一个工作16-qubit的原型,后来在年内推出了28-qubit绝热量子计算机。他们的努力值得注意,因为他们声称他们的技术具有商业可行性和可扩展性。截至2010年,他们拥有7个钻井平台,目前他们的芯片有128个量子比特。他们似乎与谷歌合作,发现有趣的问题,以测试他们的硬件。

我建议在D-Wave上使用this short 24-minute videoWikipedia article进行快速浏览,并在D-Wave创始人和首席财务官撰写的this blog上提供更多资源。

答案 81 :(得分:3)

用于并行化的MPI和PVM。

答案 82 :(得分:3)

在OS核心开发中使用函数式编程/语言。

答案 83 :(得分:3)

'Singularity',以及所有类似的项目,即在托管代码中开发操作系统。

答案 84 :(得分:3)

不确定1980年,但人工智能社区几十年来一直是一个创意发明者,他们仍然在这里。

答案 85 :(得分:3)

回答一个稍微不同的问题。我认为我们需要在隐私,信任和声誉方面提出重要意见。我的计算机能够捕获几乎所有关于我的信息,我在哪里,我说什么,我输入什么,我看到了什么...... ......大量的信息与同样大量的实体(人,商店,网站,我可能希望与他们分享一些信息,即使它只是一个数据。

我的信息需要挖掘(不是谷歌,Facebook或苹果)。我的计算机需要代表我使用它,所以信任需要端到端。然后,我们可以将新信息中间人中介。

答案 86 :(得分:3)

(广泛)加密。没有加密,就不会发生金融交易。这仍然是一个可以利用更多创新和用户友好性的领域。

答案 87 :(得分:3)

多代理系统。

你可以回到分布式人工智能的根源,我认为仍然安全地保持在80年代的这一边。

多智能体系统有很多组成部分,很多研究都涉及到言语行为或合作,因此很难指出并说“看,这里,这是不同的,创新的和重要的!”但无论如何我会尝试。 : - )

我认为Belief-Desire-Intention模型特别值得注意。代理商内部构建了世界模型。他们有特殊的愿望或目标,并制定计划,了解如何与世界互动,因为他们知道实现这些目标,从而制定意图。

或者,使用类比,电影中的Tron中的人物对他们周围的世界如何运作有一定的了解。他们不了解整个世界,他们可能会误解其中的一部分。但他们有欲望和目标,他们想出了进一步努力的计划。如果你看到Tron,我相信你会得到类比。

它对计算YET没有太大影响。但是,看,对计算产生影响的事情似乎需要几十年的时间。请参阅:OOP,GC,字节码编译。

答案 88 :(得分:3)

过去30年来处理器速度的大幅提升不容忽视。各种聪明的想法,如流水线和先发制人的分支,以及处理器设计的电子方面的改进,意味着今天的程序员可以更多地担心程序的设计和可维护性,而不用担心计算时钟周期。 / p>

答案 89 :(得分:3)

  1. 鼠标 - 有关于人类互动的帖子。对我来说,鼠标是人类互动的门户。没有它,我们仍然会打字而不是点击拖动,即使用我们的手指。

  2. GUI < - >

    完美赞美鼠标。我在一个环境中工作,其中as400是我们主要应用程序之一的后端。是的..有趣的东西,但它只是让我想起屏幕'比尔盖茨'正在电影'海盗硅谷'工作,即使这不是它的本质。对我来说,1和2是任何人,包括爷爷和祖母都可以使用电脑的原因。

  3. Excel /电子表格 - 有人之前曾提到这一点,但它的工作再次提到了。它非常友好,是非技术用户在单元格上进行计算时尝试简单编程概念的绝佳切入点。它被认为是在1980年之前出现的,但1980年后的版本是电子表格技术发展的时候。

  4. 互联网(当然) - 不确定人们如果没有它就编写代码!不要惹我重复,因为这属于每个清单。

  5. INTELLISENSE - 爱它爱它!!!!

答案 90 :(得分:3)

将不同编程范例成功集成到单个编程环境中。

这个(对我来说)的例子是Mozart/Oz programming system,它将功能,OO,逻辑,并发和分布式编程机制集成到一个连贯的整体中。还有其他一些例子。

答案 91 :(得分:3)

游戏中运动传感器的兴起消除了传统的游戏操纵杆,让用户非常接近游戏本身。这补充了我们不断变化的城市景观和生活方式,我们的身体活动有限。游戏的这种进步肯定会诱导至少一些身体活动,同时做一些人喜欢的事情。这绝对比在你的健身房做同样平凡的代表更好。

答案 92 :(得分:3)

我认为计算中的大多数概念大部分都在进行改进,但是有一些新的发展,特别是在分布式计算方面。

  1. 对失败和叛逃以及失败恢复的稳健性,即Paxos,Byzantine Fault Tolerance等。
  2. 我知道人们已经提到了P2P,并且P2P通信发生在70年代,但是在充分尊重的情况下,我认为它与当今普遍存在的性质不同,分布式哈希表,高效的动态广告特别是网络,最重要的是,匿名(ala Freenet,Tor)。
  3. 大部分工作都经过改进,虽然许多现代系统比60年代或更早时期首次描述的原始概念要好一些,但有些系统要好一些。

答案 93 :(得分:3)

我认为CDMA是1980年以后创建的一个重要而强大的新想法。

答案 94 :(得分:3)

c ++编程语言(1983) 模板元编程(1994)

答案 95 :(得分:3)

X.500和x.500系列标准(大约1988年)。虽然x.500标准的灵感来自于telco standards可追溯到几十年前,但它们的重要性在于它们为广泛使用LDAP / AD铺平了道路,而我们目前对x.509证书的煽动起了一些作用。

答案 96 :(得分:2)

一个非常难以回答的问题,因为除了可笑的改进硬件外,在此之后几乎没有什么东西可以成为显着的积极发明。尽管在20世纪80年代之前有许多重大发明只影响了人们,但现在因为它们在当时是不可行的。

的Heck。下降

答案 97 :(得分:2)

Enterprise Service Bus出现是一个相当新的'发明',当然它基于更老的技术。

答案 98 :(得分:2)

The Eclipse memory Analyzer

并且使用Lengauer-Tarjan dominator tree algorithm进行内存使用分析。

答案 99 :(得分:2)

数字音乐合成器。

我认为,整个音乐界都受到廉价复音合成器的影响。 早期的复音合成器,有效地使用多个模拟合成器(离散或使用CEM或SSM芯片)。它们既昂贵又非常适合。在80年代,第一个数字系统到了(我不确定,但我认为Kurzweil是第一个)。 今天,大多数都是数字的 - 即使模拟的也是“虚拟的日志”。

问候

编辑:oops - 我刚刚发现CMI fairlight是在1978年发明的。所以忘了上面 - 对不起。

答案 100 :(得分:2)

我没有资格在一般意义上回答这个问题,但仅限于计算机编程?不多。

为什么呢?我一直在考虑这个问题,我认为我们缺少两件事:历史感和客观判断我们所生产的一切的方法。在所有情况下都不是这样,但在一般情况下。

对于历史,我认为这只是在流行的写作或计算机科学课程中不够强调的东西。以语言功能为例。规范源可能是HOPL,但是程序员之间绝对不能识别能够标记时间点或GC或闭包等特征首次出现的语言。当然,随着时间的推移会有进展的知识:自Simula以来,OOP是如何变化的?将我们的历史感与其他领域(如政治科学或哲学)进行比较和对比。

至于判断,我们实际上未能找到客观的成功衡量标准。鉴于foobar,它以可衡量的方式改进了编程行为中的某些方面,其中foobar是任何设计模式,敏捷方法,TDD等等。我们甚至试图测量这个吗?我们甚至想要衡量什么?正确性,程序员生产力,代码易读性等?怎么样?软件工程应该真正回避这些问题,但我还没有看到它。

答案 101 :(得分:2)

我认为这些问题的部分问题在于它们要么没有得到很好的研究,要么正在尝试新的实施或某些已经看到重大“改进”的技术。然而,这不是重要的发明。例如,任何关于函数式编程或面向对象编程的讨论都会失败;自大多数SO参与者出生以来,大多数这些想法一直在流传。

答案 102 :(得分:2)

为了开始考虑这个问题,我需要一个“创新”意味着什么的模型。

我见过的最好的模型是The Technology Adoption Life Cycle。您可以通过此Wikipedia Article了解详情。

使用这个模型,我开始问自己......生命周期的哪个阶段是软件本身?我们可以将“软件”视为一种独特的技术,从机械一直回到巴贝奇,或者更准确地说,再到Lady Ada Lovelace。

但它至少在1951年左右开始处于非常早期的开创性阶段。这是计算机产品销售模型和构建该模型的大量单元方面计算机“商业化”的一年。我在考虑Univac卖给人口普查局的机器。

从1951年到1985年,软件创新众多。它们主要与将计算范围扩展到更广泛的领域有关。与此同时,大规模营销和大规模生产不断降低入门成本,直到Apple和I​​BM-PC将可编程设备变为普通设备。

在1980年到1985年之间的某个地方,我会说软件从Innovator的域名传递到“早期多数”域名。对不起,伙计们,但是这使得所有参加过MS-DOS,Mac,Windows,C ++和Java的人都是创新者而不是创新者。这并不妨碍您在自己的地盘和自己的项目中进行重大创新。这只意味着该领域本身已经从最早的阶段开始。

虽然互联网的前身自20世纪70年代以来一直存在,但直到Al Gore发明了互联网(对不起),大家才联想起来。在那个阶段,软件从早期多数转移到了大多数晚期。这种转变是微妙的,因为钟形曲线的顶部表明。并非每家商店都同时从早期多数转为晚期多数。

我认为软件还没有完全进入“落后”阶段,但我认为真正的创新者正在解决今天在不同方面取得进展的问题。

我能想到的两个方面是生物工程和信息家电。这两个领域都需要软件,但主要的推动力不是软件创新。它正在将软件应用于未知领域。可能还有很多我甚至都不知道的其他方面。

答案 103 :(得分:2)

作为Debian用户,我会投票支持包管理。它使OSX和Windows 7看起来像原始的业余玩具。

但是由于已经提到了包管理,我将投票给X.网络透明窗口服务器已经使很多应用程序成为可能。很高兴能够在同一个屏幕上无缝地召唤在不同计算机上运行的程序。

这在80年代后期更令人印象深刻。

答案 104 :(得分:2)

Bitcoin解决双重支出问题。它被用来创建一个分散的电子货币。名为Namecoin的变体使用相同的技术来构建分散的命名系统(类似于DNS)。

过去有人试图创建加密货币(这个想法并非新颖),但比特币似乎是第一个起飞的实施。其独特的P2P算法可以在不依赖任何可信任权限的情况下解决双重支出问题。

答案 105 :(得分:1)

受保护的内存。在受保护的内存之前,如果程序出错,您可以在任何地方开始执行代码 - 几乎总是挂起整个机器。没错,重启时间!

硬件成本低。我的第一台电脑在1978年花了500美元 - 当时是一笔巨款。降低成本将PC放在每张桌面上。

答案 106 :(得分:1)

Natural Language Processing。我第一次遇到这个问题是在20世纪90年代早期,赛门铁克的一个名为Q&A的程序允许您通过键入英文查询来查询数据库。到目前为止,我仍然对它印象深刻。

答案 107 :(得分:1)

StackOverFlow.com

答案 108 :(得分:1)

Paxos协议。很难描述它在互联网时代的价值。

答案 109 :(得分:1)

FPGA是1980年以后发明的重大突破。

答案 110 :(得分:0)

计算机图形学,特殊效果和3D动画

答案 111 :(得分:0)

十大软件工程创意/ picture

答案 112 :(得分:0)

我不知道是否有人已经回答,“机器学习”是一项快速发展的重大新发展。通过智能垃圾邮件过滤,股票市场预测,机器人等智能机器......

可能是,机器智能可能是下一件大事。

答案 113 :(得分:0)

让我们看一下连接机器(Massive Parallelism)。

无论如何,自从他发明了一切以来,整个问题似乎都是艾伦凯的自我效应。

答案 114 :(得分:0)

自1980年以来,量子计算的数学已经存在,但硬件尚未到来,并且在未来许多年内在物理和经济上都是不可行的。

答案 115 :(得分:0)

个人电脑

在过去三十年中,计算机最重要的部分是每个人现在都是其中的一部分。家用电脑的使用时间仅限于1977年左右,广泛采用直至80年代。现在,幼儿园,高级中心和隔壁的邻居,你将拥有一个。

答案 116 :(得分:0)

互联网。

就是这样。

答案 117 :(得分:0)

我不得不说自1980年以来计算领域最大的发明是摩尔定律。在20世纪60年代和70年代创造了大量非常酷,创新的东西 - 但它们是一次性的昂贵的一次性项目。大多数这些项目都迷失在时间的迷雾中。

今天,这个很酷的创新项目获得了几轮资金,并且可以在6个月左右的时间内在每个人的桌面或网络浏览器上使用。

如果那不是创新,那是什么?

答案 118 :(得分:0)

我会说Linux和更糟糕的更好的哲学的具体化,但你可以争辩说那些更老。 所以我要说:量子,化学,肽,dna和膜计算,(重新)非临时方式和自动化方面,通用编程,某些类型的类型推断,某些类型的测试,

我们之所以没有新想法:sw专利(这来自60年代后期......),企业和教育。

答案 119 :(得分:0)

个人广播通讯

Facebook,Twitter,Buzz,Qaiku ......实施方式各不相同,侧重于不同方面 - 管理受众,简洁,讨论。具体的服务来来去去,但新的沟通理念仍然存在。博客当然是从这开始的,但是新的服务使得沟通与社会联系起来,这是一个本质的区别。

不确定这是否完全属于计算的主题,但它是重要的,只有通过计算和网络才能实现。

答案 120 :(得分:0)

Open Croquet http://www.opencroquet.org - 一种基于Smalltalk的Squeak 3D环境,允许多个用户从内部进行交互和编程环境。它拥有自己的对象复制协议,可以在互联网上高效,可扩展地共享环境。 **这很难描述,因为没有其他类似的东西......

1)我提出这个是因为当我试图向其他人解释它是什么时,我发现他们希望我将它与其他东西进行比较......我仍然没有找到任何类似的东西,尽管有其他系统中存在的许多元素(例如Smalltalk,Open GL,etoys,虚拟世界,远程协作,面向对象的复制架构)整体似乎远远超过了部分......

2)与此处提及的许多技术不同,它尚未定居为广泛开发的商业利基......

这两点都是早期技术的标志。

我怀疑当Alan Kay开始研究时,他可能一开始就在考虑这个问题的主题。

http://www.onlisareinsradar.com/archives/001281.php

答案 121 :(得分:0)

快速聚类算法(数据点数量为O(n log n)),例如DBScan (from 1996)似乎都是从1980年以后开始的。

这些已成为数据挖掘技术普遍发展的一部分。

与此相比,在寻线方面缺乏进展,其中像Hough这样的低缩放技术似乎仍然代表了最先进的技术。

答案 122 :(得分:-1)

DOS。我不是DOS粉丝,但感谢DOS和IBM-PC计算机是他们今天的(无论好坏)。

答案 123 :(得分:-1)

20年前:面向对象编程 - 更好地处理软件复杂性。

现在:云计算 - 更好地处理硬件复杂性。

未来:陈述性的东西,但还需要20年。

答案 124 :(得分:-1)

如果我们真的想以小组的形式回答这个问题 不幸的是,我相信我们需要的不仅仅是一串随意好用的帖子!
我知道,这听起来很无聊,经常做事情就是!

我们在计算领域写下强大的想法列表
也许我们应该定义几个类别来区分每个类别,因为视频会议在某种程度上不适合面向对象的编程 按类别查看想法可以更轻松地生成它们而无需冗余。 如果量子计算不能远离飞行汽车,那么在传送方面就太容易了。

尝试将每个人都归为日期
这将解决1980年之前/之后的问题,并将关于每个想法的辩论局限于自己的想法。 挖掘最早的参考,首先已知的实现等等将是有趣的 此外,这将允许像我这样在1980年2岁的人有更好的主意 1980年常见的编程知识是什么(当时没有什么比那里更好)

尝试将每个人的实施状态归结为
好吧,有些想法是1850年的科幻小说,1970年的早期发展和1990年的重大改进突破 一些想法刚刚开始出现。有些人几乎被遗忘了。

可能维基的东西是个好主意 我觉得如果组织有点,这真的可以到达某个地方 我没有检查,但也许整个事情已经存在于网上(我通常会发现,如果你想某事,有人已经做过了)。

您怎么看?

干杯!

答案 125 :(得分:-1)

也许从客户端服务器转移到点对点。我讨厌整个云/ SAS事情的原因之一是它是返回客户端/服务器。

我的口袋里有一个VAX,你想让我假装它是VT-100吗?

答案 126 :(得分:-3)

Teevee tube box

答案 127 :(得分:-8)

我喜欢打电话给互联网

答案 128 :(得分:-8)

软件专利