LIQUID FIRE and TWELVE HOURS LATER

Liquid Fire - 600x900x300.jpg

I think I’ll be posting this everywhere for a while … LIQUID FIRE, my third novel, is now available for preorder on Amazon. I talk a bit more about this on the Dakota Frost blog, but after a lot of work with beta readers, editing, and my editor, I’m very proud of this book, which takes Dakota out of her comfort zone in Atlanta and brings her to the San Francisco Bay, where she encounters romance, danger, magic, science, art, mathematics, vampires, werewolves, and the fae. It comes out May 22, but you can preorder it now on Amazon! Go get it! You’ll have a blast.

And, almost at the same time, I found out this is coming out on May 22 as well…

Twelve Hours Later.png

TWELVE HOURS LATER is also available for preorder on Amazon Kindle and CreateSpace. Put together by the Treehouse Writers, TWELVE HOURS LATER is a collection of 24 steampunk stories, one for every hour in the day – many of them in linked pairs, half a day apart … hence “Twelve Hours Later”. My two stories in the anthology, “The Hour of the Wolf” and “The Time of Ghosts”, feature Jeremiah Willstone, the protagonist of “Steampunk Fairy Chick” in the UnCONventional anthology … and also the protagonist of the forthcoming novel THE CLOCKWORK TIME MACHINE from Bell Bridge Books. (It’s also set in the same universe as “The Doorway to Extra Time” from the anthology of the almost identical name).

And, believe it or not, I may have something else coming out soon … stay tuned. 🙂

-the Centaur

Hustle and Bustle at the Library

shattered-small.png

I’ve felt quite harried over the past few weeks … and talking with another author, I realized why.

In April, I finally finished my part of Dakota Frost #3, LIQUID FIRE – sending comments to the publisher Bell Bridge Books on the galley proofs, reviewing cover ideas, contributing to the back cover copy, writing blogposts. I also as part of Camp Nanowrimo finished a rough rough draft of Dakota Frost #4, SPECTRAL IRON. But at the same time, I had recently finished a short story, “Vogler’s Garden”, and have been sending it out to quite a few places.

In May, we expect LIQUID FIRE will be out, I have two stories in the anthology TWELVE HOURS LATER, and I have three guest blog posts coming out, one on “Science is Story: Science, Magic, and the Thin Line Between” on the National Novel Writing Month blog which has gotten some traction. And I’ll be speaking at the Clockwork Alchemy conference. Oh, and I’m about to start responding to Bell Bridge’s feedback on my fourth novel, THE CLOCKWORK TIME MACHINE.

Holy cow. No wonder I feel so harried! But it’s all for a good cause.

-the Centaur

Pictured: a friend at work shattered his monitor and inadvertently made art.

The Science of Airships, Redux

science-of-airships.png

Once again, I will be giving a talk on The Science of Airships at Clockwork Alchemy this year, this time at 11AM on Monday. I had to suffer doing all the airship research for THE CLOCKWORK TIME MACHINE, so you should too! Seriously, I hope the panel is fun and informative and it was received well at previous presentations. From the online description:

Steampunk isn’t just brown, boots and buttons: our adventurers need glorious flying machines! This panel will unpack the science of lift, the innovations of Count Zeppelin, how airships went down in flames, and how we might still have cruise liners of the air if things had gone a bit differently. Anthony Francis is a science fiction author best known for his Dakota Frost urban fantasy series, beginning with the award winning FROST MOON. His forays into Steampunk include two stories and the forthcoming novel THE CLOCKWORK TIME MACHINE.

Yes, yes, I know THE CLOCKWORK TIME MACHINE is long in forthcoming, but at least it’s closer now. I’ll also be appearing on two panels, “Facts with Your Fiction” moderated by Sharon Cathcartat 5pm on Saturday and “Multi-cultural Influences in Steampunk” moderated by Madeline Holly at 5pm on Sunday. With that, BayCon and Fanime, looks to be a busy weekend.

-the Centaur

Context-Directed Spreading Activation

netsphere.png

Let me completely up front about my motivation for writing this post: recently, I came across a paper which was similar to the work in my PhD thesis, but applied to a different area. The paper didn’t cite my work – in fact, its survey of related work in the area seemed to indicate that no prior work along the lines of mine existed – and when I alerted the authors to the omission, they informed me they’d cited all relevant work, and claimed “my obscure dissertation probably wasn’t relevant.” Clearly, I haven’t done a good enough job articulating or promoting my work, so I thought I should take a moment to explain what I did for my doctoral dissertation.

