Press "Enter" to skip to content

30 search results for “better writer”

Persistence is Rewarded, Despair is a Mistake

centaur 0


So I’m proud to announce that “A Choir of Demons” was just accepted by Aurora Wolf magazine, with a projected release date of October 1st. More news as that gets finalized, but I’m more interested right now in the process by which this story was sold. Had I acted on feedback which made me despair on the story, I might have changed it ways that ruined it for its right home.

As I’ve documented before, I once sent my stories out to many places, only to get discouraged, and created a narrative that I’d sent them out until I exhausted the markets, and gave up. The reality was that several stories I told myself were no damn good actually got great feedback, but the markets that wanted to publish them went out of business.

Maybe those markets went under because they weren’t accepting better stories, but actually, many, many magazines went out of business right around that time, so I really was in a market contraction - and a time crunch, as I quit work on stories as my PhD ratcheted up, as I cut back writing because of RSI, and because I helped found a startup.

But when I started sending things out again, things got much better. I still get only a 15% acceptance rate, so on average I need to send a story to half a dozen markets or more before I get a success. But my latest story, “A Choir of Demons”, a steampunk police procedural which I wrote specifically for Analog or Asimov’s, wasn’t getting a lot of traction: it racked up almost a dozen rejections.

Most were form letters, but a few had detailed feedback. But that feedback was strange and contradictory. One complained that the beginning of the story didn’t get inside the character’s head … when the first two pages were primarily the protagonist’s reactions to her situation. Another complained the story wasn’t sufficiently standalone, when I tried to make it specifically standalone. And so on.

I was considering a major rewrite, but remembered Heinlein’s famous advice for writers: “Write. Finish what you write. Send your work out. Keep it on the market until sold. Only rewrite to editorial order” and so reactivated my subscription to the story-market service Duotrope, finding another dozen markets I hadn’t seen on the free listings on the similar site Ralan.

I have to give kudos to Duotrope - I found three markets that each responded almost immediately. The first two gave me prompt but nice rejections. The third was Aurora Wolf - whose editor passed on a few kind words which essentially called out “A Choir of Demons” as the kind of thing that they were looking for.

Had I limited myself to just a few markets, I might not have found a right home for “A Choir of Demons”. Had I changed the story to mold it to fit the markets that didn’t want it, I might easily have broken the things about the story that made it a good fit for its ultimate home.

So persistence is rewarded - but the road of persistence can get lonely at times, and it’s easy to lose your way. Don’t despair while traveling that road, or you might drive off the road straight into a mistake.

-the Centaur

Visualizing Cellular Automata

centaur 0


SO, why's an urban fantasy author digging into the guts of Mathematica trying to reverse-engineer how Stephen Wolfram drew the diagrams of cellular automata in his book A New Kind of Science? Well, one of my favorite characters to write about is the precocious teenage weretiger Cinnamon Frost, who at first glance was a dirty little street cat until she blossomed into a mathematical genius when watered with just the right amount of motherly love. My training as a writer was in hard science fiction, so even if I'm writing about implausible fictions like teenage weretigers, I want the things that are real - like the mathematics she develops - to be right. So I'm working on a new kind of math behind the discoveries of my little fictional genius, but I'm not the youngest winner of the Hilbert Prize, so I need tools to help simulate her thought process.

And my thought process relies on visualizations, so I thought, hey, why don't I build on whatever Stephen Wolfram did in his groundbreaking tome A New Kind of Science, which is filled to its horse-choking brim with handsome diagrams of cellular automata, their rules, and the pictures generated by their evolution? After all, it only took him something like ten years to write the book ... how hard could it be?

Deconstructing the Code from A New Kind of Science, Chapter 2

Fortunately Stephen Wolfram provides at least some of the code that he used for creating the diagrams in A New Kind of Science. He's got the code available for download on the book's website,, but a large subset is in the extensive endnotes for his book (which, densely printed and almost 350 pages long, could probably constitute a book in their own right). I'm going to reproduce that code here, as I assume it's short enough to fall under fair use, and for the half-dozen functions we've got here any attempt to reverse-engineer it would end up just recreating essentially the same functions with slightly different names.
Cellular automata are systems that take patterns and evolve them according to simple rules. The most basic cellular automata operate on lists of bits - strings of cells which can be "on" or "off" or alternately "live" or "dead," "true" and "false," or just "1" and "0" - and it's easiest to show off how they behave if you start with a long string of cells which are "off" with the very center cell being "on," so you can easily see how a single live cell evolves. And Wolfram's first function gives us just that, a list filled with dead cells represented by 0 with a live cell represented by 1 in its very center:

In[1]:= CenterList[n_Integer] := ReplacePart[Table[0, {n}], 1, Ceiling[n/2]]

In[2]:= CenterList[10]
Out[2]= {0, 0, 0, 0, 1, 0, 0, 0, 0, 0}

One could imagine a cellular automata which updated each cell just based on its contents, but that would be really boring as each cell would be effectively independent. So Wolfram looks at what he calls "elementary automata" which update each cell based on their neighbors. Counting the cell itself, that's a row of three cells, and there are eight possible combinations of live and dead neighbors of three elements - and only two possible values that can be set for each new element, live or dead. Wolfram had a brain flash to list the eight possible combinations the same each way every time, so all you have are that list of eight values of "live" or "dead" - or 1's and 0's, and since a list of 1's and 0's is just a binary number, that enabled Wolfram to represent each elementary automata rule as a number:

In[3]:= ElementaryRule[num_Integer] := IntegerDigits[num, 2, 8]

In[4]:= ElementaryRule[30]
Out[4]= {0, 0, 0, 1, 1, 1, 1, 0}

Once you have that number, building code to apply the rule is easy. The input data is already a string of 1's and 0's, so Wolfram's rule for updating a list of cells basically involves shifting ("rotating") the list left and right, adding up the values of these three neighbors according to base 2 notation, and then looking up the value in the rule. Wolfram created Mathematica in part to help him research cellular automata, so the code to do this is deceptively simple…

In[5]:= CAStep[rule_List, a_List] :=
rule[[8 - (RotateLeft[a] + 2 (a + 2 RotateRight[a]))]]

... a “RotateLeft” and a “RotateRight” with some addition and multiplication to get the base 2 index into the rule. The code to apply this again and again to a list to get the history of a cellular automata over time is also simple:

