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

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

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

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


当前回答

20年前:面向对象编程——更好地处理软件复杂性。

现在:云计算——为了更好地处理硬件复杂性。

未来:说明性的东西,但它还需要20年。

其他回答

即时消息已经出现很长时间了(60年中后期),但是IRC在1988年之前还没有出现。

除此之外,视频通讯(比如,Windows Live Messenger,或Skype,或……)确实改变了我们的沟通方式;)而且是最近才出现的。


<修改> (见VideoConferencing: 1968, alt text http://wpcontent.answers.com/wikipedia/en/thumb/6/64/On_Line_System_Videoconferencing_FJCC_1968.jpg/180px-On_Line_System_Videoconferencing_FJCC_1968.jpg,正如Alan Kay自己在评论中指出的那样:

请再次查看恩格尔巴特在1968年演示的内容(包括实时视频聊天和屏幕共享)。低,猜测真的没有查东西管用。这就是为什么大多数人对事物的发明时间做不充分的假设。)

把它放在我的脸上;),这是理所当然的。

注意:那个时代的“网络摄像头”(视频设置)并不是为普通的客厅设计的;)

> < /修正


[…继续回答:]

网络摄像头替代文本http://wpcontent.answers.com/wikipedia/commons/thumb/c/c5/Logitech_Quickcam_Pro_4000.jpg/180px-Logitech_Quickcam_Pro_4000.jpg的推广也有帮助(始于1991年,第一个这样的摄像头,称为CoffeeCam,是针对剑桥大学计算机科学系的特洛伊房间咖啡壶)。

所以:80后:2 / 3:IRC和网络摄像头。

设计模式使计算机科学更接近计算机工程。 GPS和互联网地址查找基于位置的交互。 面向服务的体系结构。

第一台真正的多媒体个人电脑,Amiga:第一台32位抢先处理多任务的个人电脑,第一台硬件图形加速,第一台多声道声音,在许多方面,它比现在流行的多核、多兆赫的Windows盒子机更有用、更强大。

Damas-Milner type inference (often called Hindley-Milner type inference) was published in 1983 and has been the basis of every sophisticated static type system since. It was a genuinely new idea in programming languages (admitted based on ideas published in the 1970s, but not made practical until after 1980). In terms of importance I put it up with Self and the techniques used to implement Self; in terms of influence it has no peer. (The rest of the OO world is still doing variations on Smalltalk or Simula.)

类型推断的变化仍在上演;我最喜欢的变体是Wadler和Blott的解决重载的类型类机制,后来发现它为类型级别的编程提供了非常强大的机制。这个故事的结局还在书写中。

我认为没有什么重要的东西被发明出来。但自80年代以来,人们对软件的看法发生了很大变化。那时有更多的理论家参与其中,现在你在一个程序员论坛上问这个问题。

当时的大多数想法都没有得到实施,或者即使实施了,它们也没有任何真正的重要性,因为当时的软件行业还不存在,市场营销、人力资源、开发阶段或alpha版本也不存在:)。

Another reason for this lack of inventions is the fact that most people use Windows:) dont get me wrong, i do hate M$, but look at it this way: you have a perfectly working interface, with nothing new to add to it, maybe just some new colored buttons. Its also closed enough so you wont be able to to anything with it without breaking it. Thats why i prefer open apps, this way you get more "open" people, to whom yo can actually talk, ask then questions, propose new ideeas that actually gets implemented, or at least put on an open todo-list, thus you get some kind of "evolution". You dont really see anything new because you are stuck with the same basic interface "invented" lots of years ago... did anyone actually tried ION window-manager in a production environment? It has a new kind of interface, and actually lets you do things faster, event it it looks quirky

M$, Adobe..you name it,holds lots of patents so you wont be able to base your work on them, or derivatives(you also wont know what kind of undeveloped tehnologies they hold). Look at MP3 and GIF as examples( i belive that they are both free formats now, but they are also kinda dead..) MP3 is the 'king' of audio evend if there are few algorithms out there much better that it..but didnt get enough traction because they weren't pushed on the consumer market. The GIF... come on, 256 colors??? From this point of voew i'm curios how many people from this thread are working on something "open" that will get to be reused in some other projects, and how many on "closed", protected by NDA's projects?

即使这听起来有点像“免费的威利”,但在80年代,软件是免费的,所有东西都有文档,所有硬件都更简单,更容易使用……同时也更加有限,所以人们并没有浪费时间去执行3d游戏或网页,而是致力于真正的算法。