My research improved computer memory by modeling it after human memory. People remember different things in different contexts based on how different pieces of information are connected to one another. Even a word as simple as ‘ford’ can call different things to mind depending on whether you’ve bought a popular brand of car, watched the credits of an Indiana Jones movie, or tried to cross the shallow part of a river. Based on that human phenomenon, I built a memory retrieval engine that used context to remember relevant things more quickly.

My approach was based on a technique I called context directed spreading activation, which I argued was an advance over so-called “traditional” spreading activation. Spreading activation is a technique for finding information in a kind of computer memory called semantic networks, which model relationships in the human mind. A semantic network represents knowledge as a graph, with concepts as nodes and relationships between concepts as links, and traditional spreading activation finds information in that network by starting with a set of “query” nodes and propagating “activation” out on the links, like current in an electric circuit. The current that hits each node in the network determines how highly ranked the node is for a query. (If you understand circuits and spreading activation, and this description caused you to catch on fire, my apologies. I’ll be more precise in future blogposts. Roll with it).

The problem is, as semantic networks grow large, there’s a heck of a lot of activation to propagate. My approach, context directed spreading activation (CDSA), cuts this cost dramatically by making activation propagate over fewer types of links. In CDSA, each link has a type, each type has a node, and activation propagates only over links whose nodes are active (to a very rough first approximation, although in my evaluations I tested about every variant of this under the sun). Propagating over active links isn’t just cheaper than spreading activation over every link; it’s smarter: the same “query” nodes can activate different parts of the network, depending on which “context” nodes are active. So, if you design your network right, Harrison Ford is never going to occur to you if you’ve been thinking about cars.

I was a typical graduate student, and I thought my approach was so good, it was good for everything—so I built an entire cognitive architecture around the idea. (Cognitive architectures are general reasoning systems, normally built by teams of researchers, and building even a small one is part of the reason my PhD thesis took ten years, but I digress.) My cognitive architecture was called context sensitive asynchronous memory (CSAM), and it automatically collected context while the system was thinking, fed it into the context-directed spreading activation system, and incorporated dynamically remembered information into its ongoing thought processes using patch programs called integration mechanisms.

CSAM wasn’t just an idea: I built it out into a computer program called Nicole, and even published a workshop paper on it in 1997 called “Can Your Architecture Do This? A Proposal for Impasse-Driven Asynchronous Memory Retrieval and Integration.” But to get a PhD in artificial intelligence, you need more than a clever idea you’ve written up in a paper or implemented in a computer program. You need to use the program you’ve written to answer a scientific question. You need to show that your system works in the domains you claim it works in, that it can solve the problems that you claim it can solve, and that it’s better than other approaches, if other approaches exist.

So I tested Nicole on computer planning systems and showed that integration mechanisms worked. Then I and a colleague tested Nicole on a natural language understanding program and showed that memory retrieval worked. But the most important part was showing that CDSA, the heart of the theory, didn’t just work, but was better than the alternatives. I did a detailed analysis of the theory of CDSA and showed it was better than traditional spreading activation in several ways—but that rightly wasn’t enough for my committee. They wanted an example. There were alternatives to my approach, and they wanted to see that my approach was better than the alternatives for real problems.

So I turned Nicole into an information retrieval system called IRIA—the Information Retrieval Intelligent Assistant. By this time, the dot-com boom was in full swing, and my thesis advisor invited me and another graduate student to join him starting a company called Enkia. We tried many different concepts to start with, but the further we went, the more IRIA seemed to have legs. We showed she could recommend useful information to people while browsing the Internet. We showed several people could use her at the same time and get useful feedback. And critically, we showed that by using context-directed spreading activation, IRIA could retrieve better information faster than traditional spreading activation approaches.

The first publication on IRIA came out in 2000, shortly before I got my PhD thesis, and at the company things were going gangbusters. We found customers for the idea, my more experienced colleagues and I turned the IRIA program from a typical graduate student mess into a more disciplined and efficient system called the Enkion, a process we documented in a paper in early 2001. We even launched a search site called Search Orbit—and then the whole dot-com disaster happened, and the company essentially imploded. Actually, that’s not fair: the company continued for many years after I left—but I essentially imploded, and if you want to know more about that, read “Approaching 33, as Seen from 44.”

