这个问题来自于对过去50年左右计算领域各种进展的评论。

其他一些与会者请我把这个问题作为一个问题向整个论坛提出。

这里的基本思想不是抨击事物的现状,而是试图理解提出基本新思想和原则的过程。

我认为我们在大多数计算领域都需要真正的新想法,我想知道最近已经完成的任何重要而有力的想法。如果我们真的找不到他们,那么我们应该问“为什么?”和“我们应该做什么?”


当前回答

在主流计算中,有一件事没有改变,那就是分级文件系统。在我看来,这是一种耻辱,因为在20世纪80年代末和90年代,一些工作已经完成,以设计更适合现代面向对象操作系统的新型文件系统——那些从头开始就是面向对象的操作系统。

OO操作系统倾向于具有可扩展且灵活的平面对象存储。我认为EROS项目就是围绕这个想法建立的;PenPoint操作系统是20世纪90年代的面向对象操作系统;Amazon S3当然是当代的平面对象存储。

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

The entire disk was essentially swap space. Objects exist in memory, get paged out when they are not needed, and brought back in when they are. There's no need for a hierarchical filesystem that's separate from virtual memory. Programs are "always running," in a sense. A flat file/object store allows content to be indexed and searched, rather than forcing the user to decide -- ahead of time -- where the content will live in relation to other content and what its name shall be. A hierarchical system could be built on top of the flat storage, but it's not required.

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

其他回答

基础设施的改变使家庭和办公室都能接入互联网。

记录并接受了从W3C到api的标准

除此之外,我们所认为的大多数新事物都比你想象的要久远得多(例如GUI, OOP)。

回答“为什么新思想会消亡”和“如何应对”这两个问题?

I suspect a lot of the lack of progress is due to the massive influx of capital and entrenched wealth in the industry. Sounds counterintuitive, but I think it's become conventional wisdom that any new idea gets one shot; if it doesn't make it at the first try, it can't come back. It gets bought by someone with entrenched interests, or just FAILs, and the energy is gone. A couple examples are tablet computers, and integrated office software. The Newton and several others had real potential, but ended up (through competitive attrition and bad judgment) squandering their birthrights, killing whole categories. (I was especially fond of Ashton Tate's Framework; but I'm still stuck with Word and Excel).

怎么办呢?首先想到的是Wm。莎士比亚的建议:“让我们杀了所有的律师。”但恐怕他们现在装备太精良了。实际上,我认为最好的选择是找到某种开源计划。它们似乎比其他选择更好地保持可访问性和增量改进。但是这个行业已经变得足够大了,所以某种有机的合作机制是必要的。

I also think that there's a dynamic that says that the entrenched interests (especially platforms) require a substantial amount of change - churn - to justify continuing revenue streams; and this absorbs a lot of creative energy that could have been spent in better ways. Look how much time we spend treading water with the newest iteration from Microsoft or Sun or Linux or Firefox, making changes to systems that for the most part work fine already. It's not because they are evil, it's just built into the industry. There's no such thing as Stable Equilibrium; all the feedback mechanisms are positive, favoring change over stability. (Did you ever see a feature withdrawn, or a change retracted?)

关于SO的另一个讨论线索是臭鼬工厂综合症(参考:Geoffrey Moore):在大型组织中,真正的创新几乎总是(90%以上)出现在自发出现的未经授权的项目中,这些项目完全由个人或小团队的主动性推动(通常会受到正式的管理等级的反对)。所以:质疑权威,反抗体制。

有一件事让我吃惊,那就是简陋的电子表格。非程序员的人用一个简单的公式网格就可以为现实世界的问题构建狂野而奇妙的解决方案。在桌面应用程序中复制他们的努力通常需要比编写电子表格多10到100倍的时间,最终的应用程序通常更难使用,充满bug !

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

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

编辑:我刚查过。VisiCalc发布于1979年——让我们假设它是1980年后的发明。

Edit2:似乎艾伦已经注意到了电子表格——如果让他来这个论坛的问题是正确的!

I'd say the biggest trend is an ever increasing lack of location dependence and pervasiveness. An interesting philosophical exercise these days is to count the computers in you immediate area. They're everywhere desktops, keyboards, microwaves, radios, televisions, cell phones etc... My grandmother computer is illiterate however her life is as infested with small computers as everyone else's. She can make a call to me from the middle of an empty field. I can then answer that call zipping down the highway.