这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
当前回答
自1980年以来,关于社会计算的想法已经取得了进展。油井工程始于1985年。虽然我确信以前有在线社区,但我相信该领域的一些真正的见解发生在1980年之后。社会社区的不利动态方面及其在软件系统上的交互很像塔科马海峡大桥的灾难。
我认为Clay Shirky在该领域的工作阐明了这些影响以及如何减轻它们。我想说,社交软件洞察力的有趣的现实世界的例子包括reCAPTCHA和维基百科,其中重要的有价值的工作是由软件调解的参与者完成的。
其他回答
声明性编程。
1979年,“计算机程序”势在必行。程序员应该指导编译器做什么和怎么做。(N1)
今天,ASP。NET WebForms和WPF程序员经常在不知道或不关心它将如何实现的情况下编写代码。维基百科还有其他不那么主流的例子。此外,所有sgml派生的“标记”语言都是声明性的,我怀疑1979年的许多程序员是否能预测到它们在30年后的重要性或普遍性。
尽管声明式编程的概念在1980年之前就存在了(参见这篇1975年的论文),但它的发明是在1985年Caml的引入(有争议)或1990年Haskell的引入(争议较少)时出现的。从那时起,声明式编程越来越受欢迎。而且,当大规模多核处理器最终到来时,我们都将成为声明式程序员。
-- 注: 我不能直接证明这一点,因为1979年我还是个胎儿。 从其他答案来看,人们似乎混淆了概念和发明。达·芬奇构想了直升机,但他没有发明它。这个问题是关于计算机发明的。 请不要在评论中提到Prolog (rel. 1975),除非你真的用它开发了一个应用程序。
现代阴影语言和现代gpu的流行。
GPU也是一个低成本的并行超级计算机,拥有CUDA和OpenCL等工具,可以快速编写高级并行代码。感谢所有在那里压低这些越来越令人印象深刻的硬件奇迹价格的玩家。在接下来的五年里,我希望每台售出的新电脑(iphone也一样)都能基本具备运行大量并行代码的能力,就像24位彩色或32位保护模式一样。
数字音乐合成器。
我认为,整个音乐场景都受到了廉价复调合成器的影响。 早期的复调合成器是有效地多个模拟合成器(离散或使用CEM或SSM芯片)。它们都很昂贵,而且数量有限。在80年代,第一个数字系统出现了(我不确定,但我认为Kurzweil是第一个)。 今天,大多数都是数字的——甚至模拟的也是典型的“虚拟模拟”。
问候
编辑:哎呀-我刚刚发现CMI灯管是在1978年发明的。忘掉上面的,抱歉。
获取海量数据。
与上世纪80年代相比,我们现在所拥有的数据的规模和规模是巨大的。为了能够存储和显示这些东西,我们不得不对硬件和软件进行大量更改。总有一天,我们会真正学会如何筛选和挖掘有用的东西。有一天。
保罗。
包管理和分布式修订控制。
这些软件开发和分发方式的模式是最近才出现的,并且刚刚开始产生影响。
Ian Murdock称包管理是“Linux给业界带来的最大进步”。他会的,但他说得有道理。自1980年以来,安装软件的方式已经发生了重大变化,但大多数计算机用户仍然没有经历过这种变化。
Joel和Jeff在播客#36中与Eric Sink讨论了版本控制(或版本控制,或源代码控制)。似乎大多数开发人员还没有跟上集中式系统的步伐,DVCS被广泛认为是神秘和不必要的。
来自播客36的文字记录:
0:06:37 阿特伍德:…如果你假设——这是一个很大的假设——大多数开发人员都掌握了基本的源代码控制——坦白地说,我发现这是不正确的…… Spolsky:没有。他们中的大多数人,即使他们知道,也只是签入和签出,但分支和合并——这让他们感到困惑。