Regardless, the upshot is that I didn’t follow up on my thesis work after I finished my PhD. That happens to a lot of PhD students, but for me in particular I felt that it would have been betraying the trust of my colleagues to go publish a sequence of papers on the innards of a program they were trying to use to run their business. Eventually, they moved on to new software, but by that time, so had I.

Fast forward to 2012, and while researching an unrelated problem for The Search Engine That Starts With A G, I came across the 2006 paper “Recommending in context: A spreading activation model that is independent of the type of recommender system and its contents” by Alexander Kovács and Haruki Ueno. At Enkia, we’d thought of doing recommender systems on top of the Enkion, and had even started to build a prototype for Emory University, but the idea never took off and we never generated any publications, so at first, I was pleased to see someone doing spreading activation work in recommender systems.

Then I was unnerved to see that this approach also involved spreading activation, over a typed network, with nodes representing the types of links, and activation in the type nodes changing the way activation propagated over the links. Then I was unsettled to see that my work, which is based on a similar idea and predates their publication by almost a decade, was not cited in the paper. Then I was actually disturbed when I read: “The details of spreading activation networks in the literature differ considerably. However, they’re all equal with respect to how they handle context … context nodes do not modulate links at all…” If you were to take that at face value, the work that I did over ten years of my life—work which produced four papers, a PhD thesis, and at one point helped employ thirty people—did not exist.

Now, I was also surprised by some spooky similarities between their systems and mine—their system is built on a context-directed spreading activation model, mine is a context-directed spreading activation model, theirs is called CASAN, mine is embedded in a system called CSAM—but as far as I can see there’s NO evidence that their work was derivative of mine. As Chris Atkinson said to a friend of mine (paraphrased): “The great beam of intelligence is more like a shotgun: good ideas land on lots of people all over the world—not just on you.”

In fact, I’d argue that their work is a real advance to the field. Their model is similar, not identical, and their mathematical formalism uses more contemporary matrix algebra, making the relationship to related approaches like Page Rank more clear (see Google Page Rank and Beyond). Plus, they apparently got their approach to work on recommender systems, which we did not; IRIA did more straight up recommendation of information in traditional information retrieval, which is a similar but not identical problem.

So Kovács and Ueno’s “Recommending in Context” paper is a great paper and you should read it if you’re into this kind of stuff. But, to set the record straight, and maybe to be a little bit petty, there are a number of spreading activation systems that do use context to modulate links in the network … most notably mine.

-the Centaur

Pictured: a tiny chunk of the WordNet online dictionary, which I’m using as a proxy of a semantic network. Data processing by me in Python, graph representation by the GraphViz suite’s dot program, and postprocessing by me in Adobe Photoshop.

Going Gonzo

IMG_20130126_140326.jpg

It would be hard to adequately describe the story I’m working on now in between gaps of finishing up the anthology Doorways to Extra Time, but from the reading list I have above, you can fairly assume it’s going to be gonzo.

Of course, everything that has Jeremiah Willstone in it is a bit gonzo.

-the Centaur

Humans are Good Enough to Live

goodness.png
I’m a big fan of Ayn Rand and her philosophy of Objectivism. Even though there are many elements of her philosophy which are naive, or oversimplified, or just plain ignorant, the foundation of her thought is good: we live in exactly one shared world which has a definitive nature, and the good is defined by things which promote the life of human individuals.

It’s hard to overestimate the importance of this move, this Randian answer to the age old question of how to get from “is” to “ought” – how to go from what we know about the world to be true to deciding what we should do. In Rand’s world, ethical judgments are judgments made by humans about human actions – so the ethical good must be things that promote human life.

This may seem like a trivial philosophical point, but there are many theoretically possible definitions of ethics, from the logically absurd “all actions taken on Tuesday are good” to the logically indefensible “things are good because some authority said so.” Rand’s formulation of ethics echoes Jesus’s claim that goodness is not found in the foods you eat, but in the actions you do.

But sometimes it seems like the world’s a very depressing place. Jesus taught that everyone is capable of evil. Rand herself thought nothing is given to humans automatically: they must choose their values, and that the average human, because they never think about values, is pretty much a mess of contradictory assumptions which leaves them doing good only through luck.

But, I realized Rand’s wrong about that – because her assumptions are wrong, that nothing is given to humans automatically. She’s a philosopher, not a scientist, and she wasn’t aware of the great strides that have been made in the understanding of how we think – because some of those strides were made in technical fields near the very end of her life.

