Book View Café’s New eBook Store

May 16th, 2012

(Crossposted at BookViewCafe.com)

Most writers start scribbling stories at a very young age. Not me. I waited until I had graduated from college before I started writing fiction – and what was my motivation? Having read something dreadful, I was struck by the certain knowledge that “Even I could write a better story than that.”

Fast-forward to December 2011. The writers of Book View Café, being well aware of the limitations of our online bookstore, were eagerly anticipating the launch of a brand new website that had been months in the making – only to discover at the eleventh hour that the new website had serious flaws. Correcting the issues would require extensive programming which we could ill afford, and no one felt confident that at the end of it all, we would get the website we wanted.

So we decided to start over.

I’m a fairly new member of BVC, having joined last summer, and hadn’t been involved in the website process, but at that point my occasionally cocky nature reasserted itself. I could build a better website than that, I thought, so I stepped up and volunteered my services.

This wasn’t quite the level of chutzpah I’d shown when I suddenly decided to be a writer. After all, I’d worked for nine years in website development, PHP programming, and database-driven websites. But the website committee was adamant that the new bookstore should run on a WordPress platform, and I knew very little about WordPress.

WordPress is a brand of software widely used to run blogs, including BVC’s blog and my personal blog here at Hahvi.net. On my own blog I’ve modified WordPress to suit my needs. So I thought I knew some things about WordPress – but as it turns out, I’d barely dipped my toes in the ocean of WordPress knowledge and possibilities…

But I’m getting ahead of myself.

Four of us joined forces in the effort to come up with a new online bookstore: myself, Dave Trowbridge, Vonda N. McIntyre, and Pati Nagle. The first task was to find and test ecommerce software packages designed to work with WordPress. This went slowly, taking up scattered blocks of time through January. There are a lot of ecommerce packages out there, but not very many that can competently handle downloadable products like ebooks. We found a good one though: by early February we’d agreed to go ahead with a product called Cart66.

In most group situations, I’m the cautious one: hesitant, careful, expecting the worst. So it was amusing to be outdone in this regard by Dave, who insisted that we should develop the new site on a test server, so that there was no way we could blow up the live website.

I was concerned. My expecting-the-worst nature reasserted itself and I worried that when we moved the website back to the live server, all the file paths would break. Nevertheless, working on a test server was proper procedure, so by February 21 we had our test site set up and we were ready to go!

Except that the hosting company hadn’t got it quite right. The file permissions didn’t allow us to make necessary changes, so there was very little we could do.

By the next day though, that was fixed, and we were really ready to go!

Progress through February was slow. Book View Café operates on a consensus system. We don’t really have a “boss,” and there was no supreme project manager. This can be a bit frustrating: issues are discussed, people have really good ideas or they bring up valid concerns, but many times no decision gets made—and besides, all of us had our own lives going on and our own work to do. So it wasn’t until early March that I started seriously looking at out-of-the-box themes designed to work with Cart66. I tried out one or two—and I quickly reached the conclusion that none of them were going to work for us.

WordPress themes are designed to make life easy for people who don’t know PHP or HTML. But when you do know PHP and HTML, themes can feel very restricting. It’s hard to design a theme flexible enough to satisfy any user. As an example, many WordPress themes have a massive header image. The one on my blog is a good example. This works on my blog, but in my opinion, it doesn’t work for an online store because the real estate on the page should be showing off the products, not the pretty magazine-style design of the header image.

So I eventually junked the Cart66 themes. Instead, I took a very basic theme, modified it to what I thought it needed to be, and asked my cohorts, “What do you think about this?” I got a thumbs-up on it, and in the process I learned all about “child themes”—something I hadn’t known about before. Child themes are a means of modifying a theme without changing the parent theme. This is important, because it means you can continuously update the parent theme without overwriting your customizations.

This became the pattern for me. Some new feature would be needed so, being used to working on custom programs, I would charge in and start creating it. But because the code is complex and modular, I would have a very hard time with it until, after much Googling, I would stumble over a function or a plugin that would do very easily exactly what I needed. So for me, WordPress was consistently hard to work with until I found the right way of doing something, and then it became incredibly easy. It was like mastering magic spells, one after the other, and I slowly began to grasp the logic and to learn where to look for solutions.

So the basic theme was settled, and Vonda and Pati were working on the details of the CSS. Meanwhile, I was having a crisis of confidence. I had a new book out, but hardly anyone seemed to have noticed. I’d stopped exercising, and my mood was growing bleaker with each passing day. I stopped writing—but at least I had the BVC bookstore to work on. What a great excuse to avoid writing! I enjoy complex website work. It’s challenging, like writing a novel, but the outcome is far more certain, and I can do it no matter how bleak my mood, so I put in a lot of time on the new store—it’s fair to say I was obsessed with it—and knowing myself, I figured it was best to just finish it, so I wouldn’t have to think about it anymore, and then I could get back to writing.

So before long I was satisfied. The store wasn’t a technical marvel, but it was a lot better than what we’d had before.