In[6]:= CAEvolveList[rule_, init_List, t_Integer] :=
NestList[CAStep[rule, #] &, init, t]

Now we're ready to create the graphics for the evolution of Wolfram's "rule 30," the very simple rule which shows highly complex and irregular behavior, a discovery which Wolfram calls "the single most surprising scientific discovery [he has] ever made." Wow. Let's spin it up for a whirl and see what we get!

In[7]:= CAGraphics[history_List] :=
Graphics[Raster[1 - Reverse[history]], AspectRatio -> Automatic]

In[8]:= Show[CAGraphics[CAEvolveList[ElementaryRule[30], CenterList[103], 50]]]


Uh - oh. The "Raster" code that Wolfram provides is the code to create the large images of cellular automata, not the sexy graphics that show the detailed evolution of the rules. And reading between the lines of Wolfram's end notes, he started his work in FrameMaker before Mathematica was ready to be his full publishing platform, with a complex build process producing the output - so there's no guarantee that clean simple Mathematica code even exists for some of those early diagrams.

Guess we'll have to create our own.

Visualizing Cellular Automata in the Small

The cellular automata diagrams that Wolfram uses have boxes with thin lines, rather than just a raster image with 1's and 0's represented by borderless boxes. They're particularly appealing because the lines are white between black boxes and black between white boxes, which makes the structures very easy to see. After some digging, I found that, naturally, a Mathematica function to create those box diagrams does exist, and it's called ArrayPlot, with the Mesh option set to True:

In[9]:= ArrayPlot[Table[Mod[i + j, 2], {i, 0, 3}, {j, 0, 3}], Mesh -> True]


While we could just use ArrayPlot, it' s important when developing software to encapsulate our knowledge as much as possible, so we'll create a function CAGridGraphics (following the way Wolfram named his functions) that encapsulates the knowledge of turning the Mesh option to True. If later we decide there's a better representation, we can just update CAMeshGraphics, rather than hunting down every use of ArrayPlot. This function gives us this:

In[10]:= CAMeshGraphics[matrix_List] :=
ArrayPlot[matrix, Mesh -> True, ImageSize -> Large]

In[11]:= CAMeshGraphics[{CenterList[10], CenterList[10]}]


Now, Wolfram has these great diagrams to help visualize cellular automata rules which show the neighbors up top and the output value at bottom, with a space between them. The GraphicsGrid does what we want here, except it by its nature resizes all the graphics to fill each available box. I'm sure there's a clever way to do this, but I don't know Mathematica well enough to find it, so I'm going to go back on what I just said earlier, break out the options on ArrayPlot, and tell the boxes to be the size I want:

In[20]:= CATransitionGraphics[rule_List] :=
   ArrayPlot[{#}, Mesh -> True, ImageSize -> {20 Length[#], 20}] &, rule]}]]

That works reasonably well; here' s an example rule, where three live neighbors in a row kills the center cell :

In[21]:= CATransitionGraphics[{{1, 1, 1}, {0}}]

Screenshot 2016-01-03 14.19.21.png  

Now we need the pattern of digits that Wolfram uses to represent his neighbor patterns. Looking at the diagrams and sfter some digging in the code, it seems like these digits are simply listed in reverse counting order - that is, for 3 cells, we count down from 2^3 - 1 to 0, represented as binary digits.

In[22]:= CANeighborPattern[num_Integer] :=
Table[IntegerDigits[i, 2, num], {i, 2^num - 1, 0, -1}]

In[23]:= CANeighborPattern[3]
Out[23]= {{1, 1, 1}, {1, 1, 0}, {1, 0, 1}, {1, 0, 0}, {0, 1, 1}, {0, 1, 0}, {0, 0,
1}, {0, 0, 0}}

Stay with me - that only gets us the first row of the CATransitionGraphics; to get the next row, we need to apply a rule to that pattern and take the center cell:

In[24]:= CARuleCenterElement[rule_List, pattern_List] :=
CAStep[rule, pattern][[Floor[Length[pattern]/2]]]

In[25]:= CARuleCenterElement[ElementaryRule[30], {0, 1, 0}]
Out[25]= 1

With all this, we can now generate the pattern of 1' s and 0' s that represent the transitions for a single rule:

In[26]:= CARulePattern[rule_List] :=
Map[{#, {CARuleCenterElement[rule, #]}} &, CANeighborPattern[3]]

In[27]:= CARulePattern[ElementaryRule[30]]
Out[27]= {{{1, 1, 1}, {0}}, {{1, 1, 0}, {1}}, {{1, 0, 1}, {0}}, {{1, 0, 0}, {1}}, {{0,
   1, 1}, {0}}, {{0, 1, 0}, {1}}, {{0, 0, 1}, {1}}, {{0, 0, 0}, {0}}}

Now we can turn it into graphics, putting it into another GraphicsGrid, this time with a Frame.

In[28]:= CARuleGraphics[rule_List] :=
GraphicsGrid[{Map[CATransitionGraphics[#] &, CARulePattern[rule]]},
Frame -> All]

In[29]:= CARuleGraphics[ElementaryRule[30]]

Screenshot 2016-01-03 14.13.52.png

At last! We' ve got the beautiful transition diagrams that Wolfram has in his book. And we want to apply it to a row with a single cell:

In[30]:= CAMeshGraphics[{CenterList[43]}]

Screenshot 2016-01-03 14.13.59.png

What does that look like? Well, we once again take our CAEvolveList function from before, but rather than formatting it with Raster, we format it with our CAMeshGraphics:

In[31]:= CAMeshGraphics[CAEvolveList[ElementaryRule[30], CenterList[43], 20]]

Screenshot 2016-01-03 14.14.26.png

And now we' ve got all the parts of the graphics which appear in the initial diagram of this page. Just to work it out a bit further, let’s write a single function to put all the graphics together, and try it out on rule 110, the rule which Wolfram discovered could effectively simulate any possible program, making it effectively a universal computer:

In[22]:= CAApplicationGraphics[rule_Integer, size_Integer] := Column[
CAEvolveList[ElementaryRule[rule], CenterList[size],
   Floor[size/2] - 1]]},

In[23]:= CAApplicationGraphics[110, 43]

Screenshot 2016-01-03 14.14.47.png

It doesn' t come out quite the way it did in Photoshop, but we' re getting close. Further learning of the rules of Mathematica graphics will probably help me, but that's neither here nor there. We've got a set of tools for displaying diagrams, which we can craft into what we need.

Which happens to be a non-standard number system unfolding itself into hyperbolic space, God help me.

Wish me luck.

-the Centaur

P.S. While I' m going to do a standard blogpost on this, I' m also going to try creating a Mathematica Computable Document Format (.cdf) for your perusal. Wish me luck again - it's my first one of these things.

P.P.S. I think it' s worthwhile to point out that while the tools I just built help visualize the application of a rule in the small …

In[24]:= CAApplicationGraphics[105, 53]

Screenshot 2016-01-03 14.14.58.png

... the tools Wolfram built help visualize rules in the very, very large:

In[25]:= Show[CAGraphics[CAEvolveList[ElementaryRule[105], CenterList[10003], 5000]]]



That's 10,000 times bigger - 100 times bigger in each direction - and Mathematica executes and displays it flawlessly.

The Future of Books is Bright

centaur 0


Some time ago my good friend Jim Davies said, "If I was a traditional publisher or bookstore owner, I'd be very worried about my business with the rise of ebooks" - and he's right. While the demise of the bookstore Borders may be more properly laid to the feet of Walmart and Costco than Kindle and Kobo, ebooks have disrupted the traditional publishing industry. Once you had to, like, go to a place and shell money to get a thick tome; now you can pull books out of the air into a wedge of magic in your pocket, sometimes for free. If I owned a publishing company or bookstore, I'd be worried: the number of people who buy traditional books is dropping, and from Borders to Borderlands to Bookbuyers to Keplers, bookstores are in trouble.

But are books? At the time I interpreted what Jim said as indicating the demise of books, but he didn't say that at all: he just pointed out the existential threat a business faces if two thirds or half or even just a third of its customer base disappears. A ten percent drop in a business's sales might mean the difference between smiles and Christmas bonuses all around and a death spiral that five years later closes the business's doors as prices inexorably rise and profit margins plummet. My fear was, as ebook readers get better and better and physical book purchasers got fewer and fewer, that the economies of scale would not favor book publishing. I had imagined that as fewer and fewer people bought books, the unit cost would go up, it would no longer be profitable to print books, and both books and bookstores would go away.

Now that I've helped found a small press, I've learned the economics don't work that way.

Once I thought that Barnes and Noble and similar stores would shift to an on-demand model, with shelves filled with single copies of books and with book printing machines behind the counter, running your order for your chosen edition while you got a cappuccino in the bookstore's Starbucks, and, hey, maybe that will happen. But one thing I didn't anticipate was the ability for print on demand distributors to create an effective and useful FedEx-like just in time model, where books are printed essentially as they're needed, rather than enormous stocks being kept on hand - and the other thing I didn't anticipate was applying paper arts to book production to create a new category of books as art, encouraging a bite-sized reading model and a love of the physically printed word. Now, I don't know the details of Amazon's or Barnes and Noble's warehousing model. I do know that most of the books you see above were printed just in time for a recent event, and all of them represent departures from the traditional publishing model.

Some people have argued that we’ve hit the bottom of the bookstore market and it is getting better; it isn’t clear whether Barnes and Noble will survive, but local bookstores are having a comeback - but it’s not hard to look at the march of technology and to assume that things are going to HAVE to change. We no longer print books on scrolls, or parchment; the printing press disrupted the illustrated books model, and online news sources have dealt a serious blow to the newspaper industry - I wish I had a picture of all the newspaper boxes in Mountain View; there are a dozen of them at two or three places, and they don’t have any real newspapers in them anymore, just free magazines. This industry has collapsed radically within the last few years, and it’s hard not to think the same thing will happen to books as e-readers get better and better.

But technological updates are not always replacements. Phone screens are not a replacement for watching TV, and TV is not a replacement for movie theaters. I’d argue that more movies are watched on cell phones than at any time in history, and yet the most recent Star Wars movie has made something like a billion dollars from people going to an actual darkened room to watch the movie with friends and a bucket of popcorn. Similarly, movie theaters are not a replacement for actual theaters, plays performed with real humans in front of a live audience: even though movies have largely displaced plays, they haven’t displaced them completely. Perhaps one day they will, if only in the sense of being able to expose a wider audience to that of a play; but the experience you have watching a real human playing a role right in front of you is completely different than the experience of film.

The same thing is true of books. Sorry, e-reader folks: your interfaces are a joke. The contrast is poor, scrolling is slow, you can’t easily make notes or create bookmarks or - oh, I’m sorry, are you about to say that your bad low resolution stylus and awkward commenting interface and hard-to-discover notes and general lameness are somehow a replacement for flipping through a book, tossing in a piece of paper, and writing a brief note? Oh, go on, try it. I’ll write an essay before you’re done figuring out how to leave a comment. The point isn’t that it isn’t technologically impossible to solve this problem - it’s that right now, the people who make e-books aren’t even trying. They’re trying to increase contrast and resolution and battery life and page refresh rates and e-book distribution. The things I want out of books - that tactile sense, rapid note taking, rapid access, discoverability, the ability to stack a set of them in a pile as a reminder - are literally twenty or thirty years away. E-readers are, technologically, at the days of vector graphics, when real books provide you a tactile feel and a random access interface that’s superior to the best 3D TV.

One day they’ll get there. And one might assume that those awesome e-readers of the future, with all the books in history on them, in sharp color, with a fast random access - I imagine something that looks actually like a large paperback book, with a hundred or so flexible pages, all in glorious color that you can flip through, mark up, whatever, except you only have to carry one book - will kill traditional bookstores. But then I go into Barnes and Noble and see a section of vinyl records and go what the hell? There’s no way that you could have told me ten years ago that we’d be in a world where we’re not just likely to move past CD’s, but to move past iPods with local storage in favor of streaming, but that at the same time vinyl is having a resurgence. Supposedly this is because DJ’s like to scratch records, and audiophiles prefer the analog sound. Who knew?

And yet, at the same time, the production of books themselves is getting better and better. They’re being printed on better paper, with better typography, better book design, color covers, printed and embossed covers, the whole nine yards. As a publisher, I’ve been going around collecting new examples of awesomely printed books and just in the ten or so years I’ve been looking at this really closely the entire production process of books has become stellar and awesome. Sometimes I’m sad when I get an old book on a topic I like and open it up to find pages that look like they’re typed up on a typewriter. Back in the late 70’s, when Douglas Hofstadter published Gödel, Escher, Bach, it was possible to produce awesome books with awesome typesetting, but it was an epic struggle; Donald Knuth reportedly spent eight years developing TeX to help him produce The Art of Computer Programming. Now these tools are available to everyone with a computer - I’m a Word junkie, but even I recently downloaded MacTex to my computer while sitting in an internet cafe. Now anyone can produce something that’s truly awesome and get it printed on demand.

SO I can’t see the future of books being anything but bright. Physical books are going to be around forever, at least as a niche product, and possibly more; they’re getting better all the time - but if they get replaced, it’s going to be by something even better, and even if they do get replaced en masse by something awesome, there will always be people who will love and preserve the printed medium forever, bibliophiles motivated by the same love as theatergoers, audiophiles, and lovers of fine art.

-the Centaur

An Outrage, But Hardly a Surprise

centaur 0


Recently one of my friends in the Treehouse Writers' group alerted me to the article "Sexism in publishing: my novel wasn't the problem, it was me, Catherine" in the Guardian. You should read it, but the punchline:

In an essay for Jezebel, Nichols reveals how after she sent out her novel to 50 agents, she received just two manuscript requests. But when she set up a new email address under a male name, and submitted the same covering letter and pages to 50 agents, it was requested 17 times.

“He is eight and a half times better than me at writing the same book. Fully a third of the agents who saw his query wanted to see more, where my numbers never did shift from one in 25,” writes Nichols. “The judgments about my work that had seemed as solid as the walls of my house had turned out to be meaningless. My novel wasn’t the problem, it was me – Catherine.”

Catherine Nichols' original article is up at Jezebel under the title Homme de Plume - go check it out - but the point of raising the article was to gather people's opinions. The exchange went something like this: "Opinions?" "Outrage?"

Yes, it's outrageous, but hardly a surprise. I've heard stories like this again and again from many women writers. (Amusingly, or perhaps horrifyingly, the program I writing this in, Ecto, just spell-corrected "women writers" to "some writers," so perhaps the problem is more pervasive than I thought). Science fiction authors Andre Norton, James Tiptree, Jr., C.J. Cherryh, Paul Ashwell and CL Moore all hid their genders behind male and neutral pseudonyms to help sell their work. Behind the scenes, prejudice against women authors is pervasive - and I'm not even referring to the disparaging opinions of the conscious misogynists who'll freely tell you they don't like fiction written by women, or the discriminatory actions of the unconsciously prejudiced who simply don't buy fiction written by women, but instead calculated discrimination, sometimes on the part of women authors, editors and publishers themselves, who feel the need to hide their gender to make sure their stories sell.

I am a guy, so I've never been faced with the problem of having to choose between acknowledging or suppress my own gender in the face of the prejudices of those who would disparage my existence. (Though I have gotten a slight amount of flak for being a male paranormal romance author, we got around that by calling my work "urban fantasy," which my editor thought was a better description anyway). As a business decision, I respect any woman (or man) who chooses a pseudonym that will better market their work. My friend Trisha Wooldridge edits under Trisha Wooldridge, but writes under T. J. Wooldridge, not because publishers won't buy it, but because her publisher believes some of the young boys to whom her YA is aimed are less likely to read books by female authors. The counterexample might be J. K. Rowling, but even she is listed as J. K. Rowling and not Joanne because her publishers were worried young boys wouldn't buy their books. She's made something like a kabillion dollars under the name J. K. Rowling, so that wasn't a poor business decision (interestingly, Ecto just spell-corrected "decision" to "deception") but we'll never know how well she would have done had the Harry Potter series been published under the name "Joanne Rowling".

And because we'll never know, I feel it's high time that female authors got known for writing under their own names.   

Now, intellectual honesty demands I unload a bit of critical thinking that's nagging at me. In this day and age, when we can't trust anything on the Internet, when real ongoing tragedies are muddled by people writing and publishing fake stories to push what would be otherwise legitimate agendas for which there's already enough real horrific evidence - I'm looking at you, Rolling Stone - we should always get a nagging feeling about this kind of story: a story where someone complains that the system is stacked against them. For example, in Bait and Switch Barbara Ehrenreich tried to expose the perils of job hunting … by lying about her resume, and then writing a book about how surprised she was she didn't get hired by any of the people she was lying to. (Hint, liars, just because it's not socially acceptable to call someone a liar doesn't mean we're not totally on to you - and yes, I mean you, you personally, the individual(s) who are lying to me and thinking they're getting away with it because I smile and nod politely.)

In particular, whenever someone complains that they're having difficulty getting published, there always (or should be) this nagging suspicion in the back of your mind that the problem might be with the material, not the process - according to legend, one SF author who was having trouble getting published once called up Harlan Ellison (yes, THAT Harlan Ellison) and asked why he was having trouble getting published, to which Harlan responded, "Okay, write this down. You ready? You aren't getting published because your stories suck. Got it? Peace out." Actually, Harlan probably didn't say "peace out," and there may have been more curse words or HARSH TONAL INFLECTIONS that I simply can't represent typographically without violating the Peace Treaty of Unicode. So there's this gut reaction that makes us want to say, "so what if someone couldn't get published?"

But, taking her story at face value, what happened with Catherine Nichols was the precise opposite of what happened to Barbara Ehrenreich. When she started lying about her name, which in theory should have made things harder for her … she instead started getting more responses, which makes the prejudice against her seem even stronger. Even the initial situation she was in - getting rejections from over 50 publishers and agents - is something that happens over and over again in the history of publishing … but sooner or later, even the most patient stone is worn away. Legendary writing teacher John Gardner had a similar thought: "The writer sends out, and sends again, and again and again, and the rejections keep coming, whether printed slips or letters, and so at last the moment comes when many a promising writer folds his wings and drops." Or, in Nichols' own words:

To some degree, I was being conditioned like a lab animal against ambition. My book was getting at least a few of those rejections because it was big, not because it was bad. George [her pseudonym], I imagine, would have been getting his “clever”s all along and would be writing something enormous now. In theory, the results of my experiment are vindicating, but I feel furious at having spent so much time in that ridiculous little cage, where so many people with the wrong kind of name are burning out their energy and intelligence. My name—Catherine—sounds as white and as relatively authoritative as any distinctly feminine name could, so I can only assume that changing other ethnic and class markers would have even more striking effects.

So we're crushing women writers … or worse, pre-judging their works. The Jezebel article quotes Norman Mailer:

In 1998, Prose had dubbed bias against women’s writing “gynobibliophobia”, citing Norman Mailer’s comment that “I can only say that the sniffs I get from the ink of the women are always fey, old-hat, Quaintsy Goysy, tiny, too dykily psychotic, crippled, creepish, fashionable, frigid, outer-Baroque, maquillé in mannequin’s whimsy, or else bright and stillborn”.

Now, I don't know what Mailer was sniffing, but now that the quote is free floating, let me just say that if he can cram the ink from Gertrude Stein, Ayn Rand, Virginia Woolf, Jane Austen, Emily Dickinson, Patricia Briggs, Donna Tartt, Agatha Christie, J. K. Rowling and Laurell Hamilton into the same bundle of fey, old-hat smells, he must have a hell of a nose.

But Mailer's quote, which bins an enormous amount of disparate reactions into a single judgment, looks like a textbook example of unconscious bias. As Malcolm Gladwell details in Blink, psychological priming prior to an event can literally change our experience of it: if I give you a drink in a Pepsi can instead of a Coke can, your taste experience will be literally different even if it's the same soda. This seems a bit crazy, unless you change the game a bit further and make the labels Vanilla Pepsi and Coke Zero: you can start to see that how the same soda could seem flat if it lacks an expected flavor, or too sweet if you are expecting an artificial sweetener. These unconscious expectations can lead to a haloing effect, where if you already think someone's a genius, you're more likely to credit them with more genius, when in someone else it may seem eccentricity or arrogance. The only solution to this kind of unconscious bias, according to Gladwell, is to expose yourself to more and more of the unfamiliar stimulus, so that it seems natural, rather than foreign.

So I feel it's high time not only that female authors should feel free to write under their own names, but also that the rest of us should feel free to start reading them.

I'm never going to tell someone not to use a pseudonym. There are a dozen reasons to do it, from business decisions to personal privacy to exploring different personas. There's something weirdly thrilling about Catherine Nichols' description of her male pseudonym, her "homme de plume," whom she imagined “as a sort of reptilian Michael Fassbender-looking guy, drinking whiskey and walking around train yards at night while I did the work.”

But no-one should have to hide their gender just to get published. No-one, man or woman; but since women are having most of the trouble, that's where our society needs to do most of its work. Or, to give (almost) the last word to Catherine:

The agents themselves were both men and women, which is not surprising because bias would hardly have a chance to damage people if it weren’t pervasive. It’s not something a few people do to everyone else. It goes through all the ways we think of ourselves and each other.

So it's something we should all work on. That's your homework, folks: step out of your circle and read something different.

-the Centaur

Pictured: Some art by my wife, Sandi Billingsley, who thinks a lot about male and female personas and the cages we're put in.

Send Out Your Work

centaur 0

Screenshot 2015-06-07 15.41.25.png

Robert Heinlein famously had five rules for writing:

  1. Write.
  2. Finish what you start.
  3. Refrain from rewriting except to editorial order.
  4. Put your story on the market.
  5. Keep it on the market until sold.

with Robert Sawyer's addendum's: #6: "Start working on something else."

Now, like all writing rules, these have limits. Take #3. Some authors write near-finished pieces on a first draft, but most don't. I've done that with a very few short pieces, but most of my pieces are complex enough to require several rewrites. As you get better and better at writing, it becomes easier and easier to produce an acceptable story right off the bat … so see rule #6.

Actually, there's a lot between rules #2 and #4. I revise a story until I feel it is ready to send to an editor … then I send it to beta readers instead, trusted confidants who can deliver honest but constructive criticism. When I feel like I've addressed the comments enough that I want to send it back to the betas, I don't; I send the story out to market instead.

Regardless, some stories won't ever sell. Many writers have a "sock drawer" of their early work (and many markets ask you not send them socks). Trying to read my first Lovecraft pastiche, "Coinage of Cthulhu," causes me a jolt of almost physical pain. Other stories may be of an unusual length or type, and for a long odd-genre story is indeed possible to exhaust all possible markets.

So what should you do with your odd socks? Some authors, like Harlan Ellison, are bold enough to share their very early work; other authors, like Ernest Hemingway, threw away ninety nine pages for each one published. Gertrude Stein reportedly shared her notebooks almost raw; Ayn Rand reportedly rewrote each page of Atlas Shrugged five or six times. So there's no right answer.

But again, it isn't that simple. I recently have been reviewing my work, and while I do have a few stories likely destined for the sock drawer, and a few stories which definitely need revision, there are others that I have never sent out, especially after a low point during graduate school when I got some particularly unhelpful criticism.

Many writers are creatures with delicate, butterfly-like egos … yet you need to develop an elephant's hide. Hemingway once said talking too much about the writers craft could destroy it, literally like brushing the scales off a butterfly's wing; John Gardner said he'd seen far too many promising writers crushed by one too many rejections.

When a good editor (*cough* Debra Dixon, ℅ Bell Bridge Books) hits you with hard criticism on a story, she's not trying to crush your ego: she's trying to tell you that this character isn't fleshed out, or the logic breaks down, or the story is dragging - or moving too fast. But not everyone's a good editor. Not everyone's even a good critic.

I've encountered far too many critics who can't critique constructively: critics who try to be clever by turning legitimate comments into deadly bon mots; critics who try to change the story by questioning your purpose, genre or style, critics who have their own ax to grind, including one who sent me a diatribe about why I should throw out my television.

And there are friendly critics, critics who never say anything bad about your story. Some people would say you should ignore them, but I disagree. First, you need a cheerleader to feed that delicate ego you're sheltering within that elephant's hide; second, if even your ever chipper cheerleader doesn't like a particular story, you better sit up and take notice.

But the stories in my low point weren't like that. Many of them got good internal reviews, and I was happy with them, but they were long, or slipstream, and I couldn't find markets for them. Or I was too tied up with the idea of high-paying SFWA markets. Or, more honestly, I just got busy and short shrifted them. But that opens up the question: how deep into my backlog do I go?

For me, answering these questions usually involves creating an Excel spreadsheet :-) which you see above. Clearly there was a low point in the data where I wasn't submitting anything, and I was going to spin a story of how I got discouraged … but a closer analysis tells a different story.

Story Writing.png

The dates are approximate here, but mapping a sliding window over cumulative submissions, we can see a pattern where I started writing shorts, then had a first sale, followed by a burst of creativity on the heels of that encouragement. After a while, I got more and more discouraged, hitting rock bottom when I stopped sending shorts out at all … but this is only short story data.

Actually, I was working on a novel as well.

Before my first sale, "Sibling Rivalry", I'd written a novel, HOMO CENTAURIS. That burst of creativity of shorts came in graduate school, when I deliberately didn't want to take on another novel-length project. I did get discouraged, but at the same time, I started a novel, DELIVERANCE, and finished another two novels, FROST MOON and BLOOD ROCK.

FROST MOON sold right when my short story writing was picking up again. It feels like I quit, but the evidence shows that I slowly and steadily sold stories both to open markets and to invited anthologies until very recently - and that there are as many stories circulating now as I was selling earlier.

So, maybe some of these will make it. Maybe they won't. But the data shows that feeling discouraged is pointless - my biggest sales came after my longest stretch of doggedly sending stories out. My karate teacher once said that most of your learning is on the plateau - you feel stuck, but in reality you're learning. The data seems to bear that out.

So if I had to redo Heinlein's rules, they'd go something like this:

  1. Write.
  2. Keep writing.
  3. Finish what you start.
  4. Circulate your work to get feedback.
  5. Edit your work to respond to that feedback.
  6. Send your edited work out to the markets.
  7. Don't wait to hear back … start writing something else right away.
  8. Keep circulating your work until sold, or you've exhausted all the markets.
  9. No matter what happens, keep writing.
  10. And never, never, never give up.

Time to practice what I preach …

Screenshot 2015-06-12 20.35.38.png

...and put more stories out on the market.

Screenshot 2015-06-12 22.00.38.png

-the Centaur

P.S. Axually, I'm doing a step not listed above … responding to editorial feedback on CLOCKWORK. Responding to feedback is explicit on Heinlein's list as #3, but an implicit consequence of #8 on mine. If you sell something, listen to your editor, but keep a firm grip on your own vision. That's hard enough it needs its own article.


centaur 0

Twelve Hours Later-Flierv3.png

I'm super stoked to announce that Jeremiah Willstone, my favorite steampunk heroine and protagonist of my forthcoming novel THE CLOCKWORK TIME MACHINE, will be appearing in two stories in the TWELVE HOURS LATER anthology!

Created by the wonderful folks at the Clockwork Alchemy writer's track, this anthology features twenty four short stories each focusing on a single hour of the day. My two stories are 3AM - "The Hour of the Wolf" - and 3PM - "The Time of Ghosts".

Here's a taste of what happened on Halloween of 1897 … at 3AM, the hour of the wolf:

Jeremiah Willstone ran full tilt down the alley, the clockwork wolf nipping at her heels.

Her weekend had started pleasantly enough: an evening’s liberty from the cloisters of Liberation Academy, a rattling ride into the city on a battered old mechanical caterpillar—and eluding the proctors for a walking tour of Edinburgh with a dish of an underclassman.

Late that night—or, more properly early Halloween morning—the couple had thrown themselves down on the lawn of the park, and his sweet-talk had promised far more than this ersatz picnic of woven candies and braided sweets; but before they’d found a better use for their Victoria blanket … Jeremiah’s eyes got them in trouble.

“Whatever is that?” she asked, sighting a glint running along the edge of the park.

“Just a rat,” Erskine said, proferring her another twisted cinnamon scone.

“Of brass?” Jeremiah asked, sitting up. “With glowing eyes, I note—”

Uh-oh! What have our heroes found? And what will happen later … at 3PM, the time of ghosts?

Half a mile under Edinburgh Castle, lost in a damp warren of ancient masonry lit only by his guttering candle, Navid Singhal-Croft, Dean of Applied Philosophy at Liberation Academy, wished he’d paid more attention to the ghost stories his cadets whispered about the tunnels.

Of course, that was his own fault: he led the college of sciences at the premiere military academy in the Liberated Territories of Victoriana, and he’d always thought it his duty to drum ghost stories out of the young men and women who were his charges, not to memorize them.

Now was the time, but where was the place? A scream echoed in the dark, very close—and eerily familiar. Shielding his candle with one hand, Navid ran through crumbling brick and flickering light, desperate to find his father before the “ghost” claimed another victim.

If he couldn’t rescue his father … Navid might never be born.

DUN DUN DUNNN! What's going to happen? You'll have to buy the anthology to find out!

Stay tuned to find out where to purchase it! I'm assuming that will be "everywhere".

Prevail, Victoriana!


Talent, Incompetence and Other Excuses

centaur 0

lenora at rest in the library with the excelsior

The company I work at is a pretty great place, and it's attracted some pretty great people - so if your name isn't yet on the list of "the Greats" it can sometimes be a little intimidating. There's a running joke that half the people at the firm have Impostor Syndrome, a pernicious condition in which people become convinced they are frauds, despite objective evidence of their competence.

I definitely get that from time to time - not just at the Search Engine That Starts with a G, but previously in my career. In fact, just about as far back as people have been paying me money to do what I do, I've had a tape loop of negative thoughts running through my head, saying, "incompetent … you're incompetent" over and over again.

Until today, as I was walking down the hall, when I thought of Impostor Syndrome, when I thought of what my many very smart friends would say if I said that, when I thought of the response that they would immediately give: not "you're wrong," which they of course might say, but instead "well, what do you think you need to do to do a good job?"

Then, in a brain flash, I realized incompetence is just another excuse people use to justify their own inaction.

Now, I admit there are differences in competence in individuals: some people are better at doing things than others, either because of experience, aptitude, or innate talent (more on that bugbear later). But unless the job is actually overwhelming - unless simply performing the task at all taxes normal human competence, and only the best of the best can succeed - being "incompetent" is simply an excuse not to examine the job, to identify the things that need doing, and to make a plan to do them.

Most people, in my experience, just want to do the things that they want to do - and they want to do their jobs the way they want to do them. If your job is well tuned towards your aptitudes, this is great: you can design a nice, comfortable life.

But often the job you want to do requires more of you than doing things the way you want to do them. I'm a night owl, I enjoy working late, and I often tool in just before my first midmorning meeting - but tomorrow, for a launch review of a product, I'll be showing up at work a couple hours early to make sure that everything is working before the meeting begins. No late night coffee for you.

Doing what's necessary to show up early seems trivial, and obvious, to most people who aren't night owls, but it isn't trivial, or obvious, to most people that they don't do what's necessary in many other areas of their life. The true successes I know, in contrast, do whatever it takes: switching careers, changing their dress, learning new skills - even picking out the right shirts, if they have to meet with people, or spending hours shaving thirty seconds off their compile times, if they have to code software.

Forget individual differences. If you think you're "incompetent" at something, ask yourself: what would a "competent" person do? What does it really take to do that job? If it involves a mental or physical skill you don't have, like rapid mental arithmetic or a ninety-eight mile-per-hour fastball, then cut yourself some slack; but otherwise, figure out what would lead to success in the job, and make sure you do that.

You don't have to do those things, of course: you don't have to put on a business suit and do presentations. But that doesn't mean you're incompetent at giving presentations: it means you weren't willing to go to a business wear store to find the right suit or dress, and it means you weren't willing to go to Toastmasters until you learned to crack your fear of public speaking. With enough effort, you can do those things - if you want to. There's no shame in not wanting to. Just be honest about why.

That goes back to that other bugbear, talent.

When people find out I'm a writer, they often say "oh, it must take so much talent to do that." When I protest that it's really a learned skill, they usually say something a little more honest, "no, no, you're wrong: I don't have the talent to do that." What they really mean, though they may not know it, is that they don't want to put in the ten thousand hours worth of practice to become an expert.

Talent does affect performance. And from a very early age, I had a talent with words: I was reading soon after I started to walk. But, I assure you, if you read the stuff I wrote at an early age, you'd think I didn't have the talent to be a writer. What I did have was a desire to write, which translated into a heck of a lot of practice, which developed, slowly and painfully, into skill.

Talent does affect performance. Those of us who work at something for decades are always envious of those people who seem to take to something in a flash. I've seen it happen in writing, in computer programming, and in music: an experienced toiler is passed by a newbie with a shitload of talent. But even the talented can't go straight from raw talent to expert performance: it still takes hundreds or thousands of hours of practice to turn that talent into a marketable skill.

When people say they don't have talent, they really mean they don't have the desire to do the work. And that's OK. When people say they aren't competent to do a job, they really mean they don't want to think through what it takes to get the job done, or having done so, don't want to do those things. And that's OK too.

Not everyone has to sit in a coffeehouse for thousands of hours working on stories only to find that their best doesn't yet cut it. Not everyone needs to strum on that guitar for thousands of hours working on riffs only to find that their performance falls flat on the stage. Not everyone needs to put on that suit and polish that smile for thousands of hours working on sales only to find that they've lost yet another contract. No-one is making you do those things if you don't want to.

But if you are willing to put those hours in, you have a shot at the best selling story, the tight performance, the killer sale.

And a shot at it is all you get.

-the Centaur

Pictured: Lenora, my cat, in front of a stack of writing notebooks and writing materials, and a model of the Excelsior that I painted by hand. It's actually a pretty shitty paint job. Not because I don't have talent - but because I didn't want to put hundreds of hours in learning how to paint straight lines on a model. I had writing to do.

The Centaur’s Guide to the Game Developers Conference

centaur 1


Once again it’s time for GDC, the Game Developers Conference. This annual kickstart to my computational creativity is held in the Moscone Center in San Francisco, CA and attracts roughly twenty thousand developers from all over the world.

I’m interested primarily in artificial intelligence for computer games– “Game AI” – and in the past few years they’ve had an AI Summit where game AI programmers can get together to hear neat talks about progress in the field.

Coming from an Academic AI background, what I like about Game AI is that it can’t not work. The AI for a game must work, come hell or high water. It doesn’t need to be principled. It doesn’t need to be real. It can be a random number generator. But it needs to appear to work—it has to affect gameplay, and users have to notice it.


That having been said, there are an enormous number of things getting standard in game artificial intelligence – agents and their properties, actions and decision algorithms, pathfinding and visibility, multiple agent interactions, animation and intent communication, and so forth – and they’re getting better all the time.

I know this is what I’m interested in, so I go to the AI Summit on Monday and Tuesday, some subset of the AI Roundtables, other programming, animation, and tooling talks, and if I can make it, the AI Programmer’s Dinner on Friday night. But if game AI isn’t your bag, what should you do? What should you see?


If you haven’t been before, GDC can be overwhelming. Obviously, try to go to talks that you like, but how do you navigate this enormous complex in downtown San Francisco? I’ve blogged about this before, but it’s worth a refresher. Here are a few tips that I’ve found improve my experience.

Get your stuff done before you arrive. There is a LOT to see at GDC, and every year it seems that a last minute videoconference bleeds over into some talk that I want to see, or some programming task bumps the timeslot I set aside for a blogpost, or a writing task that does the same. Try to get this stuff done before you arrive.

Build a schedule before the conference. You’ll change your mind the day of, but GDC has a great schedule builder that lets you quickly and easily find candidate talks. Use it, email yourself a copy, print one out, save a PDF, whatever. It will help you know where you need to go.

Get a nearby hotel. The 5th and Minna Garage near GDC is very convenient, but driving there, even just in the City, is a pain. GDC hotels are done several months in advance, but if you hunt on Expedia or your favorite aggregator you might find something. Read the reviews carefully and doublecheck with Yelp so you don’t get bedbugs or mugged.

Check in the day before. Stuff starts really early, so if you want to get to early talks, don’t even bother to fly in the same day. I know this seems obvious, but this isn’t a conference that starts at 5pm on the first day with a reception. The first content-filled talks start at 10am on Monday. Challenge mode: you can check in Sunday if you arrive early enough.


Leave early, find breakfast. Some people don’t care about food, and there’s snacks onsite. Grab a crossaint and cola, or banana and coffee, or whatever. But if you power-up via a good hot breakfast, there are a number of great places to eat nearby – the splendiferous Mo’z Café and the greasy spoon Mel’s leap to mind, but hey, Yelp. A sea of GDC people will be there, and you’ll have the opportunity to network, peoplewatch, and go through your schedule again, even if you don’t find someone to strike up a conversation with.

Ask people who’ve been before what they recommend. This post got started when I left early, got breakfast at Mo’z, and then let some random dude sit down on the table opposite me because the place was too crowded. He didn’t want to disturb my reading, but we talked anyway, and he admitted: “I’ve never been before? What do I do?” Well, I gave him some advice … and then packaged it up into this blogpost. (And this one.)

Network, network, network. Bring business cards. (I am so bad at this!) Take business cards. Introduce yourself to people (but don’t be pushy). Ask what they’re up to. Even if you are looking for a job, you’re not looking for a job: you want people to get to know you first before you stick your hand out. Even if you’re not really looking for a job, you are really looking for a job, three, five or ten years later. I got hired into the Search Engine that Starts with a G from GDC … and I wasn’t even looking.

Learn, learn, learn. Find talks that look like they may answer questions related to problems that you have in your job. Find talks that look directly related to your job. Find talks that look vaguely related to your job. Comb the Expo floor looking for booths that have information even remotely related to your job. Scour the GDC Bookstore for books on anything interesting – but while you’re here: learn, learn, learn.


Leave early if you want lunch or dinner. If you don’t care about a quiet lunch, or you’ve got a group of friends you want to hang with, or colleagues you need to meet with, or have found some people you want to talk to, go with the flow, and feel comfortable using your 30 minute wait to network. But if you’re a harried, slightly antisocial writer with not enough hours in the day needing to work on his or her writing projects aaa aaa they’re chasing me, then leave about 10 minutes before the lunch or dinner rush to find dinner. Nearby places just off the beaten path like the enormous Chevy’s or the slightly farther ’wichcraft are your friends.

Find groups or parties or events to go to. I usually have an already booked schedule, but there are many evening parties. Roundtables break up with people heading to lunch or dinner. There may be guilds or groups or clubs or societies relating to your particular area; find them, and find out where they meet or dine or party or booze. And then network.


Hit Roundtables in person; hit the GDC Vault for conflicts. There are too many talks to go. Really. You’ll have to make sacrifices. Postmortems on classic games are great talks to go to, but pro tip: the GDC Roundtables, where seasoned pros jam with novices trying to answer their questions, are not generally recorded. All other talks usually end up on the GDC Vault, a collection of online recordings of all past sessions, which is expensive unless you…

Get an All Access Pass. Yes, it is expensive. Maybe your company will pay for it; maybe it won’t. But if you really are interested in game development, it’s totally worth it. Bonus: if you come back from year to year, you can get an Alumni discount if you order early. Double bonus: it comes with a GDC Vault subscription.


Don’t Commit to Every Talk. There are too many talks to go to. Really. You’ll have to make sacrifices. Make sure you hit the Expo floor. Make sure you meet with friends. Make sure you make an effort to find some friends. Make time to see some of San Francisco. Don’t wear yourself out: go to as much as you can, then soak the rest of it in. Give yourself a breather. Give yourself an extra ten minutes between talks. Heck, leave a talk if you have to if it isn’t panning out, and find a more interesting one.

Get out of your comfort zone. If you’re a programmer, go to a design talk. If you’re a designer, go to a programming talk. Both of you could probably benefit from sitting in on an audio or animation talk, or to get more details about production. What did I say about learn, learn, learn?

Most importantly, have fun. Games are about fun. Producing them can be hard work, but GDC should not feel like work. It should feel like a grand adventure, where you explore parts of the game development experience you haven’t before, an experience of discovery where you recharge your batteries, reconnect with your field, and return home eager to start coding games once again.

-the Centaur

Pictured: The GDC North Hall staircase, with the mammoth holographic projected GDC logo hovering over it. Note: there is no mammoth holographic projected logo. After that, breakfast at Mo'z, the Expo floor, the Roundtables, and lunch at Chevy's.

Approaching 33, Seen from 44

centaur 0


I operate with a long range planning horizon – I have lists of what I want to do in a day, a week, a month, a year, five years, and even my life. Not all my goals are fulfilled, of course, but I believe in the philosophy “People overestimate what they can do in a year, but underestimate what they can do in a decade.”

Recently, I’ve had that proven to me.

I’m an enormous packrat, and keep a huge variety of old papers and materials. Some people deal with clutter by adopting the philosophy “if you haven’t touched it in six months, throw it away.” Clearly, these people don’t write for a living.

So, in an old notebook, uncovered on one of my periodic archaeological expeditions in my library, I found an essay – a diary entry, really – written just before my 33rd birthday, entitled “Approaching 33” – and I find its perspective fascinating, especially when you compare what I was worried about then with where I am now.

“Approaching 33” was written on the fifth of November, 2011. That’s about five years after I split with my ex-fiancee, but a year before I met my future wife. It’s about a year after I finished my nearly decade-long slog to get my PhD, but ten years before when I got a job that truly used my degree. It’s about seven months after I reluctantly quit the dot-com I helped found to care for my dying father, but only about six months after my Dad actually died. And it’s about 2 months after 9/11, and about a month after disagreements over 9/11 caused huge rifts among my friends.

In that context, this is what I wrote on the fifth of November, 2011:

Approaching 33, your life seems seriously off-track. Your chances of following up on the PhD program are minimal – you will not get a good faculty job. And you are starting too late to tackle software development; you are behind the curve. Nor are you on track for being a writer.

The PhD program was a complete mistake. You wasted ten years of your life on a PhD and on your ex-fiancee. What a loser.

Now you approach middle fucking age – 38 – and are not on the career track, are not on the runway. You are stalled, lacking the crucial management, leadership and discipline skills you need to truly succeed.

Waste not time with useful affirmations – first understand the problem, set goals, fix things and move on. It is possible, only if you face clearly the challenges which are ahead of you.

You need to pick and embrace a career and a secondary vocation – your main path and your entertainment – in order to advance at either.

Without focus, you will not achieve. Or perhaps you are FULL OF SHIT.

Think Nixon. He had major successes before 33, but major defeats and did not run for office until your age. You can take the positive elements of his example – learn how to manage now, learn discipline now, learn leadership now, by whatever means are morally acceptable.

Then get a move on your career – it is possible. Do what you gotta do and move on with your life!

It appears I was bitter.

Apparently I couldn’t emotionally imagine I could succeed, but recognized, intellectually, that if I focused on what was wrong, and worked at it, then maybe, just maybe, I could fix it. And in the eleven years that have past … I mostly have.

Eleven years ago, I was enormously bitter, and regretted getting my PhD. It took five years, but that PhD and my work at my search-engine dot-com helped land me a great job, and after five more years of work I ended up at a job within that job that used every facet of my degree, from artificial intelligence to information retrieval to robotics to even computer graphics. My career took a serious left turn, but I never gave up trying, and eventually, I succeeded as a direct result of trying.

Eleven years ago, I felt enormously alone, having wasted a lot of time on a one-sided relationship that should have ended naturally after its first year, and having wasted many years after that either alone or hanging on to other relationships that were doomed not to work. But I never stopped looking, and hoping, and it took another couple of years before I found my best friend, and later married her.

Eleven years ago, I felt enormously unsure of my abilities as a software developer. At the dot-com I willingly stepped back from a software lead role when I was asked to deliver on an impossible schedule, a decision that was proved right almost immediately, and later took a quarter’s leave to finish my PhD, a decision that took ten years to prove itself. But even though both of those decisions were right, they started a downward spiral of self-confidence, as we sought out and brought in faster, more experienced developers to take over when I stepped back. While my predictions about the schedule were right, my colleagues nevertheless got more done, more quickly, ultimately culling out almost all of the code I wrote for the company. After a while, I felt I was contributing no more and, at the same time, needed to care for my dying father, so I left. But my father died shortly thereafter, six months before we expected. I found myself unable not to work, thinking it irresponsible even though I had savings, so I found a job at a software company whose technical lead was an old friend that who had been the fastest programmer I’d ever worked with in college, and now who had a decade of experience programming in industry – which is far more rigorous than programming in academia. On top of that, I was still recuperating from an RSI scare I’d had four years earlier, when I’d barely been able to write for six months, much less type. So I wrote those bitter words above when I was quite uncertain about whether I’d be able to cut it as a software developer.

Eleven years later — well, I still wish I could code faster. I’m surrounded by both younger and older programmers who are faster and snappier than I am, and I frequently feel like the dumbest person in the room. But I’ve worked hard to improve, and on top of that, slowly, I’ve come to recognize that I have indeed learned a few things – usually, the hard way, when I let someone talk me out of what I’m sure I know, and am later proved right – and have indeed picked up a few skills – synthetic and organizational skills, subtle and hard to measure, which aren’t needed for a small chunk of code but which are vital as projects grow larger in size and design docs and GANTT charts are needed to keep everything on track. I’d still love to code faster, to get up to speed faster, to be able to juggle more projects at once. But I’m learning, and I’ve launched things as a result of what I’ve learned.

But the most important thing is that I’ve been writing. A year after I wrote that note, I gave National Novel Writing Month a try for the first time. I spent years trying to perfect my craft after that, ultimately finding a writing group focused just on writing and not on critique. Five years later, I gave National Novel Writing Month another try, and wrote FROST MOON, which went on to both win some minor awards and to peak high on a few minor bestseller lists. Five years after that, I’ve finished four novels, have starts to four more, and am still writing.

I have picked my vocation and avocation – I’m a computer programmer, and a writer. I actually think of it as having two jobs, a day job and a night job. At one point I thought I was going to transition to writing full time, and I still plan to, but then my job at work became tremendously exciting. Ten years from now, I hope to be a full time writer (and I already have my next “second job” picked out) but I’m in no rush to leave my current position; I’m going to see where it takes me. I learned that long ago when I had a chance to knuckle down and finish my PhD, or join an unrelated but exciting side project to build a robot pet. The choice to work on the emotion model for that pet indirectly landed me a job at two different search engines, even though it was the skills I learned in my PhD that I was ultimately hired for. The choice to keep working on that emotion model directly led to my current dream job, which is one of the few jobs in the world that required the combined skills of my PhD and side project. Now I’m going to do the same thing: follow the excitement.

Who knows where it will lead? Maybe it will help me develop the leadership skills that I complained about in “Approaching 33.” Maybe it will help me re-awaken my research interests and lead to that faculty job I wanted in “Approaching 33.” Maybe it will just help me build a nest egg so when I finally switch to writing full time, I can pursue it with gusto. Or maybe, just maybe, it’s helping me learn things I can’t even yet imagine how I’ll be using … when I turn 55.

After I sign off this blogpost, I’m going to write “Passing 44.” Most of that’s going to be private, but I can anticipate it. I’ll complain about problems I want to fix with my writing – I want it to be more clear, more compelling, more accessible. I’ll complain about problems I want to fix at work – I want to work faster, to ramp up more quickly, and to juggle more projects well while learning when to say no. And I’ll complain about martial arts and athletics – I want to ramp up working out, to return to running, and to resume my quest for a black belt. And there are more things I want to achieve – wanting to be a better husband, friend, pet owner, person – a lot of which I’m going to keep private until I write “Passing 44, seen from 55.”

I’m going to set bigger goals for the next ten years. Some of them might not come to pass, of course. I bet a year from now, I’ll have only seen the barest movement along some of those axes. But ten years from now … the sky’s the limit.

-the Centaur

Pictured: Me at 33 on the left, me at 44 on the right, over a backdrop shot at my home at 44, including a piece of art by my wife entitled "Petrified Coral".

Me and my dumb mouth

centaur 0

Screen shot 2012-11-23 at 11.33.42 PM.png

Axually, it's Dakota's dumb mouth at issue here, and while I'd love to include an extract ... ssh, SPOLIERS! But the point being, the day after Thanksgiving, I'm back on track for National Novel Writing Month. And this includes an evening hanging out with my friends at the wonderful Nola restaurant I'm so fond of. No pictures of that (phone battery gave out) but I do have a followup picture from my solo excursion to Cocola Cafe in Santana Row, where I finished out today's Nano:


I've done Nano enough times that I probably could have skipped today and even tomorrow if I wanted, just to hang out with my friends who are in town (staying at another friend's house). But this "vacation" isn't really a vacation for me: it's a writecation. Writing really is like a second job now: if I want to be a writer, certain things have to get done. In this case, it's Nano, and sending off acceptances and rejections for DOORWAYS TO EXTRA TIME:

Screen shot 2012-11-23 at 11.48.52 PM.png

You'll note a little asymmetry there: my coeditor, who's done this before, is way ahead of me contacting people about their stories. And those are just the acceptances. Argh. And then I've got to respond to Trish's comments on my own story, which, while I was proud of it before, now looks like it will need a lot of work. Sigh. This is why I like working with editors, I tell myself, they make my stories better. Sob. At least Nano is on track:


Of course, the second half of the story is a complete salsa, and I don't know where it's going, but there's a building, and it's on fire, and it's a spectral fire, that only starts once a year, and there's William Blake's spirit guide riding a tiger, and oh yeah Cinnamon wears a Santa hat, then threatens to punch him in the gut if she meets him in a dark alley. So yeah, I'm having fun, even if I briefly hit a little plateau there while recuperating from all that turkey.


Now, more mountain to climb! Onward!

-the Centaur

Can't find what you're looking for? Try refining your search: