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

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

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

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


当前回答

光学计算。似乎它应该存在更长的时间,但我目前找不到任何早于1982年的参考资料(相关技术,光学晶体管,直到1986年才出现)。

其他回答

MPI和PVM并行化。

我认为在过去的50年里,一个非常重要的计算机发明是谷歌。如果没有一个好的搜索工具,互联网就毫无意义。搜索引擎的出现彻底改变了互联网,使它能够被小人物货币化。

HTM系统(分层时态记忆)。

人工智能的一种新方法,由杰夫·霍金斯通过《论智能》一书发起。

现在是一家名为Numenta的公司,通过开发“真正的”人工智能来测试这些想法,并邀请社区通过sdk使用该系统来参与。

它更多的是从头开始构建机器智能,而不是试图模仿人类的推理。

自1980年以来,关于社会计算的想法已经取得了进展。油井工程始于1985年。虽然我确信以前有在线社区,但我相信该领域的一些真正的见解发生在1980年之后。社会社区的不利动态方面及其在软件系统上的交互很像塔科马海峡大桥的灾难。

我认为Clay Shirky在该领域的工作阐明了这些影响以及如何减轻它们。我想说,社交软件洞察力的有趣的现实世界的例子包括reCAPTCHA和维基百科,其中重要的有价值的工作是由软件调解的参与者完成的。

我没有资格在一般意义上回答这个问题,但仅限于计算机编程?并不多。

为什么?我思考这个问题已经有一段时间了,我认为我们缺少两样东西:历史感和客观评价我们所创造的一切的方法。并非所有情况都是这样,但大体上是这样。

For history, I think it's just something not emphasized enough in popular writing or computer science programs. Take language features, for example. A canonical source might be HOPL, but it's definitely not common knowledge among programmers to be able to mark the point in time or in which language a feature like GC or closures first appeared. And of course after that there's knowledge of progression over time: how has OOP changed since Simula? Compare and contrast our sense of history with that of other fields like maybe political science or philosophy.

至于判断,这确实是我们寻求成功的客观衡量标准的失败。给定foobar,它以什么可衡量的方式改进了编程行为中的某些方面,其中foobar是任何设计模式,敏捷方法,TDD等等。我们有没有试过测量这个?我们到底想测量什么?正确性,程序员的生产力,代码的易读性等等?如何?软件工程确实应该着手解决这些问题,但我还没有看到。