The Desert of Souls

The Desert of Souls by Howard Jones is a fantastic read. We travel back to eighth century Baghdad and meet Asim, the captain of guards for Jaffar, the Vizier and Dabir, a scholar also in Jaffar’s employ.
A simple market excursion suggested by Asim to sooth Jaffar after the death of a treasured parrot leads to a quickly escalating series of adventures. First, we encounter a mysterious prophecy on the fates of Asim, Dabir and Jaffar. Then, we run into an apparent thief carrying an oddly marked door pull. The door pull is stolen by undead monkeys and Asim and Dabir are sent to recover it.
On their journey to recover the door pull, Asim and Dabir have to overcome Djinns, necromancy, a fire mage and find a lost city. There are alos numerous bouts of sword play and a recalcitrant female student.
The story pulls you along with a rich interweaving of good old fashioned adventure and rich historic and scenic detail. As a good example of the historic detail, once you have finished reading the book (and you should), go ahead and look up Ja’far ibn Yahya on wikipedia. You will find that the prophecy was correct.
Along the way, Asim and Dabir learn to trust each others strengths and learn that they compliment each other. I have a feeling (hope) that this is the beginning of a fine set of adventures for these two. This one is highly recommended.

Spook Country

Spook Country by William Gibson was a book I was really looking forward to reading. I’ve really enjoyed Gibson’s work in the past. When I began the book, I could feel Gibson’s familiar tone and was all set to settle in for a cool ride. Unfortunately, the cool ride never quite came. The tone and writing skills were there, but the story never really grabbed me. Really, there are three main stories here that gradually interweave. There is Hollis Henry, ex-rock star now reporter following some VR artists, Tito is a member of an ex-Cuban spy family and Milgrim is an Ativan junkie who is following the mysterious Mr. Brown. This seems like a good set up. But, for me it never really goes far beyond set up.
Gibson is being experimental here in that he is writing a very current account kind of like it was science fiction. I could appreciate the style, but, like the characters, the style just wasn’t enough.

The Drawing of the Three (Dark Tower 2)

The Drawing of the Three by Stephen King is the second book of his Dark Tower series. I enjoyed this book quite a lot more than the first volume. As King himself says in the afterword:

This longer second volume still leaves many questions unanswered and the story’s climax far in the future, but I feel that it is a much more complete volume than the first.

I agree with this wholeheartedly. In this volume, Roland awakes upon the beach not long after the ending of the first volume. He finds that he is getting wet from the incoming tide and that a large lobster creature is attacking him. The lobstrosity (as Roland calls it) injures Roland. The injury and accompanying infection color much of the rest of the book.
Roland proceeds north alog the beach until he comes to a curious door. The door is suspended without being attached. When Roland looks behind the door he finds that it vanishes–it only exists from one side.
Roland finds that this door (and others) lead into what at least seems to be our world. Each door leads to one of the people mentioned in the tarot reading at the end of the first book.
This book was clearly the work of a King who has now mastered his craft. While the first volume was sometimes slowly paced and difficult to get through, this volume pulls the reader along through the story.
On to book three.

U is for Undertow

U is for Undertow by Sue Grafton is the 21st entry into Grafton’s Kinsey Millhone series. We’ve journeyed through the alphabet with Kinsey and watched her life evolve. I first picked up this series around 1990.
Grafton delivers again in this volume. We start the story in 1988 when Michael Sutton, (27) enters Kinsey’s office and tells her he has remembered something from when he was 6 years old–a couple of men burying something. He thinks it may have been the body of a child who was kidnapped around that time.
Kinsey takes on the case and begins her usual persistent probing of the details.
The story alternates between Kinsey’s investigations in 1988 and flashbacks to other characters in the late 60’s. We learn more about Sutton and his family and others connected to the story in this fashion.
Along the way we also learn some more about Kinsey’s own past and her relatively recently discovered relatives.
I enjoyed this latest entry quite a lot. If you like mysteries, this series is a must read. And, if you are already reading the series, pick this one up.

Scala

In an earlier post on Project Euler I mentioned that I was using the problems from the project as one way of picking up the language Scala.
Scala is quite interesting. It is a new language, but it utilizes the Java VM to run upon (Scala compiles to bytecode). This cool idea lets a programmer take advantage of the plethora of Java code that is already out there and call it quite easily from a Scala program.
Scala is object oriented, but more importantly (otherwise just use Java) Scala is a functional language. Every value is a object, and every function is a value. The syntax lets you do things in either a way that seems natural to someone who has been programming in Java (or C) or in a much more succinct functional style.
For example, the first problem in project Euler is to add all the natural numbers below one thousand that are multiples of 3 or 5.
A simple way of doing this in Java would be:

int accum = 0;

for (int i=1; i <= 1000; i++) { if ( i % 3 == 0 || i % 5 == 0) accum += i; } System.out.println(accum);
This is a pretty straightforward rendering of the problem.

In Scala we could do something like:

println( (1 until 1000).filter(n => n%3 == 0 || n%5 == 0).foldLeft(0)(_+_) )

This looks kind of odd on first glance, but it is really doing something similar to the java example.
(1 until 1000) defines the range of numbers from 1 to 1000. until is a method in this case, producing a Range. The filter method is then called, on that Range instance and selects all of the elements that satisfy the predicate (n%3 == 0 || n%5== 0) or in other words, all the elements that are divisible by 3 or 5. On this new Range, we then call foldLeft. This takes a starting value of 0 and applies the function "+" to successive elements (remember + is a value too). The result is then printed.
In this example, the Java code was pretty simple, so the advantage of using Scala may not be immediately apparent. It is kind of fun though. I'll share a more complex example later.

