Deirdre Saoirse Moen

Sounds Like Weird

Work Arcade

28 November 2013

So Kenneth Kuan, the outgoing guy at Penny Arcade, has spoken up about the position he’s leaving And toomanyjens has ripped into that. Before Kenneth posted, I’d previously commented on PA’s job listing.

For a bit about my background: I’ve been in the computer industry longer than Kenneth Kuan’s been alive. I’ve seen and heard a lot in the industry that is disgusting and vile on levels that Penny Arcade hasn’t touched. Pink slip fire drills. The “nobody pisses on me” episode that involved actual urination. And firing (of the people whizzed on, just for clarification). And the mortuary vulture capitalists that were using life insurance payouts for AIDS sufferers to fund tech startups.

The Penny Arcade stuff is far more ordinary evil, the kind that some people, like Kenneth Kuan, have bought into.

For the record, I’ve done web development (for companies like Nissan and PGP), software development (for companies like TiVo and Nortel), sysadmin and DBA (for companies like Honda), and general IT work though the last is the weakest of those four. In other words, I am also a unicorn, so I know whereof I speak.

Work-Life Balance Isn’t Just About Time Off

I’ve only had one job ever where I felt that everything I was interested in, no matter how peculiar, was relevant: when I was a bookseller at Kepler’s during the dot bomb era when most of the people we knew who’d been in tech were unemployed. I felt weirdly guilty that a non-tech job gave me this particular satisfaction that no job in tech ever has.

The point of work-life balance is to be able to have time to invest in those parts of who you are that aren’t describable by your job alone. I offer the following phrase out of Kenneth’s own post:

but I have goals that won’t be fulfilled by working there

Yes. But see? That’s true of pretty much everyone, pretty much all of the time. It doesn’t matter how wonderful your job is, how cool the technologies are you work with, how amazing the people are.

Even if you own your own company, part of your goals will involve things for which people won’t pay you money. Or enough money. Kids are a classic example of that.

The point is: you’re a complex individual who has a lot of goals and interests. It’s great to have a job that fits those as much as possible, but it’s actually impossible to have a job that fully fits who you are. Work-life balance is about having the opportunity to be all of yourself.

In other words: Kenneth, despite his protests to the contrary, is in fact leaving because of work-life balance issues. He just can’t see it from where he is. He says he’s not burned out, but he’s been there, what, two years? That’s barely enough time for a good singe.

I think the line that got me the most was this one:

Want to go on a hike somewhere there’s no reception? Sorry, you can’t.

I’d have missed the best opportunities I had in 2013 if this were true, and not just because of the number of hours I spent on a plane. I had no cell reception in Federated States of Micronesia, Maldives, or Myanmar, all of which were amazing to visit.

If you can’t fully detach, then you can’t really be who you are. This is why on-call rotation is so much more helpful in dealing with stress and preventing burnout.

Happy Thanksgiving, Kenneth. May your new career be far more rewarding for you.

Read More

So You Want to Travel the World

28 November 2013

Indiegogo campaign page.

Hi, I’m Deirdre.

As a kid, I was given a globe, and I was fascinated by it. I kept imagining that I would go to all these wonderful places, especially the islands where all the lettering squished together on the globe. Or weird places like Ifni, which was on my globe and existed for only 11 years as a separate province.

For years, I traveled for business only, and I was able to travel to several continents. I wanted to travel for pleasure and had a long list of places I wanted to visit, but no real idea of how to make things happen. So many places to go. So many things to see. Learn how to reduce the possibilities to a manageable list, then how to plan your trips.

Then, earlier this year, I had a once-in-a-lifetime trip planned. Eight days before I was due to leave, I had a wrench thrown in my plans and had to either a) scrap the trip entirely, b) have it suddenly cost thousands of unplanned dollars more; or c) change my trip so fundamentally that it no longer resembled what I originally planned. Learn coping strategies for adversity.

It’s a big world. Let me help you get out there.

My Background

While I’ve primarily been a software engineer most of my life, most recently at Apple, I’ve also worked in the travel industry.

For (now defunct, but not my fault) Eastern Airlines, I was a reservationist with the group booking desk, planning trips for the Caribbean and northern South America. You can see an old Eastern Airlines route map here.

