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

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

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

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


当前回答

不确定1980年的情况,但人工智能社区几十年来一直是一个创意生成器,他们仍然在做。

其他回答

虚拟化? 像viralbox OSE或VMWare这样的应用程序为我节省了很多时间。

我喜欢把它叫做互联网

包管理和分布式修订控制。

这些软件开发和分发方式的模式是最近才出现的,并且刚刚开始产生影响。

Ian Murdock称包管理是“Linux给业界带来的最大进步”。他会的,但他说得有道理。自1980年以来,安装软件的方式已经发生了重大变化,但大多数计算机用户仍然没有经历过这种变化。

Joel和Jeff在播客#36中与Eric Sink讨论了版本控制(或版本控制,或源代码控制)。似乎大多数开发人员还没有跟上集中式系统的步伐,DVCS被广泛认为是神秘和不必要的。

来自播客36的文字记录:

0:06:37 阿特伍德:…如果你假设——这是一个很大的假设——大多数开发人员都掌握了基本的源代码控制——坦白地说,我发现这是不正确的…… Spolsky:没有。他们中的大多数人,即使他们知道,也只是签入和签出,但分支和合并——这让他们感到困惑。

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

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

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

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