这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
这个问题来自于对过去50年左右计算领域各种进展的评论。
其他一些与会者请我把这个问题作为一个问题向整个论坛提出。
这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。
我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”
当前回答
标签,信息分类的方式。是的,就是每个问题下面的小方框。
令人惊讶的是,标签发明花了大约30年的时间。我们使用了目录和目录;我们使用了为印刷书籍优化的东西。
然而,30年比人们意识到印刷书籍可以用更小的格式的时间短得多。人们可以把书放在手里。
我认为核心CS玩家低估了标签概念。所有的研究都集中在自然语言处理(自顶向下的方法)。但是标签是第一种计算机和人类都能很好理解的语言。这是一种自底向上的方法,使计算机使用自然语言。
其他回答
低成本/家用电脑。直到20世纪80年代初,人们(至少在布莱蒂)才真正听说过这件事。如果没有家用计算机,有多少人会把计算机作为一种职业?甚至把它当作一种爱好?
就我自己而言,如果我的父母没有在1982/1983年得到Clive Sincliar的简陋的橡胶键盘ZX Spectrum,我现在可能不会在这里。这不仅仅是演讲:C64、Vic-20、Acorn Electron、BBC A/B/Master、Oric-1、Dragon-32等等都为家用电脑市场注入了活力,并使每一个拥有一台电脑的8岁男孩和女孩都成为了程序员。
如果这不是计算和编程方面的革命,我就不知道什么是……!
另外一个好奇的问题是:在这个网站上,业余程序员和职业程序员的区别是什么?我知道这些数据没有经过整理,但可能会很有趣。
包管理和分布式修订控制。
这些软件开发和分发方式的模式是最近才出现的,并且刚刚开始产生影响。
Ian Murdock称包管理是“Linux给业界带来的最大进步”。他会的,但他说得有道理。自1980年以来,安装软件的方式已经发生了重大变化,但大多数计算机用户仍然没有经历过这种变化。
Joel和Jeff在播客#36中与Eric Sink讨论了版本控制(或版本控制,或源代码控制)。似乎大多数开发人员还没有跟上集中式系统的步伐,DVCS被广泛认为是神秘和不必要的。
来自播客36的文字记录:
0:06:37 阿特伍德:…如果你假设——这是一个很大的假设——大多数开发人员都掌握了基本的源代码控制——坦白地说,我发现这是不正确的…… Spolsky:没有。他们中的大多数人,即使他们知道,也只是签入和签出,但分支和合并——这让他们感到困惑。
在人机交互中使用物理学提供了另一种可理解的隐喻。这与手势和触觉相结合,很可能会取代70年代发明的、从80年代中后期开始普遍使用的当前常见GUI隐喻。
1980年的计算能力还不足以让这成为可能。我相信游戏可能引领了这一方向。iPod Touch/iPhone中的列表滚动交互便是一个很好的例子。交互机制依赖于动量和摩擦如何在现实世界中工作的直觉,以提供滚动项目列表的简单方法,而可用性依赖于导致滚动的物理手势。
上世纪八十年代初,施乐帕洛阿尔托研究中心对计算机蠕虫进行了研究。
摘自John Shoch和Jon Hupp的“蠕虫”程序——分布式计算的早期经验”(ACM通讯,1982年3月,第25卷第3期,172-180页,1982年3月):
In The Shockwave Rider, J. Brunner developed the notion of an omnipotent "tapeworm" program running loose through a network of computers - an idea which may seem rather disturbing, but which is also quite beyond our current capabilities. The basic model, however, remains a very provocative one: a program or a computation that can move from machine to machine, harnessing resources as needed, and replicating itself when necessary. In a similar vein, we once described a computational model based upon the classic science-fiction film, The Blob: a program that started out running in one machine, but as its appetite for computing cycles grew, it could reach out, find unused machines, and grow to encompass those resources. In the middle of the night, such a program could mobilize hundreds of machines in one building; in the morning, as users reclaimed their machines, the "blob" would have to retreat in an orderly manner, gathering up the intermediate results of its computation. Holed up in one or two machines during the day, the program could emerge again later as resources became available, again expanding the computation. (This affinity for nighttime exploration led one researcher to describe these as "vampire programs.")
引用艾伦·凯的话:“预测未来最好的方法就是创造未来。”
DOS。我不是DOS的粉丝,但多亏了DOS和IBM-PC电脑才有了今天的样子(不管是好是坏)。