Technological progress and efficiency

February 3, 2014

Let's start with a tweet (via @etrever):

Sit down and ponder the fact that the fastest tools on your machine come from the 1970s and tool speed correlates negatively with time.

My reaction to this is 'isn't technological progress great?'

Tools in the 1970s had no choice but to be both screamingly efficient and generally relatively limited because they ran on machines that today we would consider extremely tiny. For one extreme example, the embedded CPU on your disk drives is almost certainly more powerful than the machines Unix originally ran on.

(Yes, your disk drives have onboard CPUs. Even and especially SSDs.)

Every step of improved computing since the 1970s has made feasible programs that are both more inefficient and more powerful than before, and so of course people have written them. Often these programs have been written in ways that are themselves more inefficient but faster in coding time. Garbage collection, widespread use of hash tables for everything, object oriented programming with multiple levels of indirection, dynamic types with runtime type dereference; any litany of modern programming techniques is also a litany of inefficiency. All of this inefficiency has been enabled by the relentless march of technological progress.

(Of course you can take this too far. You can take anything too far.)

All of this is great. We have not lost any possibilities in this technological progress; you can still write programs that are just as efficient as programs from the 1970s (although people generally don't). Instead we have gained possibilities. The march of technology has made it possible to do things that would have been crazy ten or even five years ago, and it will probably keep on doing so.

(I'm also a little bit dubious that the fastest tools really do date from the 1970s. I would not be surprised if the GNU grep family were faster than their V7 equivalents, for example.)

Written on 03 February 2014.
« An illustration of the problem of noise
The big attraction of SQLite »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Mon Feb 3 01:43:23 2014
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.