The Singularity Cometh? Or not?
October 8, 2008 1 Comment
There is much talk these days about the coming Singularity. We are about 37 years away, according to Ray Kurzweil. For some, the prospect is exhilarating – enhanced mental capacity, ability to experience fantasy simulations, immortality. For others, the specter of the Singularity is frightening – AI’s run amok, all Terminator-like. Then there are those who question the entire idea. A lively debate on our forum triggered this post as we contrasted the position of transhumanists (aka cybernetic totalists) and singularity-skeptics.
For example, Jaron Lanier’s “One Half of a Manifesto” published in Wired and edge.org, suggests that our inability to develop advances in software will, at least for now, prevent the Singularity from happening according to the Moore’s Law pace. One great quote from his demi-manifesto: “Just as some newborn race of superintelligent robots are about to consume all humanity, our dear old species will likely be saved by a Windows crash. The poor robots will linger pathetically, begging us to reboot them, even though they’ll know it would do no good.” Kurzweil countered with a couple specific examples of successful software advances, such as speech recognition (which is probably due more to algorithm development than software techniques).
I must admit, I am also disheartened by the slow pace of software advances. Kurzweil is not the only guy on the planet to have spent his career living and breathing software and complex computational systems. I’ve written my share of gnarly assembly code, neural nets, and trading systems. But, it seems to be that it takes almost as long to open a Word document, boot up, or render a 3D object on today’s blazingly fast PCs as it did 20 years ago on a machine running at less than 1% of today’s clock rate. Kurzweil claims that we have simply forgotten: “Jaron has forgotten just how unresponsive, unwieldy, and limited they were.”
So, I wondered, who is right? Are there objective tests out there? I found an interesting article in PC World that compared the boot-up time from a 1981 PC to that of a 2001 PC. Interestingly, the 2001 was over 3 times slower (51 seconds for boot up) than its 20-year predecessor (16 seconds). My 2007 Thinkpad – over 50 seconds. Yes, I know that Vista is much more sophisticated than MS-DOS and therefore consumes much more disk and memory and takes that much more time to load. But really, are those 3D spinning doodads really helping me work better?
Then I found a benchmark comparison on the performance on 6 different Word versions over the years. Summing 5 typical operations, the fastest version was Word 95 at 3 seconds. Word 2007 clocked in at 12 seconds (in this test, they all ran on the same machine).
In summary, software has become bloated. Developers don’t think about performance as much as they used to because memory and CPU speed is cheap. Instead, the trend in software development is layers of abstraction and frameworks on top of frameworks. Developers have become increasingly specialized (“I don’t do “Tiles”, I only do “Struts”) and very few get the big picture.
What does this have to do with the Singularity? Simply this – With some notable exceptions, software development has not even come close to following Moore’s Law in terms of performance or reliability. Yet, the Singularity predictions depend on it. So don’t sell your humanity stock anytime soon.