We showed it to our members. I was a bit nonplussed that the majority of comments we received involved the categories we would use to sort out our books—categories are very flexible and easily adjusted and not very interesting. What about all the cool and challenging stuff we’d done? Like controlling what posts showed up on any particular page? And creating pages for each author, showing their bio and all their books? We had to figure all that stuff out, you know! It’s not like there was a manual; each step forward was a sweet little victory.

But the thing about programming is that when you do it right, the difficulty becomes invisible.

Well, whatever, I thought. I just want to get this project out of my brain-space. So let’s load up our books and get this store launched!

That’s when Dave started making trouble.

In projects other than writing, I tend to be a minimalist. If it works, it’s fine. Right?

Dave, on the other hand, has vision. He’d been looking into what WordPress could do, he was thinking in the long term, and he had ideas. Me? I didn’t want to hear them. The store did what it needed to do. Couldn’t we leave it at that? I’d put in my volunteer hours and I wanted to get back to writing. But while I’m occasionally cocky, I’m not so cocky as to think that my way is always the best way, and eventually I settled down and paid attention.

And it was good.

WordPress comes with a basic blogging package that will get you up and running very quickly. Depending on your purposes you can then start adding “plugins”—additional pieces of software used to achieve some goal. Cart66, our ecommerce software, is a plugin. We’d already used several other plugins for different purposes. Now Dave wanted to introduce plugins to create custom post types, custom taxonomies, and custom fields. (Did you just zone out on all that terminology?) I won’t bore you with an explanation of what all those things are. Let’s just say that in the end, Dave came up with some backend stuff that is incredibly useful for keeping the store organized and making it easier to update—definitely worth the extra hours of work, even if we did have to re-engineer some things.

There were some false paths along the way. We tried some things that didn’t work out, or that might have worked out if we had a lot more time to invest in them. At one point we had a backup of the test site made prior to installing a new and possibly risky plugin. After a day or so we decided the plugin wasn’t what we needed, so we had the hosting company restore the site from the backup—but the backup they used was a backup made after the new plugin had been installed—so after fighting over file permissions again, we had to rebuild the site by hand. But by April 9 we had agreed on a final structure to the store, and on April 12 we had the hosting company move it to the live site.

Of course that didn’t work out quite as hoped. My initial fears were partly realized and there were some broken file paths, but there was also a WordPress magic spell that fixed most of them, and in the end the result was better than my pessimistic self had expected.

Suddenly we were aiming for a May 1 launch date.

Vonda worked like mad to load chapter samples and book covers into the new store.

Dave, Pati, and Vonda spent a lot of time writing up the instructions that would be passed out to BVC members. We’re a cooperative, which means everyone helps, so members were expected to load their own books into the store. The instructions took a surprisingly long time and turned out to be a bit too complicated, so Dave very quickly re-wrote them, and suddenly we were on our way. BVC members started logging in and adding their books to the new store. It wasn’t perfect, but it was working . . . and then, without telling us, the hosting company decided to migrate our website to a new server, but the migration failed, and BookViewCafe.com vanished from the Internet.

This happened on Saturday evening the weekend before we were scheduled to launch the new store. BVC members who’d set aside a block of time to load their books were unable to do so … and time ticked past. Sunday afternoon rolled around, and the website reappeared, but it was much too late for a Monday launch, and besides, our email wasn’t working. With the new store, our customers receive an email receipt that includes instructions on downloading their purchased ebooks. There was no point in launching the store if we could not send our customers this email. So we waited for word from our hosting company on when things would be fixed.

And we waited.

And by Friday we decided we needed a new hosting company. This took a few days, but by May 11, the entire website had been moved. Debugging followed, while Vonda and Pati worked hard to get the rest of the ebooks into the store and clean everything up.

Then on the evening of Monday, May 14, the new store went quietly live. We haven’t made a hoopla over it yet. We wanted to go with a quiet opening, that would let us address any issues that might crop up. So far, things seem to be going very smoothly.

We hope you’ll visit our new store, look around, buy a book or two if you’re so inclined, and let us know what you think.

The celebrated “grand opening” is still to come.

Contest Wrap Up

May 10th, 2012

Back on April 18th I launched a promotion to try to get twenty Amazon reviews for each of the Puzzle Lands books in twenty-one days. I didn’t make my goal, but I’m much better off than I was, with eight reviews for both books.

The winner of the contest has been notified, but my appreciation goes to everyone who helped out. Thanks so much!!

And if you’d still like to contribute a review, please do so. I still hope to get to twenty–it’s just going to take a little longer.

Next Projects

May 5th, 2012

Happy Cinco de Mayo!

Today I’m contemplating both what I want to work on next, and what I ought to work on next. I don’t really want to look back at my January 1st goals right now, because I suspect I’m drifting well off that track while also falling behind.

Once, I had great discipline and focus, and I would work on only one project at a time, refusing to consider another until the first was done. I don’t seem to work that way anymore. In theory flexibility is good, but I’m not so sure that’s true in this case…

