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

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

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

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


当前回答

量子计算的数学在1980年之前就已经出现了,但硬件还没有出现,而且在未来许多年里可能在物理和经济上都不可行。

其他回答

IP多播(1991)和Van Jacobsen的传播网络(2006)是1989年以来最大的发明。

在主流计算中,有一件事没有改变,那就是分级文件系统。在我看来,这是一种耻辱,因为在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的流行保证了分层文件系统的主导地位。

传感器网络:非常微小的(纳米级)计算机形成自组织p2p网络并传输“传感”信息。

3D打印:物理对象的《星际迷航》复制器(还没有Early Grey茶)。

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

如果我们作为一个团体认真地回答这个问题。 不幸的是,我相信我们需要的不仅仅是一串随机的善意的帖子! 我知道,这听起来很无聊,但经常把事情做完才是!

We Write a list of powerful ideas in the area of computing Maybe we should define a few categories to separate each one because videoconference somehow does not fit well with object oriented programming. Seeing ideas by categories makes it easier to generate them without redundancy. It's too easy to sidetrack in teleportation if quantum computing is not kept away from flying cars. Try to attribute each of them a date This will settle the before/after 1980 and restrict debate about each idea to its own. It will be fun to dig for earliest reference, first known implementation, etc. Plus this will allow people like me who were 2 years old in 1980 to have a better idea of what was common programming knowledge in 1980 (nothing beats being there at the time) Try to attribute each of them the current state of their implementation Ok, some idea were sci-fi in 1850, with early development in the 1970 and serious improvement breakthrough in the 1990. Some ideas are just starting to get around. Some are almost forgotten. Probably the wiki thing is a good idea. I think this could really get somewhere if slightly organized. I did not check, but maybe this whole thing already exist already on the net (I usually find that if you think about something, someone already did it). What do you think ? Cheers !

十大软件工程理念/图片