Press "Enter" to skip to content

Posts published by “centaur”

+3200 words

centaur 0
... still on schedule, but still not ahead because I am still sick and crashed out for hours after Thanksgiving brunch (or maybe that was the turkey).

Still, Not good. I'd say it's time to go to the doctor but this on-again-off-again sniffle, cough, randomly crash out for three hours always seems like "it's getting better".

Even though it ruined half of my Thanksgiving day, I went to sleep last night actually thinking my cold was probably about over.

Today: carshopping, housecleaning, and, oh yeah, I need ~3800 words to stay on target, ~6500 to get back to where I should be if I'd been keeping up with 1666 words a day from the beginning, and 11,580 words to finish Nanowrimo completely.

+4500 words

centaur 0
35,078 words, 6,588 behind, 14,922 remaining.

Here's to a productive Turkey Day ... and the slight possibility of actually catching up. It would require 8,000+ words. But, since I'm not doing much for Thanksgiving ... not traveling myself, wife out of town, only have a brunch with friends ... it' s just within the realm of possibility.

Cross your fingers.

+7001 words

centaur 0
30,289 words complete; 19,711 words remaining, 9,711 words behind where I should be: 40,000 words.

Surely I can make that up tomorrow, if not by Thursday.

Time for pound cake. Then bed.

+4600 words…