…because right now I have four projects in mind – and that’s leaving out three others that I’ve contemplated working on.

First, what I ought to do: the novel I’ve been writing on and off since September now has a sort-of complete draft. I need to expand and revise until it’s sufficiently whole to hand off to a beta reader.

Next: Last fall I wrote a novelette set in The Nanotech Succession story world, and featuring the character Zeke Choy from The Bohr Maker. It’s scheduled to be published at Analog in the fall. I want to write two more stories involving Zeke, so it’s past time I tackled story #2.

Third, I want to start plotting another Puzzle Lands book.

And fourth, I want to start plotting an entirely new novel using some ideas developed in recent short stories, and see if that goes anywhere.

I post this stuff here because putting it out in public may provide some motivation for spending more time on writing and less on peripheral things.

One thing’s for sure though: * I Must Write Faster *

“Nightside on Callisto” — Update

May 2nd, 2012

This week, “Nightside on Callisto” is available for reading online at Lightspeed Magazine — or you can listen to the podcast!

This is my first-ever story to be podcast, so it’s exciting.

Please check it out! And check out the great illustration by Galen Oara.

“Nightside On Callisto”–new short story at Lightspeed Magazine

April 30th, 2012

Cover of the May 2012 issue of Lightspeed MagazineAs I’m sure I’ve mentioned before, I stopped writing short fiction at the end of the last century, but last fall I took it up again. The second story I wrote, “Nightside on Callisto,” has now become my first original short fiction to reach publication since my 2000 Nebula-award winner.

This feels like a very significant milestone for me.

Look for “Nightside on Callisto” in the May issue of Lightspeed magazine, now available here as an ebook. Lightspeed is an innovative short fiction market. Please support them by purchasing a copy of the magazine!

Sense of Place

April 30th, 2012

Many science fiction and fantasy writers will agree when I say that it’s a lot easier to write about a fictional place, then to put a story in a real world, present-day setting. It’s true that in a fictional world you have to go to the trouble of making up the details, but as long as you’re consistent, who’s to say you haven’t got it right?

But when you set a story in the real world, readers expect your story world to have a sense of place that reflects reality—especially if they’re acquainted with the reality of your setting from personal experience.

If you live in the place where your story is set, no problem. You might even be okay if you’ve visited the place long enough to get a real sense of it, and to understand where things are, and what the local customs might be.

But what if you’ve never been to the place where your story is set? And what if lots of other people have been there? Then it gets scary. You’ll be eager to throw in details because details will give your setting a personality and a sense that it is real; but at the same time you’ll want to withhold every detail you can so that no one can catch you having the traffic moving the wrong way on a one-way street, or azaleas blooming when they don’t grow in that city. In the end, it will be a balancing act.

I might be especially sensitive to this issue of “sense of place” because I’ve lived nearly all my life in Hawaii. When writers who don’t live here set stories in Hawaii, their settings often ring false to me. Even among writers who do live here, it sometimes seems like they’re setting their stories in some shared, idealized, imaginary Hawaii, rather than the real thing.

So am I advising you not to set your story in some place unfamiliar to you? Not at all! My rule is, if you can pull it off, go for it. But if you do, consider having someone who does know the place take a look at your story before you finish the final draft.

Limit of Vision by Linda NagataMost of my novels have been set in made-up story worlds. The two exceptions are Tech-Heaven, which takes place mostly in California and parts of South America, and Limit of Vision, which takes place mostly in the Mekong Delta in Vietnam. I felt pretty comfortable with the settings used in Tech-Heaven, but Limit of Vision was another matter entirely. I was worried. I did my very best to portray a realistic setting. I had some leeway, because the story is set a few decades in the future, within a rapidly changing country. Still—I’ve never been to Southeast Asia. I was taking bits of things I knew and brewing whole settings out of them. So I went looking for someone from Vietnam to read the manuscript for me, and I was lucky enough to find a student in the English department at the University of Hawaii. Working from her feedback, I adjusted a few odds and ends, and felt much more confident in the story I was telling.

My most recent venture into reality has been a short story set in Manhattan. I’ve been there, once, fifteen or twenty years ago. Not enough to give me a real feel for the place at all! So I ran this story past a native. I’ve learned some inconvenient things from her critique, and the story will need adjustments to do a better job of rendering a sense of place. But in the end it will be better for it.

Of course, getting-to-know-the-setting is a great excuse to travel. If only I could figure out how to finance that level of research…

Short Story Update

April 25th, 2012

The short story I talked about a few days ago has undergone some revision. It’s crept up in length (of course) and is now 5,900 words. I would have liked it shorter, but I’m not going to complain too much. It’s “done” to the extent that if I don’t rustle up a good beta reader in the next day or two, I’ll probably give in to the temptation to just send it off un-vetted.

The protagonist of this story is proving rather troublesome. He’s in my head, lobbying for his own novel now that I’ve messed up his nice life — and I have to admit I’m tempted, despite all the other projects I’m supposed to be working on.