A Deepness in the Sky

Recently finished reading A Deepness in the Sky, the 1999 science fiction classic by Vernor Vinge. It lived up to its reputation for me. Here are just two (of at least a dozen) neat ideas in the book that really captured my imagination…

The story is set in a distant future, thousands of years from now, when humans have colonized a few hundred worlds in one small area of the Milky Way. Although extremely technologically advanced, the humans of this distant future haven’t evolved into energy beings: they still live within the constraints of several cosmic puzzles that they just can’t crack, like the speed of light, and gravity. The story is about going on a very long trip beyond the edge of known space to check out one of the only strong clues that there must be more to the cosmos: a star that does things it shouldn’t be able to! And they do indeed find ... well... let’s just say it was worth the trip. 😉

Another puzzle humans never crack in this universe: how to clean up code. One of the neatest ideas in the book (for a programmer like me) is that code is forever. Even today, it’s already almost impossible to rebuild most complex systems from scratch, and so code mostly only ever gets patched, not replaced. I’ve always assumed that all crufty old systems are going to get a proper replacement eventually, but Vinge’s idea is the opposite: it only gets harder, and we just end up endlessly building on the foundations of the old, for centuries, ad infinitum... and so the computers of this distant future are powered by code that is hundreds of layers of abstraction deep, and all the old code is there, even some of the original code from the dawn of computer science, like fossils in rock strata.

This stuff makes my brain tingle.