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

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

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

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


当前回答

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年,它们相当强大。

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

其他回答

我认为计算中的大多数概念都在不断改进,但也有一些新的发展,特别是在分布式计算方面。

对故障和缺陷的鲁棒性,以及故障恢复,即。Paxos,拜占庭容错等。 我知道人们提到过P2P, P2P通信发生在70年代,但恕我直言,我不认为它具有与今天相同的性质,具有分布式哈希表,高效的动态自组织网络,最重要的是,匿名性(例如Freenet, Tor)。

大多数工作都经过了改进,虽然许多现代系统比60年代或更早时候首次描述的原始概念好不了多少,但有些系统好了几个数量级。

我认为我们需要真正的新想法 在计算机的大部分领域,我 想知道有什么重要的吗 以及已经完成的强有力的任务 最近。如果我们真的找不到 他们,那么我们应该问“为什么? “我们该怎么办?”

在我看来,我们在计算领域没有那么多新想法,因为我们在很大程度上不需要它们。我们一直在挖掘旧的想法,并从中获得了很多东西,比如cpu速度的显著增长。

当我们因为“井干了”而需要新想法时,我们就会明白需求是发明之母。

声明性编程。

1979年,“计算机程序”势在必行。程序员应该指导编译器做什么和怎么做。(N1)

今天,ASP。NET WebForms和WPF程序员经常在不知道或不关心它将如何实现的情况下编写代码。维基百科还有其他不那么主流的例子。此外,所有sgml派生的“标记”语言都是声明性的,我怀疑1979年的许多程序员是否能预测到它们在30年后的重要性或普遍性。

尽管声明式编程的概念在1980年之前就存在了(参见这篇1975年的论文),但它的发明是在1985年Caml的引入(有争议)或1990年Haskell的引入(争议较少)时出现的。从那时起,声明式编程越来越受欢迎。而且,当大规模多核处理器最终到来时,我们都将成为声明式程序员。

-- 注: 我不能直接证明这一点,因为1979年我还是个胎儿。 从其他答案来看,人们似乎混淆了概念和发明。达·芬奇构想了直升机,但他没有发明它。这个问题是关于计算机发明的。 请不要在评论中提到Prolog (rel. 1975),除非你真的用它开发了一个应用程序。

多代理系统。

你可以回到分布式人工智能的根源,我认为仍然可以安全地呆在80年代。

多智能体系统有很多组成部分,有很多研究涉及语言行为或合作,所以很难指出并说“看,这里,这是不同的,创新的和重要的!”但我还是会试试的。: -)

我认为信念-欲望-意图模型尤其值得注意。智能体在内部构建了世界的模型。他们有特定的愿望或目标,并制定计划,如何与他们所知道的世界互动,以实现这些目标,从而形成意图。

或者打个比方,电影《创》(Tron)中的角色对他们周围的世界是如何运作的有一定的了解。他们不了解整个世界,他们可能会对世界的某些部分产生误解。但他们有愿望和目标,他们提出了进一步实现目标的计划。如果你看过《创》,我相信你会有类似的感觉。

它还没有对计算机产生太大的影响。但是,你看,那些对计算机产生影响的东西似乎需要几十年的时间。参见:OOP, GC,字节码编译。

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.