I’ve also worked in several capacities on several cruise lines, mostly Premier Cruise Lines (also now defunct, but also not my fault), from purser to medical records consultant to computer consultant–also mostly in the Caribbean.

More recently, I worked in reservations at (the still existing, yay) Classic Vacations, the luxury division of Expedia. Like everyone, I started on the Hawaii desk, booking custom air-and-hotel packages for travel agents’ clients. Then I expanded to the other locations they had at the time: Mexico, Canada, Caribbean, and Europe. Eventually, I worked in product development as a product administrator, specializing in Turkey and Western Canada.

Here’s a map of my travels in 2013. (233,863 km or 145,316 miles)

As a traveler, I’ve been to 61 countries as recognized by the United Nations, or 88 countries and territories as recognized by the rather-more-liberal Traveler’s Century Club. I’ve been around the world twice. After I failed to go around the world twice. I’ve visited six of the seven continents, five of them more than once.

All of which is a long-winded way of saying: I get this. This isn’t yet another Indiegogo campaign about someone wanting to fund their first trip to Europe.

I’ve delivered sixteen published books on time. In my past, I wrote twelve short adult western novels under pseudonyms. I have published four technical books through Que and Sams, and had a daily column of Linux tips for Earth Web in 1999.

The Calendar (and its pictures)

I also occasionally take decent photos, as you can see from the calendar here.

Note About Postcard Perks

Physical postcards can, unfortunately, take a long time to deliver. I always send myself a postcard at the same time as I mail them to others. When I sent postcards in early April from the Maldives, I received them in July. That’s unusual, but three to four weeks is not unusual.

There’s also a special case for Pitcairn: a) it’s one of the most remote islands in the world with very limited shipping to and from the island; b) there’s always the possibility we won’t be able to go ashore at all. Pitcairn has no airport and no harbor and is one of the most isolated places people live on Earth.

Because of delays in delivery, I’m also offering a virtual postcard, by which I mean a pretty photo I took at the location in question, e-mailed either from the location (available bandwidth permitting) or shortly thereafter, using a postcard application on my iPhone.

I’ll also take photos of the fronts and backs of postcards I send.

Why I Need Your Help

There are a bunch of other software engineers in the world, but there aren’t that many people who could–or would–write this book.

Historically, I can’t do significant amounts of writing at the same time as I’m doing software development. It uses too much of the same mental processes, unfortunately. In order to get this book written, I need to spend my time writing the book, not doing other things like looking for software engineering contracts or learning or refreshing existing skills. I need to turn down or delay other work in order for this book to happen.

Additionally, I’ve recently written part of a novel draft. The idea, synopsis, and opening was strong enough that I won $150 (2nd place) at a writer’s conference and was asked for a full manuscript (rare) by an agent at that conference. Story here. So I’d be putting this project on hold, too. The reality of traditional publishing timelines is such that it’s not particularly likely this book would provide income in 2014.

I’ll have expenses for software (updating InDesign) to produce the physical books, as well as expenses related to cover design and editing services. Ideally, I’d like to get my camera repaired.

I have two (already paid for) trips coming up where I’ll be able to talk to people who are even better traveled than I am. We’ll be on a segment (partial) world cruise. I’ve been trying to get on one of these my whole life, and this is an opportunity to write about it.

After It’s Over

Once my hand recovers from all the typing and signing….

My plan is to continue to self-publish So You Want to Travel the World in both electronic and paper form, then go on to publish the occasional travel journey as a separate short book.

Read More

Some Self-Published Love

27 November 2013

Now that I’ve whinged a bit on self publishing issues, I thought I’d spend time giving some love to some self-published authors whose books I love. I’ve picked from quite a few genres here.

Self-Published Books That Sold To Publishers

In one of the first sales of its kind, John Scalzi sold Old Man’s War to Tor after serializing it on his blog. It was nominated for a Hugo award in 2006 and optioned for a film in 2011, and it was largely on the basis of this book that he won the Campbell award. Not too shabby.
Jay Crownover self-published Rule, a new adult romance, then picked up a publisher for it. It’s the first new adult book where I really got the category, and it’s well-written and realistic. I loved this book, one of my favorites of the year. And, okay, the cover’s full of win. Here’s a gushing review by someone who does read a lot of new adult. I agree: the characters are really distinct and interesting, and it’s well done. I also read Jet, but didn’t love it quite as much. Still a very good book, though. Can’t wait for Rome.

