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

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

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

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


当前回答

bt。它完全颠覆了以前看似显而易见的不可改变的规则——一个人通过互联网下载一个文件所需的时间与下载该文件的人数成正比。它还解决了以前的点对点解决方案的缺陷,特别是围绕着“吸血”,以一种有机的解决方案本身的方式。

BitTorrent优雅地将通常的缺点——许多用户试图同时下载一个文件——转变为优点,将文件在地理位置上分发,这是下载过程的自然组成部分。它优化两个对等点之间带宽使用的策略不鼓励作为副作用的“吸血”——强制节流符合所有参与者的最佳利益。

这是一种一旦被别人发明出来,即使不明显,也似乎很简单的想法。

其他回答

更好的用户界面。

今天的用户界面仍然很糟糕。我指的不是小的方面,而是大的、基本的方面。我不禁注意到,即使是最好的程序也仍然有一些接口,这些接口要么极其复杂,要么需要以其他方式进行大量的抽象思考,而且无法达到传统的非软件工具的易用性。

诚然,这是由于软件可以比传统工具做更多的事情。但这不是接受现状的理由。此外,大多数软件都做得不好。

In general, applications still lack a certain “just works” feeling are too much oriented by what can be done, rather than what should be done. One point that has been raised time and again, and that is still not solved, is the point of saving. Applications crash, destroying hours of work. I have the habit of pressing Ctrl+S every few seconds (of course, this no longer works in web applications). Why do I have to do this? It's mind-numbingly stupid. This is clearly a task for automation. Of course, the application also has to save a diff for every modification I make (basically an infinite undo list) in case I make an error.

解决这个问题其实并不难。在每个应用程序中都很难实现它,因为没有好的API可以做到这一点。编程工具和库必须显著改进,才能在所有平台和程序上轻松实现这些工作,适用于所有具有任意备份存储且不需要用户交互的文件格式。但在我们最终开始编写“好的”应用程序而不仅仅是足够的应用程序之前,这是必要的一步。

I believe that Apple currently approximates the “just works” feeling best in some regards. Take for example their newest version of iPhoto which features a face recognition that automatically groups photos by people appearing in them. That is a classical task that the user does not want to do manually and doesn't understand why the computer doesn't do it automatically. And even iPhoto is still a very long way from a good UI, since said feature still requires ultimate confirmation by the user (for each photo!), since the face recognition engine isn't perfect.

万维网已经被告知了,但更基本的,我会说“DNS”。 似乎它是在1983年发明的(http://en.wikipedia.org/wiki/Domain_Name_System),恕我直言,我们可以认为它是互联网协议的发明和传播到世界各地的能力之间的强制性联系,现在被称为网络。

还是在“网络”部分,我要加上WIFI。它是在90年代发明的(但我同意它不完全是“计算”,而更多地与硬件有关)。

在更严格的“算法”部分,我想到了turbocodes(1993年);有人说它只是接近了香农信号理论所定义的极限,但这种论点难道不会否定所有其他对“一切都已经在洛夫莱斯、巴贝奇和图灵的作品中萌芽”的回答吗?

在密码学领域,我想加上P.Zimmermann(1991年)的PGP程序,它为公民带来了一个相当健壮的(当时)免费加密程序,并有助于动摇政府对加密的立场。事实上,我认为这是密码学“自由化”的因素之一,这是发展电子商务的前提。

低成本/家用电脑。直到20世纪80年代初,人们(至少在布莱蒂)才真正听说过这件事。如果没有家用计算机,有多少人会把计算机作为一种职业?甚至把它当作一种爱好?

就我自己而言,如果我的父母没有在1982/1983年得到Clive Sincliar的简陋的橡胶键盘ZX Spectrum,我现在可能不会在这里。这不仅仅是演讲:C64、Vic-20、Acorn Electron、BBC A/B/Master、Oric-1、Dragon-32等等都为家用电脑市场注入了活力,并使每一个拥有一台电脑的8岁男孩和女孩都成为了程序员。

如果这不是计算和编程方面的革命,我就不知道什么是……!

另外一个好奇的问题是:在这个网站上,业余程序员和职业程序员的区别是什么?我知道这些数据没有经过整理,但可能会很有趣。

互联网。

就是这样。

个人广播通信

Facebook、Twitter、Buzz、柴酷……实现是不同的,侧重于不同的方面-管理受众,简洁性,讨论。特定的服务来来去去,但新的通信概念仍然存在。博客当然是这一切的开端,但新的服务使交流变得具有社会性,这是一个本质的区别。

虽然不太确定这是否属于计算的范畴,但这是很重要的,只有通过计算和网络才能实现。