Rant rails against philosophies like Kant’s, who proposes, among many other things, that humans perceive reality unavoidably distorted by filters built into the human conceptual and perceptual apparatus. Rand admitted that human perception and cognition had a nature, but she believed, humans could perceive reality more objectively. Well, in a sense, they’re both wrong.

Modern studies of bias in machine learning show that it’s impossible – mathematically impossible – to learn any abstract concept without some kind of bias. In brief, if you want to predict something you’ve never seen before, you have to take some stance towards the data you’ve seen already – a bias – but there is no logical way to pick a correct bias. Any one you pick may be wrong.

So, like Kant suggested, our human conceptual processes impose unavoidable biases on the kind of concepts we learn, and unlike Rand wanted, those biases may prove distorting. However, we are capable of virtual levels of processing, which means that even if our base reasoning is flawed, we can build a more formal one, like mathematics, that avoids those problems.

But, I realized, there’s an even stronger reason to believe that things aren’t as bad as Kant or Rand feared, a reason founded in Rand’s ideas of ethics. Even human communities that lack a formalized philosophy are nonetheless capable of building and maintaining systems that last for generations – which means the human default bias leads to concepts that are Randian goods.

In a way, this isn’t surprising. From an evolutionary perspective, if any creature inherited a set of bad biases, it would learn bad concepts, and be unable to reproduce. From a cognitive science perspective, the human mind is constantly attempting to understand the world and to cache the results as automatic responses – what Rand would call building a philosophy.

So, if we are descendants of creatures that survived, we must have a basic bias for learning that promotes our life, and if we live by being rational creatures constantly attempting to understand the world who persist in communities that have lasted for generations, we must have a basic bias towards a philosophy which is just good enough to prevent our destruction.

That’s not to say that the average human being, on their own, without self-examination, will develop a philosophy that Rand or Jesus would approve of. And it’s not to say that individual human beings aren’t capable of great evil – and that human communities aren’t capable of greater evil towards their members.

But it does mean that humans are good enough to live on this Earth.

Just our continued existence shows that even though it seems like we live in a cold and cruel universe, the cards are stacked just enough in humanity’s favor for it to be possible for at least some people to thrive, it also shows that while humans are capable of great evil, the bias of humanity is stacked just enough in our favor for human existence to continue.

Rising above the average, of course, is up to you.

-the Centaur

For Sale: Garden Planet. Barely Used.

Stranded - print.jpg

It’s been on preorder for a while, but STRANDED, the anthology featuring stories by me, James Alan Gardner, and headlined by Anne Bishop, is finally out in print and Kindle on Amazon and both print and Nook on Barnes and Noble. Three authors, three stories – one theme: young adults making their own way in space. An excerpt from my story, “Stranded”:

“It’s called Halfway Point,” Serendipity said, “because they wanted to do what I want to do: set up a port between those two bubbles, which have grown so they almost touch. Shipping routes are still rerouted, but they won’t stay that way. Halfway Point’s even got a black hole—”

“Oh, wonderful,” Tianyu said. “Sounds like a big KEEP OFF sign to me.”

“Hush, love,” Serendipity said. “The orbit’s far enough that the inner planets are stable, but close enough to power heavy industry someday. In all the galaxy, Halfway Point is unique. I have no idea why it was overlooked, but I’m not about to let someone else step up and claim it.”

They stared at the little blue-green moon, that forgotten jewel, curling around the rainbow pastels of its mammoth mother planet.

“I looked up headstrong in the dictionary,” Tianyu said at last, curling up in a huff. “Your name was all over it: synonym, hyponym, see also, properly capitalized and everything.”

“Be a good sport,” Serendipity said, ruffling behind his ears. “Double-check my kit, would you?”

Ah, Serendipity. Best of luck on that new planet. You can check out more of Serendipity the Centaur at her Facebook page, or here, where I’ll be filling in details on “Stranded’s” sequel, “Conflicted,” as I get the story done. The current plan is to collect the first three novellas in the Serendipity story into a single novel titled MAROONED.

-the Centaur

“The Doorway to Extra Time” in Beta Draft

Doorway Beta v3.png

I’ve just finished the beta draft of “The Doorway to Extra Time,” my own contribution to my own anthology DOORWAYS TO EXTRA TIME (see what I did there?) forthcoming from Spencer Hill Press. It ran a bit long, but that’s why I have a co-editor. (Or maybe I should stick to my plan of letting the stories in the anthology be the length they should be). Regardless, here’s an excerpt:

“I know what you’re going to do,” the old woman said, “because I’ve done it.”

Jackson flinched from the sparkling deranger that threatened her. It was as yellowed with time as the crone who held it: twin chambers of glass cracked like the woman’s bared teeth, gas capsule as battered as her top hat, glass sights as dented as her spectracles.

“I—I have no idea what you mean,” Jackson said, voice quavering less from fear the gun would addle her tubes than from the fact her statement was ridiculous: the old woman had barred Jackson’s path just as she was about to step one hour into the past through the Riemann Gate.

The Gate was a thing of beauty, a four meter brass ring as fresh as the century, its Art Nouveau outer hull intricately filligreed, its elaborate Tiffany-style service windows hinting at the movement of the original escapement, eternally spinning within a ring of Tesla magnets.

The shimmering plane of its opening swam with possibilities, tiny fluctuations in the shape of space itself. When it was dark, the doorway sparkled like a sky of twinkling stars—but even though it was night, the view through the Riemann Gate was not dark.

Fading sunlight flickered through the Gate, filtering down through the glass roof of the Curie Center’s containment dome from the surface of Fresh Lake above—because, on the other side of the Gate, almost a full hour in the past, the sun had not yet set.

“The Doorway to Extra Time” is set in the universe of THE CLOCKWORK TIME MACHINE, forthcoming from Bell Bridge Books, and while The Machine doesn’t make an appearance, it does star Doctor Jackson Truthsayer, one of the characters of the related short story “Steampunk Fairy Chick” published earlier in the year in the UNCONVENTIONAL anthology also by Spencer Hill Press.

This was a fun story, though the stack of books you see in the picture is only the thinnest slice of the immense number of time travel, gravitation and wormhole books I read while doing it. Most of that reading ended up on the cutting room floor, or, sometimes, an immense amount of reading changed only one word of my writing. But it’s as accurate as I could make it.

Perhaps I’ll do The Science of the Doorway to Extra Time someday…

Anyway, it’s off to my loyal betas now … may they be insightful!

-the Centaur

Good Parking Karma

parkingkarma.jpg

Recently I’ve become more interested in the scientific method, especially after spending a few weeks doing that Prometheus vs the Thing essay. After doing that, I realized that I believe myself to have superior parking skills … without any hard evidence to that effect.

I have plenty of anecdotal evidence, of course, for my supposed superior parking skills. My wife admires my parking skills. She can’t parallel park, whereas I can. Actually, she’s not the only one to have remarked upon it – other friends have too, as have strangers. Once, back when I drove a large SUV, I successfully parallel parked it in a tiny parking space with only inches of clearance front and back. Dissatisfied that I was more than four feet from the curb, I then, with a sequence of back and forths worthy of Austin Powers, slid the car sideways to within four inches of the curb. When I got out, the people watching in the nearby cafe applauded.

There’s other anecdotal evidence. I have spectacularly good “parking karma”. There are at least three different parking lots that my friends avoid that I have no trouble parking at. Part of this is a positive attitude: I believe there are spaces, so that helps me find them. Part of this is patient strategy: I know there’s flux in almost any parking lot, so I don’t get frustrated and drive off just before a space opens. And part of this is again skill: I know certain tricks for parking, like backing into a narrow space so my passenger door aligns with the other car’s passenger door, and I can leave more space for my driver door and the driver next to me. I enjoy finding the space that other people can’t find and don’t want to park in and taking that.

But this is all anecdotal. I’ve never done a scientific survey of parking skills and compared my abilities to the population mean. I’ve never even tried to define the term parking skills in a way that would make a concept of superior parking skills meaningful. It’s just an egotistical little belief I’ve picked up over the years. Just like the “parking karma,” an unscientific concept if there ever was one.

But I do have a good time parking, even today, in a lot so busy my friends often complain that it’s hard to park, I squeezed my car into a tight space today, a narrow, angled space a larger SUV drove past. I had to slide my car in and out of the space three times to align properly enough that I could get out of my car, because the car to the right was angled over the line, into my parking space.

But I parked. And when I got out, I checked. The car to my right could still open his door just fine.

-the Centaur

Pictured: a different parking situation, in which some car far to the right had leaned out of his lane, and all the subsequent cars had to either keep parking at an odd angle, or drive on by. Other cars drove by; I parked just fine. Good parking karma continues.

A Man After My Own Heart

IMG_20120722_183857.jpg