Self-Published Books That Stayed Self-Published

Jenny Trout became infamous for her take-down of E.L. James’s 50 Shades of Grey (et seq). It was really enlightening to read some of her takes on consent issues in the books, and make me think about things that are important. She talks about this from the perspective of someone in a long-term BDSM relationship. And then she went and wrote (as Abigail Barnette) The Boss, which was serialized in a blog, and The Girlfriend, which was e-book only. Those are parts 1 and 2 of a trilogy. It’s erotic romance and adults only. (I’ve linked to Smashwords, but these are also available through other services, too.)
Sarah Stegall wrote Deadfall, a mystery about the ghost of Wyatt Earp in present-day San Francisco. Sample is here. Disclaimer: Sarah’s in my writing group, so I read this prior to publication. She can actually write, and she has a passion for San Francisco that I love.
Dario Ciriello wrote a great book about his family moving to Greece. And then not. It’s called Aegean Dream. He’s excerpted the tale of his first Easter in Greece in this blog post. If you want to know why Greece’s economy is so screwed up, this book has that story on a micro level. It’s amazing they have a country at all. Disclaimer: I’ve been in the same writing group with Dario, and we nearly visited him in Greece in 2007, but, you know, things fell apart. See: Greece.
Those are a few that I’ve seen, but I’ve always been interested in others, too.
Note: in comments, its okay to promote your own work on two conditions: a) you have a sample that I can read on your website, b) you don’t mind my commenting on it (there’s always a risk I won’t like it).

Read More

Miscellaneous Thoughts on Self-Publishing

25 November 2013

When I was the head of programming for a local convention, I always cringed when someone self-published wanted to be a panelist.
It’s not that the self-published had little to say, or that they couldn’t be interesting. It was the baggage that tended to come with: wanting a place (often in the sold-out dealers’ room) to sell their books directly to customers, wanting to hijack panels to talk about their publications rather than the topic, wanting to hide the fact that they were self-published. In one case, a prospective panelist vehemently denied being self-published even after I went and looked up his “publisher’s” corporate registration and called him on it.
There’s no shame in being self-published, okay? Never was, never will be.
The issue comes in what a person who’s only been self-published can speak to vs. what someone who’s been traditionally-published can. If people want to hear (as many do) about experiences selling to industry editors, that’s not something the self-published can talk about with any authority. But they will always volunteer, in my experience.
Just. Don’t. It’s fucking annoying.
Especially these days, where a lot of traditionally-published writers are self-publishing their backlist or oddball works, the traditionally-published who’ve also self-published (aka hybrid-published) still have an advantage talking about self-publishing because they have informed opinions about which works for a given piece — and why. That may actually be more useful than a panel on self-publishing per se.
But there I was, having to make too many decisions about authors late at night, and all I had was their emails, websites, and Amazon (et al) to go by.

Let’s Give an Example

I happened to be searching on Google a couple weeks ago and came across an author site for a self-published author I don’t know. So, I’m sorry author-I-don’t-know, I’m going to use this site site as an example of what not to do.
First, let’s open the page for a random book on the author’s site.
Starting from the top of the content area (don’t get me started on the author platform in the menu):

  1. The first thing you see about a book shouldn’t be the literary prizes, especially not “buy the prize” offerings like this one. Above the fold should be a short synopsis (like this site has). See? [Update: she’s removed those links. Yay!]
  2. I’m not generally a fan of putting reviews before the synopsis, but it works for me if I can see the synopsis without scrolling. On the example site, I can’t.
  3. If you are a self-published author and you do not put an excerpt on your site, you are telling people that you think you’re a bad writer. I cannot emphasize this enough. Especially if you’ve paid over $100 to get literary prizes to attempt to lure buyers. [Update: she has now added an excerpt. Yay!]
  4. Reviews: 3-5.
  5. Do not post pingbacks from your own site on your site. That just looks stupid.