centaur 0
...things progressing nicely. 23,288 words, 26,712 remaining. If I keep up this pace (not altogether likely, in fact, but here's hoping) I will actually finish Nanowrimo early.

+4100 words …

centaur 0
... now officially up to a rate which would see me to the finish line, though I still am almost as many words behind (17981) as I have written (18685). And this is with me still being sick. Bleah.

However, the good news is that I fell in love with the book last night. This is something every author needs to do with their novel, at some point, or they're never going to do it the justice it deserves, if they finish it at all. Well, I fell in love with Liquid Fire on the streets of Oakland last night ... at least the streets of Oakland as seen through the eyes of Dakota Frost.

-the Centaur

35,500 Words To Go…

centaur 0
... still a little slow, but pace picking up. Things progressing. Key discoveries in plot made.

Still, 35,000 words in nine days ... oy. I mean, Ok.

Why I’m Working From Home Tomorrow

centaur 1
So I've been sick this week, last Friday evening up until now, with what appears to be a severe common cold. I was actually working from home, at 50% power, for Monday and Tuesday, and came in late Wednesday; so today I was actually glad to get in. But I was coughing so badly that my boss at the Search Engine that Starts With a G (who was suffering from a similar cold with a similar time course) recommended I go home early.

If only I'd taken him up on that, rather than waiting to come home in rush hour:

side impact to a nissan pathfinder rear driver side door

In case you're wondering, I'm fine, the lady who hit me and spun off 360 degrees is fine, and the guy in the other car she caromed off of is also fine. But, I feel like crap. I wonder why?

side impact airbag deployed inside a nissan pathfinder

No, that's not a pillowcase stuffed into my "B" bar: that's a "Thank God for Side Impact" Airbag, post-deployment. And Thank God for SUV's: the Pathfinder took the brunt of the impact and didn't even get knocked out of its lane. I was rattled, my Bluetooth headpiece was knocked off and bounced off the other side of the car, and my Mom on the other end nearly had a heart attack as she heard a screech and then I got cut off ... but the Pathfinder didn't even get knocked out of its lane. Didn't swerve. Didn't stop. Didn't even slow down. Hell, it took me a half a mile before I could pull over.

Oh, drat, am I doing this out of order? I was southbound on the middle lane of California 85 in a clot of rush-hour traffic, talking to my mother with my Bluetooth headpiece, when I heard a screech then a bang and felt a jolt. I said, "hey, Mom, did you hear that?" and noticed that the Bluetooth headpiece was gone, my side was in pain, and a car was spinning off behind me in my left rearview mirror. I blinked, realized, "oh, shit, I'm in a vehicle that's just been hit" and quickly started to pull over in case there was a fuel leak or other catastrophic damage to the vehicle. But I was just past the join of 87 and 85, and none of the merging traffic would let me over for near half a mile. Finally, just as twilight turned to dark, I pulled over, scrambled out of the car, and waited for it not to catch on fire.

wider view of the side impact

When I was sure it was safe, I called Mom back, then began the long trudge back to the accident site, where three cars were stuck in the middle lane. I called out to make sure everyone was OK, and they called back to verify I had been in the truck. After fifteen minutes, traffic finally thinned enough for me to cross, by which time the first car (the witness) had disappeared. We discussed what happened, and as best as the three of us could determine, the lady who struck me hit her brakes too hard as traffic was knotting up, lost control, then rammed me, spun off, then hit him.

incomplete accident report

Miraculously, none of us were hurt, even after her 360 degree spin, and all three cars were drivable. A DMV truck arrived, stopped traffic so we could move their cars off to the side and take stock; after the other two cars drove off, he took me to my car and made sure I could drive off as well. The Pathfinder rode a little rough ... but she rode.

However, at 185,000 miles and four (4!) someone-rammed-into-me-for-no-good-reason accidents, the heroically-protective Nissan Pathfinder is probably going to be counted as totaled by the insurance company (call scheduled for sometime around 8-10am tomorrow, hence the "coming in late or working from home entirely" email to my boss and team at work).

Ah, Pathfinder, you did a good job, my friend...

the heroic nissan pathfinder


My next car? An SUV. A hybrid, of course...

-the Centaur

Shameless Filler

centaur 0
Yes, I'm trying to fill out those 1-blog-posts-a-day I promised at the beginning of the month. But there is a serious topic: I realized today, for reasons which will become clear shortly, that I'm just plain awful about blogging stuff that happens in my life. So that's going to change, shortly; however, it wasn't appropriate to put this message in that article. Go about your blogrolling business; nothing to see here.

TV Dinners: Doctor Who and Whole Foods Sushi

centaur 0
No pictures this time, forgot to take them.
  • Dinner: Whole Foods to-go sushi and tabbouleh. What can I say? Yum.
  • TV: Doctor Who: Survival. Not so yum. The last serial aired from the original series. I wish I hadn't seen it; outside an extraordinary career-ending performance by Anthony Ainley as the Master, it was one of the silliest and most nonsensical Sylvester McCoy episodes ever. What was the Master doing on the Cheetah planet? Why is it called the Cheetah planet in the first place? And how did the Doctor get back?
Must go re-listen to Enemy of the Daleks, the audio drama to rekindle my fond memories of the Seventh Doctor and Ace. Now that was some Doctor Who - and it made sense.

Back to my regularly scheduled sniffling, coughing, and bleary attempts to write code...

Liquid Fire @ 7479 words

centaur 0
~20,000 words behind schedule, 42,000 words to go. Fortunately I'm taking off the entire week of Thanksgiving and hiding in an undisclosed location until I'm caught up. A further taste, of raw unedited text:

“Sooo…” she said, still staring across the aisle. “What brings you to San Francisco?”

“Oh, hell,” I said, leaning back in the chair. I felt the baby in the seat behind me reach at my Mohawk, grabbing a thread of purple before her mother pulled her back. “I’ve got quite the agenda, but mostly … negotiating with people to establish some new rules for magic.”

“Rules for magic?” Granola Girl asked, brow furrowing. “Really?”

“Well, that, some other, uh, business, plus taking my daughter to colleges—”

“Go back to the rules for magic bit,” Granola Girl said—and no, really, I’m not making fun of her; she ordered yogurt-and-granola on the flight out. “Magic isn’t just ‘more than the sum of its parts;’ it transcends the parts that invoke it. You can’t reduce magic to something less than what it is. If you start putting rules on magic—a tabu on mana—you’ll cripple it.”

I let out my breath. I’d heard all this before. Heck, I had to break all the rules I knew just to start practicing magic. But to keep practicing magic, you had to be really careful, or it would kill you. And recently, I’d found that it could kill other people too.


Reading it I can already see things I want to fix. Not now. Must press onward.

-the Centaur

It is amazing how mentally freeing it is…

centaur 0
... to have just one more thing off your todo list. Really, I have just about as much to do now as I did before I finished the edits of _Frost Moon_. It's just that I feel much better about what I have left.

Completion. A wonderful feeling.
-the Centaur

Of course, be real…

centaur 0
...the idea you can make something happen if you "prioritize" it works only if you have enough time with which to make the time. Editing two novels and writing a third - all on deadlines, some of them tight - while working late many nights AND taking care of a new and extremely needy cat can lead to you crashing out repeatedly before blogging, and sometimes it's only after you've crashed early several nights but have been sniffling and coughing enough that only way you can sleep is on Nyquil that you realize, maybe, just maybe, you're fighting off a bug.

Meanwhile, Warren Ellis is fighting as many deadlines as I am while also writing a seven-volume epic mashup called War and Peace of the Worlds featuring the entire cast of Archie Comics turned gritty postmodern superheroes, is doing it all one handed on his Palm Pilot while using the other to lean on his cane as he climbs Mount Everest after having coughed up a lung ... and is still blogging three times a day.

@!$%##?!
-the Centaur

TV Dinners: Doctor Who and ‘wichcraft

centaur 0
doctor who enemy of the world and a sandwich

From the Doctor Who - Lost In Time DVD Set: Enemy of the World, a bit cheesy in parts but proving that Doctor Who can handle intrigue, Patrick Troughton can indeed act like two completely different persons, and Jaime McCrimmon (pictured) can be written as sharp and resourceful rather than a complete idiot. Overall, the Lost in Time collection both shows both the creaking corners of the old Doctor Whos as well as stunning moments when the show was just "on", as sharp or sharper as anything on the air today. Hint: almost anything involving the Daleks usually has a nice, tangy metal edge.

bacon, egg and frisee sandwich on ciabatta with gorgonzola

From wichcraft restaurant's cookbook of the same name, a bacon and egg sandwich with olive oil / red wine vinegar tossed frisee on a split ciabatta roll toasted on the inside with a thin layer of gorgonzola cheese, proving that you can make a sandwich into a gourmet meal. And that I don't particularly like gorgonzola, but that's not the fault of the sandwich; it actually went quite well with the rest of it.

-the Centaur

Latest Spam WTF

centaur 0
Some time back I received a spam email that was blank. This is understandable, actually; probably just someone trying out a list of email addresses. I also got one containing the cryptic text "podmena traffica test"; this turned out also to be a "spoofing traffic test". Now I've got a bit of comment spam, which also seemed mysterious, until I dug into it a bit. From my email:

Anonymous has left a new comment on your post "Why I Write":

I can not participate now in discussion - it is very occupied. I will be released - I will necessarily express the opinion. [url=DELETED]acheter levitra[/url] This rather good idea is necessary just by the way

Publish this comment.

Reject this comment.

Moderate comments for this blog.

The deleted URL is to a French eBay site, "acheter levitra" is French for "buy Levitra," which is a brand name of Vardenafil, which is, of course, a Viagra clone. So this is essentially random pseudo-English text with a "buy Viagra" link, depending on the 1% of people who click on such links and the 1% of people who buy to pay for the cost of putting this spam on my blog. Charming.

Comment reeejected.

-the Centaur

UPDATE: I got a similar post of with a less obvious spam form, targeting one of the more popular pages on my blog (can you say pooound cake?):
"I found this site using [url=http://google.com]google.com[/url] And i want to thank you for your work. You have done really very good site. Great work, great site! Thank you! Sorry for offtopic"

But the [url=XXX]TEXT[/url] pattern was a dead giveaway. A search on Google for ["[url=http://google.com]google.com[/url]"] - note that's the '[url.../url]' thing in double quotes; the outermost brackets are the syntax you use to indicate a chunk of text is a query, like [centaur] - SO anyway, a search on Google for that nonsense revealed that the exact text of that comment has appeared elsewhere. So this is just more comment spam, trying to see if comments are unmoderated here.

Comment flattering! But reeejected.

My Name is Gabby

centaur 1
gabby the cat
Once we were traveling the neighborhood late and found a small and collarless cat alone by the sidewalk. Near him, on the lawn, half crouched another cat lay, who froze then turned tail, disappearing in the cold night. Know that the stray cat well our passions read; it yet survives, became not some lifeless thing, but found hands that pet him and hearts that fed. And upon this doorstep these thoughts we hear:
My name is Gabby, Cat of Cats. Listen to my purrs, ye mighty tall people, and despair of anything but bringing me home and giving me can food and vaccinations!
Nothing else remains of that stray cat, all ribcage and scared, but a full belly and warm and level purrs that stretch far away.

-the Centaur, after Shelley.
gabby the cat

Five Days Behind

centaur 0
Between the new cat, work, finishing up Blood Rock, and business with Frost Moon, I've gotten far behind on Nanowrimo this month. But now I'm back on track, have finished a more detailed outline which solves some of my plot problems and gives me some fun crunchy stuff to work with ... and have finally caught up to my first day's target word count, ~1700 words (you need to do at least 1666 words a day to complete Nano). Hopefully things will speed up from this point ... need to do ~1933 words a day to finish successfully.

Data Mining for Satisfying the Finicky

centaur 1
graycatSo we have cats. Three, currently - Caesar, a rescue cat, Lenora, a shelter cat and Gabby, a stray cat - out of a lifetime population of five, including Nero, the brother of the rescue cat, who disappeared (probably eaten by coyotes), and Graycat, another stray cat, pictured, who we unfortunately had to have executed by the state (because only I could handle him, using gloves, and we were afraid he was going to come knife us in our sleep).

So the three remaining cats are somewhat finicky. There are foods they will love, foods they will grudgingly eat, food they will eat but puke up, and food they will (quite literally) try to bury as if it is crap. So I've been meaning for a long time to keep up a diary of the food choices and their reactions to find out what we can feed them.

Data mining researchers claim that getting high-quality input data is the hardest part of a machine learning problem, so I started off with some exploratory data collection in Excel. After letting (thoroughly washed!) cans pile up for a week in two bins, I entered these into a spreadsheet and started to figure out how the data should be represented. I ended up with these columns:
  • Brand: Fancy Feast, Nutro, etc.
  • Type: Regular, Max Cat Gourmet Classics, etc.
  • Flavor: Savory Salmon Feast, White Meat Chicken Florentine with Garden Greens, etc.
  • Consistency: Flaked, Pate, Grilled, etc.
  • Target: Adult or Kitten
  • Package: Can, Tray or Packet
  • Ratings: +1 or -1
This may seem overkill, but the goal would be to learn which brands, flavors and consistencies the cats like (hint: they do not like anything Grilled or Chunked) so I didn't want to leave anything out.

After collecting this data, I started to analyze it. First I sorted the data. Then I eliminated duplicates and added a Servings, AggregateRating and Average column, summing up the Ratings into the Aggregate so that if something got two +1 and one -1 rating it would get 3 Servings and a AggregateRating of 2. This I used to compute an Average, which I used to resort the table to see which brands worked best.

The problem is, this Average wasn't that meaningful. One vote for a flavor isn't as meaningful as three, because the cats aren't consistent. This is the inverse of the Law of Large Numbers: you need many ratings to generate a meaningful result in the presence of noise.

I decided to set the number of ratings I cared about at 3, based on anecdotal comments by Roger Schank, my thesis advisor's thesis advisor - who reportedly said you need to visit a restaurant three times to give it a fair rating, because a restaurant could have one off day or great day and you needed at least 3 ratings to get an idea of their consistency.

At first I decided to track this using a smoothed average, AggregateRatings / (Servings + 3), but this depressed the all-positive and all-negative scores more than I liked - that kind of smoothing function works only well if you have very large ranges of values. So I chose a simpler max-based approach of AggregateRatings / Max(Servings, 3), so that one serving would get a 33% positive or negative rating but three or more could max it out to 100% if they were consistent.

That enabled me to make some findings, but then I realized I'm an idiot. I'd picked up the smoothed average idea from Empirical Methods for Artificial Intelligence, a book any serious computer scientist should read. And I'd edited my data in the spreadsheet so I could compute that average. But what I should have been thinking about was The Pragmatic Programmer, specifically the tips Keep Knowledge In Plain Text and Use Source Control.

Why Keep Knowledge In Plain Text? The cats aren't just finicky; their tastes change, especially if you overfeed them one thing. So the date at which a cat turns on food is important. By entering it into Excel, I first had to have a computer on hand, which encouraged to let the cans pile up; so I lost both the date information and some of the rating information - a coarse grained +1/-1 rather than "Ate Instantly"/"Ate Completely"/"Left Unfinished"/"Refused or Puked Up"/"Tried to Bury". A superior strategy would have been a pen-and-paper notebook where I recorded the cans a few hours after they were eaten. This could be entered into a text file a few days later, and if it is tab or comma separated Excel could easily import it. Then, with that data, I could even have applied other techniques from Empirical Methods for Artificial Intelligence, like using a sliding time-series window to ensure I'm analyzing the cat's current tastes.

And why Use Source Control? Because I edited my Excel file, dummy, not even versioned with v1 v2 v3 like I do with documents. So I actually entered this data in two phases and some of the temporal information I could have recovered has been lost.

So I'm going to improve my procedures going forward. Nevertheless, I did get some nice preliminary data, which jibes well with the observations Sandi and I had made informally. I'm going to hold judgment until I have more data, but so far Fancy Feast is the best brand, and Cod, Sole and Shrimp Feast and Savory Salmon Feast are the winningest flavors. Newman's Own Organics and Halo Spot's Stew were the worst brands - the cats refused to even touch them - which is odd, because Newman's Own makes great human food (try Newman O's) and Halo makes great dry food the cats love.

More results as the votes continue to trickle in...
-the Centaur