I don’t know what it is about people born about the same time as me, like John Scalzi and Warren Ellis and Richard Evans, but ever time one of them creates a groundbreaking game, gets nominated for the Hugo, wins an award or lands on the moon, they always make me feel like I’ve been sitting on my ass.

Well, John Scalzi has beaten me to the punch again, this time by eerily mirroring events from my own life and blogging about them while I’m still digesting the events. He recently found a small stray cat, and blogged that has he decided he’s going to trap it, get it fixed and possibly tame it, because he’d “rather be a sap than have a dead kitten on [his] conscience.”

Boy, do I know this feeling. I also have “cat lover AKA sucker” written on my forehead, and I and my wife have been going through a similar arc. We spent the last three months socializing a little spray monster we’ve taken to calling Loki, and yesterday my wife took him to the vet to get him his shots and fixed. My wife thought it worthwhile to share some of what we’ve learned that made us choose to trap, neuter and release him, even though it might scare him off.

IMG_20120707_201030.jpg

We strongly suspect Loki is the brother or cousin of Gabby, the gold cat above that we adopted about two and a half years ago. While their coloration is starkly different, both are highly vocal longhaired cats with similar tails that seem to know each other. Loki’s tail has thinned alarmingly in the above photo, but they looked even more similar a few months ago.

Loki isn’t a feral cat: he’s a stray—that is, an abandoned cat. Feral means an unsocialized wild cat which wasn’t raised with human contact and won’t approach people willingly. Loki? After some initial skittishness, probably caused by either abuse (he’s afraid of feet) or our initial attempts to chase him off (after another stray cat invaded our home and attacked my wife), Loki’s approach distance rapidly dropped to zero, and he can be petted, picked up and will even lie in your lap. More tellingly, he knows how to claw and bite without ever drawing blood—a sign of early exposure to humans. Loki was someone’s pet, once.

Now he is again. We don’t know if he can ever become an indoor cat—he was a little spray monster, and when we realized he was coming in through our cat door and making our other cats spray, we had to eliminate the door. But clearly he’d come to rely on our home for a food source, and even when he was skittish, he meowed piteously, trying to beg even as he ran.

So, back to John Scalzi’s plan: he’s dead on the money. Even if you don’t want a stray cat in your yard, it does you no good to get rid of it. Not only is it inhumane, all you’re doing is opening a space in the local cat territory map for some other, possibly more annoying cat to come in and take it. The right thing to do is TNR: trap, neuter, return. This preserves the local territory, so no more cats move in, but stops the cats from breeding out of control and taking over the local wildlife.

We just spent several hundred dollars on examinations and shots for our three cats plus examinations, shots and neutering for Loki, but if you’re not planning on keeping the cat, there are probably local animal shelters who will do the neutering for a much more reasonable fee. And unless the cat is a sweetie, there are good reasons not to keep him.

graycat

If a cat you’re trying to tame becomes approachable, great; but don’t try to tame one that’s obviously feral and wants nothing to do with people. The cat that attacked my wife, Graycat (pictured above) was so close to feral that only I could handle him, and that was with gloves. I was making progress at it—I could pet him, even play with him with toys outside—but that emboldened him, and he came into our house, fought with our cats, and then tried to attack my wife. She had to fend him off with a broom, not hitting him but trying to push him away—and then he attacked the broom, before running off. Sadly, we can’t deal with cats that attack us, and had to have him put him down.

It’s better to make a judgment call, which John Scalzi is currently doing with his skittish kitten. I wish him the best of luck with that! As for us, we’re hoping Loki comes back. After the neutering, we released him, and he hasn’t yet returned. Sad to say, neutering can permanently change the personality of a cat for the worse; my wife has had two cats “ruined” by bad vet experiences.

Still, our vet is good, and Loki took to it better than our three other little monsters. Here’s hoping he returns, that he stops spraying once the hormones drain out of his system, and that he finds a good life here. But regardless, we’ve done our duty: we’ve made his life better, at least for a while, and cut back on the local cat proliferation, at least for a bit.

IMG_20120707_201715.jpg

Here’s hoping he forgives us for that, and comes back for the love. And the can food.

And the laser tag.

-the Centaur

Pictured: assorted furmonsters. Loki, Loki and Gabby, Graycat, and Loki again.

UPDATE: He came back!

IMG_20120816_234053.jpg

Twice. And he’s more affectionate than ever (though you can’t see that in these photo 🙂 …

IMG_20120817_081748.jpg

I think it’s safe to say he’s here to stay.