If you know anything about marketing and lead conversion and stuff like that, you’ll know the following: the fewer clicks it takes someone to get to what the reader wants, the more likely they will stick around and get it from you. Also, look at the way most sites are designed: you only send someone outside your little garden if there’s an actual need.
Sure, someone could follow a link off-site and get an excerpt of your writing. Is that what you want? For them to be distracted by all the other authors’ books? Maybe buy a DVD of Vin Diesel instead of your story? Perhaps they’ve forgotten all about that colored titanium spork they were looking for. Until now.
Do the lifting on your site. Look, no one’s going to sell to everyone. It’s the way it is. At Milford, we’d say, “I’m not your target audience.” However, some people will be captured, and those people you want to capture as soon as possible.
Which you can only do when you’ve got an excerpt on your site, right?

Show That You’re Interesting

Unfortunately, this site is pretty typical of what I see from self-published writers. There’s a whole bunch about “being a writer” and not a lot about being a generally interesting person that might be interesting to have as a panelist — or whose book may be interesting to read. The blog largely consists of cross promotion that can come off as a circle jerk (even though it is the most interesting content). Though I will give her props for having more interesting blog content than I’ve seen on some similar sites.
A few weeks ago, I was at a technical talk, and a woman who was interested both in math and traditional art was asking around for advice. She was insecure because others knew more than she did.
As a generalist, I feel this problem all the time. I’m rarely the person who knows the most about X, whatever X is. But if you happen to want to have a topic-shifting conversation about sound recording, the history of astronomy, SQL quirks, Leica cameras (and rangefinders vs. SLRs generally), similarities between Middle Egyptian and Hawai’ian languages, fascinating aspects of virology, writing Cocoa applications, and a bunch of random other stuff, well, I’m probably on your short list.
What I said to the woman was: the aggregate of what you’re interested in vs. what you’re not interested in is unique. Look carefully at what you care about vs. what you care less about, then look at what you don’t care about and what you really don’t care about. That combination makes you different, and you can use that to find your way into the right career track.
If you’re a writer and talk about what you’re interested in on your web site, some of the people who come to your web site will care about some of those things. Others will find your web site because search engines noted that you used those words, and they’ll lead other people to your pages.

An Example

So I take a lot of travel photos. I’d like to think I’m good at them. I’ve had a flickr account for over 8 years. I’ve posted a few of my travel photos on flickr here and there.
But my most popular photo is this one, taken at a chairmaking class with master craftsman Brian Boggs a few years ago at Northwest Woodworking Studio. It’s not a great photo. It’s not about the glory of sunsets. It’s about a good old-fashioned honest tool: a shaving horse (used to clamp an irregularly-shaped piece of wood while using tools on it, like so).
Probably, when you think of me, traditional woodworking doesn’t come to mind. That’s okay. It’s a part of who I am.
That photo is also three times more popular than the first photo that’s not about traditional chairmaking: a photo of a couple in the Mediterranean, taken from a beach near Alexandria, Egypt. They were the only couple there that day.
The story, as we were told, is that women on public beaches in Egypt are pretty much not allowed to go into the water. They aren’t prohibited from it per se, they’re just shamed into not doing it. So women who want to swim use private beaches, which this was one of. Some modern women swim in rather modest swimsuits, but going into the water in traditional dress isn’t unheard of. But that’s not why the photo’s unusual.
What’s led almost 350,000 views to my flickr pages is the sum and aggregate of who I am. I post irregularly and in weird increments, posting nothing for months at a time, then posting just one photo here and there. If I actually tried to game it, I’m sure I could get a lot more views even if my photos weren’t any more interesting than they are now.
What would have been a mistake, though, would be not posting about chairmaking because I thought people wouldn’t be interested in that part of me. Clearly, there are quite a few avid traditional chairmakers out there.


Because long post is long, I have two stories.

Story the first

