Thursday, August 2, 2007
Rudy Rucker's Infinity and the Mind - a Review
This is a long overdue review.
I encountered Infinity and the Mind several years ago, wanting to learn a bit more about infinity (duh). Having long been a fan of Rudy Rucker's fiction, I was actually surprised to find out he also wrote non-fiction.
I think Infinity and the Mind is a great book by a phenomenally entertaining and insightful author. It served as a jumping-off point for me, into Cantor, Dedekind, Russell, and re-awakened my long-latent interest in all things mathematical. And I liked it so much the first time that I just re-read it.
The book is entertaining, enlightening, soulful (classic Rucker), and smart. I give it an uncountably infinite, Big-Omega stars out of 0, which probably doesn't make it any more than it was, but as a programmer, dividing by zero is the one way to ensure that infinity stays infinite.
If you're looking for a synopsis, here's my quick take.
The first chapter is all about infinity: history, philosophy, mathematics, and paradoxes. He closes this and every chapter with thoughtful and entertaining puzzles about the topic at hand.
Chapter two, all about numbers. It was because of this chapter that I bought John H. Conway's Book of Numbers, knowing already it was a fun topic. He doesn't stop with finite, though- he gives a very impressive overview of cardinality, and continues the continuum far beyond what I'd previously thought about.
Chapter three, the paradoxes. True to his style in other (fiction) books, he approaches paradox head-on. By the end of this chapter, he presages Gödel, but we're not there yet. Chapter three was my favorite of the book.
I don't like the name of chapter four, but I like the chapter. The question, "Might a machine have a soul?" is quickly interrupted by a glorious description of Gödel's proof. I can't provide spoilers, because Rucker doesn't answer the question, which I love.
Chapter five, the one and the many. I love this question. Is there thing-ness, or is everything the same thing? What gives an object its thing-ness. Rucker's approach is deferential, and like the last chapter, he doesn't give us an easy answer, but unlike the last chapter, he does give us an answer. Read it yourself to find out.
The last two sections of the book are "excursions." One led by Cantor and one by Gödel. You might be able to guess what they're about.
Did I mention I love this book?
I encountered Infinity and the Mind several years ago, wanting to learn a bit more about infinity (duh). Having long been a fan of Rudy Rucker's fiction, I was actually surprised to find out he also wrote non-fiction.
I think Infinity and the Mind is a great book by a phenomenally entertaining and insightful author. It served as a jumping-off point for me, into Cantor, Dedekind, Russell, and re-awakened my long-latent interest in all things mathematical. And I liked it so much the first time that I just re-read it.
The book is entertaining, enlightening, soulful (classic Rucker), and smart. I give it an uncountably infinite, Big-Omega stars out of 0, which probably doesn't make it any more than it was, but as a programmer, dividing by zero is the one way to ensure that infinity stays infinite.
If you're looking for a synopsis, here's my quick take.
The first chapter is all about infinity: history, philosophy, mathematics, and paradoxes. He closes this and every chapter with thoughtful and entertaining puzzles about the topic at hand.
Chapter two, all about numbers. It was because of this chapter that I bought John H. Conway's Book of Numbers, knowing already it was a fun topic. He doesn't stop with finite, though- he gives a very impressive overview of cardinality, and continues the continuum far beyond what I'd previously thought about.
Chapter three, the paradoxes. True to his style in other (fiction) books, he approaches paradox head-on. By the end of this chapter, he presages Gödel, but we're not there yet. Chapter three was my favorite of the book.
I don't like the name of chapter four, but I like the chapter. The question, "Might a machine have a soul?" is quickly interrupted by a glorious description of Gödel's proof. I can't provide spoilers, because Rucker doesn't answer the question, which I love.
Chapter five, the one and the many. I love this question. Is there thing-ness, or is everything the same thing? What gives an object its thing-ness. Rucker's approach is deferential, and like the last chapter, he doesn't give us an easy answer, but unlike the last chapter, he does give us an answer. Read it yourself to find out.
The last two sections of the book are "excursions." One led by Cantor and one by Gödel. You might be able to guess what they're about.
Did I mention I love this book?
David Skrbina's Panpsychism in the West - A Review
Near the end of I Am a Strange Loop, Douglas Hofstadter takes a single, derisive look at panpsychism, lumping it in with other ideas that don't make sense (p 275).
Rudy Rucker, when asked, "What is your dangerous idea?" responded with panpsychism. I love his description of it: "Mind is a universally distributed quality."
Hofstadter and Rucker are two of my favorites. One derisive of the idea, one enthralled by it. After reading this book, I've got to say that I'm both.
David Skrbina does an impressive job of re-casting the history of Western philosophy with an eye toward panpsychism. I found myself unable to resist making notes in the margin, both for later perusal, and for jumping-off points. The last twenty pages are largely concerned with Skrbina's own lackluster evangelism for panpsychism, but the first 249 pages present an extraordinary history of philosophy that I enjoyed thoroughly.
As for the book, I loved it.
As for panpsychism - at least as described by Skrbina - I remain unconvinced. That being said, it would be a tough sell for me to swallow it wholesale, and he has planted some seeds which may grow down the road.
Starting with an arbitrary 19 stars, I deduct one for referring to himself in the third person (come on, just say "I gave a talk in 1993"). I deduct one more for mis-labeling Darwin's book as The Origin of the Species, and I leave him with the remaining 17. A hearty endorsement.
Rudy Rucker, when asked, "What is your dangerous idea?" responded with panpsychism. I love his description of it: "Mind is a universally distributed quality."
Hofstadter and Rucker are two of my favorites. One derisive of the idea, one enthralled by it. After reading this book, I've got to say that I'm both.
David Skrbina does an impressive job of re-casting the history of Western philosophy with an eye toward panpsychism. I found myself unable to resist making notes in the margin, both for later perusal, and for jumping-off points. The last twenty pages are largely concerned with Skrbina's own lackluster evangelism for panpsychism, but the first 249 pages present an extraordinary history of philosophy that I enjoyed thoroughly.
As for the book, I loved it.
As for panpsychism - at least as described by Skrbina - I remain unconvinced. That being said, it would be a tough sell for me to swallow it wholesale, and he has planted some seeds which may grow down the road.
Starting with an arbitrary 19 stars, I deduct one for referring to himself in the third person (come on, just say "I gave a talk in 1993"). I deduct one more for mis-labeling Darwin's book as The Origin of the Species, and I leave him with the remaining 17. A hearty endorsement.
Wednesday, August 1, 2007
Refactored Thinking
Programmers are comfortable with clarifications. These clarifications occur in three varieties: hacks, optimizations, and refactoring.
If the specification of a task changes after the programmer has already completed the programming for the task, there are times when adapting to this change can be done without starting the task. Programmers can add a feature to existing code without reworking the overall structure. Programmers refer to this kind of "enhancement" as a "hack." Programmers who frequently find themselves performing this kind of enhancement may call themselves hackers.
On the other hand, sometimes once the work has been completed, the programmer will decide that the program is inefficient in some important way. It requires too much memory, too many CPU cycles, too much input and output. In this case, the programmer may decide to optimize the program by implementing some subsets of the feature set using an algorithm that
requires fewer calculations or less memory. This kind of optimization can sometimes also be a hack, but programmers who do it probably just think of themselves as smart, rather than hackers.
Last, but not least, as programmers iteratively change an existing piece of code- hacking in new features and optimzing existing ones- the program may become more complicated. If this process continues too long, or occurs too frequently, the program may become illegible for humans. There may be inadvertent side-effects to the hacking. Programmers call these inadvertent side-effects bugs. Worst of all, the programmer may simply have decided that a given program started out illegible (probably written by a coworker), and decide to "fix" it.
When these eventualities occur, the programmer "refactors" the program. Refactoring programs is great fun. It involves deleting unnecessary parts, rewriting unclear parts, re-organzing everything, and presenting it to the world as Version 2.0.
It is my fondest hope that I am able to refactor my thinking much as I do with programs. As new ideas come, they may be hacked on. Old ideas may be clarified and updated. And the entirety may occasionally undergo a significant refactoring, resulting in a more elegant, coherent, and presentable whole.
This is my apologia. If you notice some content here has changed, arbitrarily and capriciously, it's been refactored. If you liked the way it read before the refactoring, I tend to keep the older versions around. I also tend to think that the older versions aren't as good, so you'll need a pretty good reason to get me to cough one up. On the other hand, if Google's cache or Archive.org keep one around, have at it.
If the specification of a task changes after the programmer has already completed the programming for the task, there are times when adapting to this change can be done without starting the task. Programmers can add a feature to existing code without reworking the overall structure. Programmers refer to this kind of "enhancement" as a "hack." Programmers who frequently find themselves performing this kind of enhancement may call themselves hackers.
On the other hand, sometimes once the work has been completed, the programmer will decide that the program is inefficient in some important way. It requires too much memory, too many CPU cycles, too much input and output. In this case, the programmer may decide to optimize the program by implementing some subsets of the feature set using an algorithm that
requires fewer calculations or less memory. This kind of optimization can sometimes also be a hack, but programmers who do it probably just think of themselves as smart, rather than hackers.
Last, but not least, as programmers iteratively change an existing piece of code- hacking in new features and optimzing existing ones- the program may become more complicated. If this process continues too long, or occurs too frequently, the program may become illegible for humans. There may be inadvertent side-effects to the hacking. Programmers call these inadvertent side-effects bugs. Worst of all, the programmer may simply have decided that a given program started out illegible (probably written by a coworker), and decide to "fix" it.
When these eventualities occur, the programmer "refactors" the program. Refactoring programs is great fun. It involves deleting unnecessary parts, rewriting unclear parts, re-organzing everything, and presenting it to the world as Version 2.0.
It is my fondest hope that I am able to refactor my thinking much as I do with programs. As new ideas come, they may be hacked on. Old ideas may be clarified and updated. And the entirety may occasionally undergo a significant refactoring, resulting in a more elegant, coherent, and presentable whole.
This is my apologia. If you notice some content here has changed, arbitrarily and capriciously, it's been refactored. If you liked the way it read before the refactoring, I tend to keep the older versions around. I also tend to think that the older versions aren't as good, so you'll need a pretty good reason to get me to cough one up. On the other hand, if Google's cache or Archive.org keep one around, have at it.
Subscribe to Posts [Atom]