Book Review – A Drink Before the War by Dennis Lehane

A Drink Before the War by Dennis Lehane

A Drink Before the War by Dennis Lehane

The blurb says:

As richly complex and brutal as the terrain it depicts, here is the mesmerizing, darkly original novel that heralded the arrival of Dennis Lehane, the master of the new noir — and introduced Patrick Kenzie and Angela Gennaro, his smart and tough private investigators weaned on the blue-collar streets of Dorchester.

A cabal of powerful Boston politicians is willing to pay Kenzie and Gennaro big money for a seemingly small job: to find the missing cleaning woman who stole some secret documents. As Kenzie and Gennaro learn, however, this crime is no ordinary theft. It’s about justice. About right and wrong. But in Boston, finding the truth isn’t just a dirty business … it’s deadly.

The detail page for this book lists its publication date as 2010, but if you look more closely you’ll notice that it says “Reprint edition” and the editorial reviews are from 1994.  I didn’t look that closely, so while I was reading the book I kept wondering why there were no cellphones and the Internet didn’t exist.

I don’t remember exactly, but I think I chose to read this book because it was supposed to be noir (of which I am a big fan).  Unfortunately, although the author wrote the book with noir in mind (to the point of leaning pretty heavily on some Sam Spade cliches near the beginning) I don’t think he was really hard enough on the main character.  Noir and happy endings don’t really go together.

The book spends quite a lot of time addressing the issue of race in America.  It made me kind of uncomfortable because it wasn’t really clear to me what the author was trying to say about it.  Even with the best of intentions, a white author pontificating about race is a tricky proposition.

Finally, several of the characters were pretty one-dimensional – evil just because they’re evil etc.

Book Review – Kill City Blues by Richard Kadrey

Kill City Blues by Richard Kadrey

Kill City Blues by Richard Kadrey

The blurb says:

Another day, another apocalypse

James Stark, aka Sandman Slim, has managed to get out of Hell, renounce his title as the new Lucifer, and settle back into life in L.A. But he also lost the Qomrama Om Ya, an all-powerful weapon from the banished older gods. Older gods who are returning and searching for their lost power.

The hunt leads Stark to an abandoned shopping mall—a global shopping paradise infested with Lurkers and wretched bottom-feeding Sub Rosa families, squatters who have formed tight tribes to guard their tiny patches of retail wasteland. Somewhere in this kill zone is a dead man with the answers Stark needs. All Stark has to do is find the dead man, recover the artifact, and outwit and outrun the angry old gods—and natural-born killers—on his tail.

But not even Sandman Slim is infallible, and any mistakes will cost him dearly.

Given that the previous two books in the series were set (at least partially) in Hell itself, the setting of Kill City (an abandoned shopping mall) is kind of a letdown.

The writing is still fun and clever, but it’s starting to feel like a slice of a larger story rather than a story on its own.  The series started off with one plot per book and an overarching plot for the series.  In the first two books the per-book plot was the main one and the overarching plot was only slightly progressed in each book.  In the last three books the overarching plot has been the main one, which means that there’s less of a satisfying arc in each book.

Enhanced by Zemanta

Book Review – Servant by John Brown

Servant by John Brown

Servant by John Brown

The blurb says:

A spirited blacksmith’s daughter accused of using the dark and terrifying sleth magic.

The young man who hunts her.

And the ferocious monster who only wants to be free.

Trapped in a web of lies and ancient secrets, of right becoming wrong, the three must struggle not only against each other, but also a being of irresistible powers, a creature who is gathering her servants to usher in the impending human harvest.

If the three succeed, they will save those they love the most. If they fail, the clans of the land fall with them.

Thus begins the towering fantasy series that introduces an elaborate new world, a multifaceted system of magic, and a cast of compelling characters and creatures.

I originally read the hardback version of this book back in 2010.  I really liked it and eagerly anticipated the second book in the series which… failed to materialize.

Apparently the author and the publisher had a falling out which (after a year or more of trying to fix) eventually led to their severing ties.

Now the author has rearranged the book and re-released it himself, to be followed shortly by the second book.

To be honest, I think I prefer the old name and the old cover – after all that’s what got me to buy it in the first place:

Servant of a Dark God by John Brown

Servant of a Dark God by John Brown

Unfortunately I think I also prefer the original version of the story to the “author’s cut”.

The original version was arranged so that you start off thinking you understand the world, and then there’s a revelation that things are actually different from what you were told, and then a revelation that the main character’s been lied to his whole life, and then a revelation that everyone’s been lied to!  It was quite a revelatory experience.  Unfortunately because the first quarter of the book is rearranged in the new version, instead of getting a series of revelations you end up knowing that the main character’s been lied to for a long time before he finds out – waiting for him to catch up isn’t exciting.

Another problem I have with the new version is that the chapters added to the end read like an extended epilogue – all the interesting stuff is over and the characters are just sitting around discussing things that have already happened or waiting for the next book to start.

Finally there were a bunch of spelling errors.  I assumed that this was because the author only had access to a pre-editing version of the manuscript and had to copy edit it himself, but apparently that’s not the case.

That’s all very negative of me, which is unfortunate because I really like this book.  The things I’ve mentioned are the only things that keep it from being perfect, so apart from those things it is perfect.  The world building is big and imaginative, the characters are relatable, the descriptions are rich and the action is exciting.

In spite of its flaws the core of the story remains very strong – I still give it five stars and eagerly anticipate the sequel.

My fifth Chrome extension – Steam Price History Graph

Steam Price History Graph

Steam Price History Graph

As a shopper, I’m very suspicious of sales.  Stores act in their own interest, and their interest is always to make money.  So when a store tells me that they’re selling something that’s worth $10 for $5, it sets off my suspicion meter.  If it was really worth $10, why would you not charge $10 for it?  What’s in it for you?  There must be some way that this makes the store more money than not putting the item on sale…

I feel like I’m being taken advantage of but I don’t know why – I can see the worm, but where’s the hook?

Of course sometimes it really is a good deal and the store is just using the sale to get the customer in the door in the hopes that while they’re in the store they’ll be tempted to buy something else at full price.  Or maybe there’s something like the wholesale model which means that sometimes it doesn’t cost Amazon anything to sell eBooks for almost nothing.

On the other hand, knowing that us customers are suckers for the worm, a lot of stores just flat out lie and say that an item is on sale when the price hasn’t changed (or has even gone up).  Then the regulators step in, and the stores have to follow the letter of the law by raising the price of an item for some period of time before lowering it back to the original price and plastering SALE on it in big letters.

Because of tricks like this, I’m a big fan of software that can give me the price history for an item, so I can tell if it’s really a good deal.  For example The Tracktor or The Camelizer for Amazon items and eReaderIQ for eBooks.

Steam is famous for their sales, but although there are a lot of good deals to be had (because the game publishers pay the bulk of the price for Valve’s largesse), it can be tricky.  There are different kinds of sales, so sometimes although a game’s on sale now, it was cheaper a few days ago and it will be cheaper again in a few days.  I tried to find an extension to give me price history for Steam games, but I couldn’t find any.

However I did find a site that had the price history, it was just slightly too inconvenient for me to have to open up another tab to check a game.  As with the eReaderIQ Integrator, this annoyed me enough that eventually I got permission to integrate with the website and wrote an extension using their data.  I don’t think Steam has a price history API, so I think sites like this scrape the product pages, which is work I didn’t want to duplicate.

From a programming point of view, I’m using Google Charts API for the graph.  The problem with that is the way the API is loaded assumes you have an HTML page, whereas I’m dealing with a content script.  I ended up putting an iframe on the Steam page and loading the API in that.  The solution is a bit more complicated than I thought it would be because the content script and iframe have to pass each other messages, but so far it seems pretty stable and fast.

I tried to make the graph fit in with the rest of the Steam page, so I used the existing CSS classes and colors wherever possible.

Enhanced by Zemanta