Here’s a funny moment out of that class that I’ve never shared, but it’s one of the moments that sticks with me (apart from the moment where I cut myself with a drawknife and was embarrassed so I superglued myself back together so no one would know). The back legs were steam bent, and I had watched the other people force theirs into the forms we’d built to hold the leg in place while it dried.
I am not a small woman, but I am extremely strong. I was seriously worried that I was going to break the rear leg bending it to the form. I had visions of the wood splintering into bits–and we had had people try to bend the legs too quickly (or with too little steam), causing exactly that to happen. Instead, I found that I didn’t weigh enough to force the leg into the form using only my strength, and two guys pitched into help. Thanks, guys.
Every weird experience you have, like that one, is something that makes you different than everyone else out there. Use your distinctiveness.

Story the Second

I was at a convention talking with a BNA (big-name author) who’d published a lot of books and won a lot of awards, who turned the tables on me. Asked what kind of book I was writing.
I gave him the elevator pitch.
“Oh, I couldn’t write that,” he said.
It stopped me cold. I was stunned. “What do you mean, you couldn’t write that?”
“Your character’s on open ocean in a small boat. I’m afraid of water. Hotel pool’s okay, but that’s enough water for me.”
Which is why my favorite piece of writing advice isn’t, “Write what you know,” but, rather, “Write the book that only you can write.”
Now go make a web site to match that.

Read More

Some Things Need To Be Mocked: Penny Arcade Edition

25 November 2013

Like this job posting.

  1. “We’re terrible at work-life balance” vs. “You need to have a crazy-person level of attention to detail” — which requires, you know, sleep. And downtime. Look, read Tom DeMarco’s book Slack.
  2. “A BA/BS or greater degree in Computer Science or a related field” vs. “Annual Salary: Negotiable, but you should know up front we’re not a terribly money-motivated group. We’re more likely to spend less money on salary and invest that on making your day-to-day life at work better.” So you should know that those student loans you almost certainly have aren’t going to get paid. Nor are you going to be able to afford a decent enough look to warrant being on camera.
  3. “Annual Salary: Negotiable, but you should know up front we’re not a terribly money-motivated group. We’re more likely to spend less money on salary and invest that on making your day-to-day life at work better” vs. “Flexibility to travel up to 30% of the time.” I know people who travel for a living where the taxes on their airline tickets alone exceed their annual salary. Travel is expensive. Travel 30% of the time is expensive. So, this is utter horseshit. The planes and hotels are worth more than the employee — that’s what this is saying.
  4. “We are quite literally looking for a person that can do four jobs.” You’ve got 15-20 people already, you are large enough for some specialization.
  5. “We’re looking for a web developer / software developer / sys admin to join our small family.” It’s not a family. It’s a job. The brick does not love you.
  6. “So yes, we run lean. Most of us would say maybe a little TOO lean, but being pushed to your limit is part of the job.” Listen worm, if I’m going to go into BDSM as a career path, it’ll be as a dominatrix.
  7. Note that there’s no statement of non-discrimination in said job posting. Which should be obvious with this line: “You should have no problems working in a creative and potentially offensive environment.” Especially given Penny Arcade’s history of being, well, offensive.
  8. More interesting commentary here in Christopher Buecheler’s post.

Read More

2014 Calendar: My Travel Photography

25 November 2013

I started making calendars in iPhoto in 2007, using travel photos for the year.

I didn’t make one the last two years, which is really a shame, so this year I relaxed my rules a bit. Normally, I want photos from December of the year before to November of the current year for next year’s calendar, and I try to show the diversity of places we’ve visited.

This year, the goal is to show as many of the Travelers Century Club regions as I’ve been to in the last couple of years. Most of these are iPhone photos, by the way.

Cover photo: Hong Kong (June, 2012), Asia

This photo was taken from the Macau ferry on what was obviously a very wet day. The focus on the window was accidental, but it was a happy accident.


January: Chuuk, Federated States of Micronesia (January, 2013), Pacific Ocean

This photo was taken out of the window of a United flight as we were landing in Chuuk. In my case, I continued on to the next stop, Pohnpei, which became one of my favorite places in the world.


February: Narita Hilton Wedding Chapel, Japan (January, 2013), Asia

Finally a use for the oil paint filter in Photoshop!



March: Wales (September, 2013), Europe

After Milford, we did a field trip around Northern Wales. I need to figure out where this was on the map. What’s not obvious from the big shot, but is in the detail below, is the dog chasing the vehicle.



