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

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

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

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


当前回答

软件:

虚拟化和仿真 P2P数据传输 社区驱动的项目,如维基百科、SETI@home…… 网络爬行和网络搜索引擎,即索引信息分布在世界各地

硬件:

模块化PC 电子纸

其他回答

我认为这些答案的部分问题是,它们要么没有得到充分的研究,要么是在尝试一种新的实现或一些已经看到重大“改进”的技术。然而,这并不是一项重大发明。例如,任何关于函数式编程或面向对象编程的讨论都是失败的;这些想法在大多数SO参与者出生之前就已经流传了。

在社区支持下,翻译软件可以进行手动更正和建议,随后由人工智能机器人形成模式,最终区分并正确预测不同翻译和上下文中的歧义。

虽然谷歌Translate可能不是野兽,但它是一个系统的母亲,或者可能是等待开发的祖母。

如果你仔细想想,文本语言实际上是大脑的输入,眼睛看到文本并将图像发送到大脑,然后大脑将其转化为理解。

虽然它真正的交流(尤其是人与人之间的交流)是一个高级的话题,但基本的是输入(带上下文)->翻译->理解。

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

一旦完成,我们就可以进行实时电话翻译之类的工作了。

相反,月复一月,我们最大的智力资产被用于其他更重要的项目,比如太空研究、流星探测,或者试图证明《圣经》是错的(打哈欠)。

我们把更多的时间花在基本的实际交流上怎么样?

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

Graphical User Interface. Fast processing. Large memory (I paid $200.00 for 16k in 1980). Small sizes - cell phones, pocket pc's, iPhones, Netbooks. Large storage capacities. (I've gone from carrying a large 90k floppy to an 8 gig usb thumb drive. Multiple processors. (Almost all my computers have more than one now, software struggles to keep them busy). Standard interfaces (like USB) to easily attach hardware peripherals. Multiple Touch displays. Network connectivity - leading to the mid 90's internet explosion. IDE's with Intellisense and incremental compiling.

虽然硬件有了巨大的进步,但软件行业一直在努力跟上。我们比1980年领先了几光年,但大多数改进都是改进,而不是发明。自1980年以来,我们一直忙于应用技术进步,而不是发明创造。就其本身而言,这些渐进式的发明大多不重要或不强大,但当你回顾过去29年,它们相当强大。

我们可能需要接受渐进式的改进并引导它们。我相信真正原创的想法可能会来自很少接触计算机的人,而且他们越来越难找到。

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

“奇点”,以及所有类似的项目,即用托管代码开发操作系统。