The Dark Tower: The Gunslinger

The Gunslinger is the first volume in Stephen King’s Dark Tower series. I first read The Gunslinger as it was serialized in The Magazine of Fantasy & Science Fiction from 1978 to 1981. I lost track of it afterwords as college intervened and then King seems to have lost track of the series himself since the next volume didn’t come out until 1987. I decided to reread this one and the rest of the series along with Amanda at Floor to Ceiling Books.
In this volume, we find ourselves traveling through an odd desert landscape with a Gunslinger. It becomes apparent that the desert isn’t a desert in our current world. There are mutants and magical references. It is unclear at this point if the story is in a completely alternate world or a distant future version of our own. The Gunslinger (we find that his name is Roland) is hunting a mysterious Man in Black.
Parts of the story have the flavor of the old west about them. Other parts are more future history and still other parts are high fantasy. When I picture Roland, I am basically seeing Clint Eastwood from The Good, the Bad and the Ugly. Along the way, Roland meets several people. A boy, Jake, who it seems may be from our time journeys with Roland for part of the trip.
We learn parts of Roland’s back story through a series of flashbacks as he makes his way through the desert. He grew up the son of a Gunslinger in a sort of feudal kingdom. It seems that the Man in Black somehow causes the overthrow of this land. We also see that Roland has a fairly hard education in the ways of being a gunslinger.
King’s writing is sparse and often beautiful in this volume. I could really picture the landscape through which Roland journeyed. This isn’t the easiest book to read through. A number of difficult things happen and Roland isn’t always a sympathetic character. I enjoyed this volume, but didn’t love it. I did like it enough, however, to continue on with the second volume, The Drawing of the Three. More about that, later.

Peak Helium

Ian Tregillis has started an interesting set of posts (link) on the coming shortage of Helium. This is something I hadn’t really thought much about. There is a limited supply of Helium on Earth. The US used to have most of the helium supply (fortunate geology). Then, we decided to sell it off at below market rates. The cheaper price increased demand. People used helium more than was wise. … Cool stuff.
Ian has now finished part 3 of this post series. Really well done.

This Immortal

This Immortal by Roger Zelazny won the Hugo award in 1966. It shared the award with Dune. That should tell you something. It is also Zelazny’s first novel. In it you will find many elements of Zelazny stories that make him one of my favorite authors.
The setting starts in Greece sometime in the future. There has been a smallish nuclear war sometime in the past and much of the mainland is still radioactive (hot) so most people live on islands or previously less populated areas.
It is told in the first person by Conrad. We learn that Conrad was born at some (indeterminate) time in the past and was born on Christmas day. He also seems to not be aging. This may or may not be due to a radiation mutation. He is currently the head of the Earth Office of cultural sites and antiquities. He is being tasked with guiding a Vegan (not vegetarian, as in from the star system Vega) to various sites.
After the war, the Vegans stepped in and (at least to some extent) provided assistance to a struggling Earth and its colonies on Mars and Titan.
The story is suffused with references from Greek mythology. As the journey progresses through Egypt and back to Greece we gain insight into what has been going on, Conrad’s role and the politics that are happening.
This isn’t a long book by modern standards–a couple of hundred pages. Like many of Zelazny’s works, however, it packs in a tremendous amount. Zelazny paints a picture here that many would take hundreds of more pages to do currently. The writing is fun and poetic and well wonderful as the best Zelazny is. Sadly, it is currently out of print, but this book is well worth finding if you can.

Among Others

Among Others by Jo Walton is a delightful book. I think that most people who grew up as readers will experience a delight in reading this one.
It is about a couple of things. The narrator, Mori, is a 16 year old Welsh girl who has been moved from her home in Wales to an English boarding school. We quickly learn that she had a twin sister who has been killed recently and that she has moved to get away from her mother. The incident that resulted in her twin’s death also caused Mori to need a cane to walk. Thus, Mori is among others in her move to England.
Mori also loves reading science fiction and fantasy. This is also part of the narration as Mori describes the books she is reading or has read. The description of being a teenager who loves to read (and SF & F in particular) resonated with me. I also loved to read (still do) growing up and many of Mori’s thoughts were similar to thoughts I had growing up with books. I agreed with many of the thoughts that Mori had about the books she was reading, but not all. This increased the realism of the story to me. For example, she mentions that Stand on Zanzibar is John Brunner’s masterpiece and nothing else he writes is quite up to snuff:

Reading The Shockwave Rider, Brunner. It’s very good, but it isn’t Stand on Zanzibar. I wonder what it’s like to have written your masterpiece, and to know you’ll never do it again.

This very much seemed like the opinion someone at 16 would have. Very definite and somewhat cruel–without meaning to be, of course. I actually prefer The Shockwave Rider out of the two books. So, in a way there was an interesting conversation going on between Mori, myself and my own younger self as I was reading the book.
Of course, Mori’s being a lover of SF&F and reading introduces a second otherness into the story. She is a reader among all of the others who don’t.
Mori also is able to see fairies and perform magic. The magic and the fairies are different than what one finds in books. Mori mentions a few times that she wishes the magic would follow nice neat rules like in many books. It doesn’t though–it follows a different sort of cause and effect relationship. Thus, Mori is among others in another way of participating in a magical world to which most people don’t have access.
It’s also about a number of other things, but telling would be spoiling. So, go out and read it already.