April: View down from the Burj Khalifa, Dubai (June, 2012), Middle East

In my only visit to the middle east (yet), the group tour to the Burj Khalifa was definitely one of the highlights. The wind was pretty fierce, and I was afraid I was going to drop my iPhone from the tallest building in the world.


May: Rick Swimming with the Dolphins, Tortola, British Virgin Islands (December, 2012), Caribbean

Professional photo, and the best of the lot of them. They have other locations (and there are other providers), but this was a lot of fun. Our first SeaDream cruise, and we loved them so much we ripped up our other cruise plans and rebooked.


June: Sunset, Guanacaste Region, Costa Rica (August, 2012), Central America

Picture was taken on one of my several crazy miles-using trips last year. Out on a Friday night red-eye, arrive in Central America around noon, take the noon-ish flight home the following day, arrive home Sunday night. Total trip time: around 48 hours, of which half was spent on a plane. Crazy. This trip cost me about $150 (plus miles and points), and most of that was the shuttle to/from the airport.

After one of these weekends, one of my coworkers looked at me Monday morning and said, “Oh, look what United dragged in.” That’s about how I looked, too.


July: Waterfall, Faroe Islands (September, 2012), Atlantic Ocean

I like weird cruise itineraries, so we went on one from Denmark to Norway to Faroes to Iceland to Scotland to Ireland and back to Denmark. Some of the seas were super-rough (even I got seasick and I’m not prone to it) and it was bitterly cold at times, but we got to go to some awesome places and have some awesome pictures to show for it. The Faroes were amazing.


August: Ex-Soviet Submarine Base, Balaklava, Ukraine (June, 2013), Europe

We missed BayCon this year because we took a Black Sea cruise on Seadream. It was a very similar itinerary to a cruise Rick had taken before the collapse of the Soviet Union–just a very different cruise for him. For me, it was all new. This place haunts me. It was very strange to be walking through a place that was built to withstand such high megatonnage blasts and staffed by 1000 people. Because they were afraid of us.

Here’s a link that gives more context to the submarine base.

Another SeaDream cruise.


September: Island in the Lagoon, Pohnpei, Federated States of Micronesia (January, 2013), Pacific Ocean

This is about the entire size of the island: a small house, a thatched-roof outdoor picnic table (with a dog underneath), a fishing net to catch dinner, a handful of trees for shade, and a ledge to make getting on and off a boat easier. Someone really lives there.


October: Sunbeams on Table Mountain, Cape Town, South Africa (July, 2013), Africa

My third trip to Africa, but the first time I got to see any impressive mountains there.


November: Sunset, Maldives (April, 2013), Indian Ocean

Taken from my own over-water bungalow at the Conrad Maldives.


December: Gustavia, St. Bart’s, French West Indies (December, 2012), Caribbean

I thought it would be kind of cool to have the calendar end with Rick walking away, sort of a metaphorical end of the year. The ship in the harbor is SeaDream II, and we’re on the sister ship, SeaDream I.

I learned that one of the yachts we saw had anti-paparazzi lasers. Way.


Back Cover: First Man, Street art, Brisbane, CA (July, 2011), North America

Taken in an old burned out building in Brisbane, this remains one of my favorite photos. Here’s the original version of the photo, though I prefer the highly-processed version.


Read More

Making Book: A Technological Evolution

23 November 2013

Once upon a time, I lost all the poetry I ever wrote, including the stuff I’d published. It was published in journals so small I’d be lucky if a single copy survives to this day. It’s possible dozens of people read my work.

Of all of those poems, I’m saddest about the piece I wrote the day I was in Belfast. The day we weren’t supposed to be in Belfast. The day I got a rifle pointed at me. (If you ever happen across Metropolis, a journal of urban poetry, with my poem titled “Belfast Brunch,” I’ll pay you for the copy.)

I thought: I’m a software engineer, why don’t I add all the stuff I’ve written into source control? But then you have two problems, as the old joke goes.

This was back in CVS days, and what CVS really didn’t like much was binary files. And me with a bunch of Word documents. Oh, and AppleWorks documents, because we know how forward-compatible those suckers are. (The current version of Apple’s Pages will not open them, but then it won’t open RTF, either.)

