After a long absence, I’ve made a return to reviewing for Strange Horizons with my latest piece, a discussion of City of Blades, the second book in what has become Robert Jackson Bennett’s The Divine Cities trilogy. Longtime readers of the blog may be slightly surprised that I am a lot more positive about this entry in the series than I was its predecessor. While I discuss the reasons at length in the review, one of the key reasons was that I went into City of Blades knowing what to expect. City of Stairs didn’t turn out to be the novel I thought it would be, and I was critical because of that. We all have our weaknesses, and that happens to be one of mine.
Anyway, the book had gotten me thinking about secondary world fantasy, particularly how I want to go about writing one. As someone who came to fantasy through alternate history and science fiction, I don’t have the same attitude towards it that most readers seem to have. When I’ve tried to read dense books centered around alien worlds painstakingly worked out by their creators like Dune or Lord of the Rings, I’ve bounced off quickly, and indeed I’ve never read either series of books. I seem to do better with books that wear their influences on their sleeve, that make it clear they’re just copies of other places. I’ve had great fun with Sir Terry Pratchett’s Discworld books, the vaguely late-medieval Levantine world all of K. J. Parker’s stories are set in, and of course Mr. Bennett’s fantasies. I also find a lot of fantasy is plotted such that the reader is shoved around the world like they’re on a package tour, and I’ve never liked those sorts of books. For me, the ideal secondary-world fantasy doesn’t make much fuss about its secondary world. It exists, but the narrative structure of the novel isn’t contorted around showing it off. Reading one should be like reading a Graham Greene or a Joseph Roth novel, except one obviously not set on Earth. I suppose what I’m trying to say was that M. John Harrison was right on the money with his criticisms of worldbuilding, and I’m just here trying to figure out how to do what I want to do.