Novels and short stories don’t actually consist of a lot of sophisticated markup, though. There’s the occasional italics, the section breaks, the chapter headings. Because HTML was too much work to generate cleanly, I just wrote in plain text. With underlines around italics. You know, like Markdown. Though Markdown hadn’t been announced back then.

Eventually, I switched over to Subversion for source control. (I recently switched to git due in part to feedback on this post.)

However, getting stuff ready for critique or submission was another story entirely. I was talking about this with Serah Eley, and she mentioned using XSLT and XSL-FO, and had a perl/java toolchain that worked well enough, so I incorporated it into my own work. By this time, I was running my submissions through my own Ruby on Rails app, and it was slick enough that it knew where a project’s files lived, and would generate all the meta information needed by XSL-FO in order to make a PDF to print. (At that point, RTFs weren’t really possible as they were still the realm of proprietary software.)

So why XSL-FO? Part of it was the beauty of the templating system. You could make a stylesheet that specified double-spaced courier and to add an address block for a submission to an editor. You could make it single spaced in Garamond with no address block if it’s something you wanted to hand to someone you didn’t want to have your address. You could have a cover page and exclude your name on subsequent pages for contest submissions.

The downside, though is that XSLT is pretty fiddly and I had a toolchain from hell that required not only Ruby and Perl and Java, but a lot of dependencies that would occasionally drive me mad when they broke or balked.

And Then An Amazing Thing Happened

Apple decided to adopt EPUB for iBooks. Before that, there’d been a far more confusing array of choices for electronic formats, but then people started veering toward EPUB. Plus other tools had come out like calibre, which will convert your books (so long as you don’t mind it getting its grubby paws all over your markup and inserting its calibre-isms).

Then jugyo wrote eeepub, a ruby gem to make EPUB files. And, hey, I already had valid XML files from my earlier process, right?

Not long after that, I was the head of programming (by which I mean scheduling of people and rooms, not software engineering, though I also almost all of that, too) for BayCon and Westercon 64.

One of the things I wrote the code for was the generation of the tabular data for the program grid. From there, especially with jugyo’s excellent gem, it wasn’t that far to getting a program book in EPUB form. (Reusing work I’d done in 2003-2007, I was still using XSLT + XSL-FO + InDesign for things like table tents, back of badge stickers, room signs, and the schedule content for the body of the program book.)

I remember sitting down one night a few days before con, wondering if I could actually make an ebook version of the program schedule. I wrote it on too little sleep when I had a case of shingles, but hey, it works! PDF and EPUB versions of the file are linked on Westercon 64’s site. The PDF used the same intermediate XML that generated the EPUB, but I used InDesign to generate the final product.

Here’s the code to make the EPUB version. The tl;dr version of what it does:

  1. Figure out what days the convention runs. Get the names of those days.
  2. Calculate what public program items run, in order, and spit them out along with their program participants, one file per day. Make sure the program participants link to their bios. (Non-public items were things like meetings for exec staff and stuff we didn’t want to schedule against, e.g., when someone wasn’t planning to be in the masquerade but didn’t want to miss it.)
  3. Generate a file, in alphabetic order, of the program participants and their bios. Note: this file takes too long to render in the EPUB, and one of the changes I’d make if I were doing it again would be to break it up by first letter of last name or smaller groups to make the rendering faster.
  4. Commented out code used for Westercon: add the bylaws.

Simplifying the Novel-Production Process

Somewhere around 2008, Ruby had better Markdown support and I’d become aware that I was really writing drafts in Markdown, so I was able to eliminate part of the toolchain I had.

More recently, I discovered textutil, which does the back-end work I’d been using XSL-FO for. So, I can take an HTML file (which I get from Markdown) and get an RTF and a DOC and a PDF out of it? With almost no pain?

To quote Ben Grogan: I call that winning.

As the saying goes: now you have one problem.

General Casing the One Problem

I’ve been working on a more general case solution, both in Ruby and Python, for taking Markdown files and making a book out of them without having to do quite so much of the work.

I’ve tried a number of Markdown editors over the last couple of years, and I have standardized on ByWord on both Mac and iOS. For things that I’ve got in source control, I use git on Dropbox with my repository on BitBucket. I use a nightly script to push repository changes in case I forget to do so.

In my current process, I no longer have rails generate XML template files, nor do I need prose DTDs, etc. I just have rails generate a YAML file, and I’ve moved much of the configuration into the rails app. But now I need to push some of that back out into CSS. And maybe I want it to be a Cocoa app, you know?

I’m still thinking about ways to do that when I want to still be able to produce the following variants with no change of my Markdown files:

  1. Novel proposal, meaning synopsis (formatted one way) plus first three chapters or (as a programmer, I hate this one) no more than 50 pages.
  2. Novel chapter for critique, which usually means slightly different spacing and more whitespace for comments, but doesn’t need all the fancy fancy.
  3. Reading copy, which would be formatted pretty but not include author address (or legal name, necessarily).
  4. Final book format, which can include a lot more data than the above three, e.g., ISBN.
  5. Contest entry format which suppresses author name on pages other than the first. (Or, sometimes, at all, as it’s included only in a cover letter.)
  6. A relatively easy way to create variant style definitions and keep them together without requiring the rails app I’m currently using.

Most of that’s fairly easy, but some of it’s surprisingly subtle.

And here you thought I just flung words on pages.

Read More

Kitty and Her Momo

23 November 2013

Tanner is a rescue cat gotten when we had an elderly alpha cat and needed a beta. She’s always been skittish and prefers to spend most of her time outdoors.

Every November, she starts coming inside when it’s wet out, but she’s always avoided any of “my” spaces. She generally has 2-3 spots in the house and ignores the others.

One thing I know: cats love mohair (aka “momo”). When we went to Avoca in Ireland last year, we bought a mohair throw for the couch, which she ignored. A few weeks ago, I brought it out to my writing nook and left it on my ottoman. A few days ago, she decided that was a cool place to be.

This morning, when I got up, she was still there.


Read More

The Stupid, It Burns

21 November 2013

  1. I get subscribed to an email list by someone using my iCloud account (misremembering their email address). Note that they may have subscribed me under or; it’s not always possible to tell which.
  2. I write the offending company, berating them for not confirming email addresses. Only receive an automated response. (I did cc abuse@)
  3. I get more emails from said company.
  4. I write the abuse address at their upstream.
  5. The upstream abuse support agent misspells my email address in the email. In more than one different way. Charming.
  6. Naturally, offending company can’t find the email address in their system.
  7. In their delayed response to email I sent directly to them, however, they remove my email address.
  8. Other chatter occurs that I’m cc’ed on.
  9. Here’s the kicker. I’m cc’ed on an email from the CTO that says:

    Just wanted to follow-up and say that the email says “from: Kim (redacted)” — This indicates to me that we didn’t send the email but was probably forwarded by Kim. If Deirdre/Deidre does not know this person, perhaps Kim’s account has been hacked or spoofed and sent email unknowingly — Unfortunately, there is nothing we can do about that.

  10. Kim is the author of the recipe in the email offending company sent. Their CTO doesn’t even know what email they’ve been sending out as a part of their brand. Nor has she bothered to check. Proof:


Let’s Talk Best Practices

  1. Do not ever ever ever subscribe someone to an email list without their confirmation. Just. Don’t.
  2. If you run a hosting company and handle abuse@ complaints, please ensure that you spell the email address very carefully — and not, oh, three different ways that aren’t the way the account name is spelled.
  3. If you receive an abuse@ complaint from someone you’ve subscribed to a list, make sure you have a technological method for adding them to a “hold all promotional email” process. That way, they don’t receive further spam from you before you sort things out. In the offending company’s case, what they responded to was my fourth complaint.
  4. Always respond to the first complaint.
  5. Do not blame the victim.
  6. Do. Your. Research. Your non-customer should not have to do it for you.

Department of Shame

Offending company:

Upstream hosting provider:

Note that I redacted Kim’s surname in text because she’s probably innocent here. I added the pic because I’m sending a link to this to the offending company’s CTO.

Read More

I Feel Connected To You

20 November 2013


So near as I can tell, all the social media interconnections that I actually use. Dotted lines can be set up, but aren’t.

Read More