Jamie Todd Rubin's Blog

April 22, 2015

I have had some reports of DocsList errors from folks using the Google Docs Writing Tracker. This is because those functions have been deprecated. Several months ago, I updated the master branch with code that uses the newer DriveApp object model. I have been using that code for a few months with no errors. If you are seeing errors in the last few days caused by DocsList objects, I recommend you pull the latest version of the scripts. That should fix the problem. Please see the readme for additional details and instructions.
 •  flag
0 comments
Like  • 
Published on April 22, 2015 07:06

April 19, 2015

As I am about to head off on the road for the better part of the week, I think now is a good time to remind folks that I will be attending RavenCon in Richmond, Virginia next weekend, April 24-26.

At present, this is the only science fiction convention I’ll be attending in 2015.


My friend Allen Steele will be there, as will Jack McDevitt. RavenCon is the first convention I ever attended after selling my first story back in 2007 so it holds a special place in my heart.


On Sunday, April 26, Bud Sparhawk and I will be giving a talk on “Plotters vs. Pantsers,” Bud being the “plotter” and yours truly being the “pantser.” We’ve done a version of this with respect to online writing tools at Capclave, but this talk is focused on the two methods and their respective advantages and disadvantages. It should be a fun talk if you can make it.


I’ll be arriving in Richmond around lunchtime on Friday, and staying through the convention, so if you think you’ll be there, and you see, say hello.


 


 •  flag
0 comments
Like  • 
Published on April 19, 2015 09:03 • 2 views

April 18, 2015

After years of grown, activity here on the blog appeared to have peaked right around the beginning of 2015. At that time, the blog was receiving 6,000 or more visits per day, on average. Since then, there has been a steady decline in visits. These days, I’m seeing under 3,000 visits per day for the first time in a long time. Perhaps, the single biggest reason for this is a lack of content. Or interesting content, anyway.

I suppose this is understandable. With the limited time I have to write each day, my focus has been on getting my fiction-writing done first. If there’s time, I’ll might write on the blog. Might. Because lately, I’ve felt stagnant when it comes to the blog. I used to write whatever came to mind, but I’ve shied away from that lately. In part it’s time, and in part I’ve worried about a lack of interest, and that I might come across as trying too hard.


Then, too, I have felt for a while now the need to move beyond WordPress as the primary tool for my blog writing. I’ve considered changing things up, using a new theme, but really what I need is something entirely different. This feeling of stagnation and the need to break out into something different lead naturally into transition.


Going forward, I will be doing the bulk of my blog-type writing over on Medium. I’ve been impressed with Medium for a while, but I wasn’t sure why I was impressed until recently. I think it comes down to a few important factors:


1. Simplicity. Medium is easy to use, and far easier to maintain than a self-managed WordPress installation. The time I gain back in maintenance can be used to write the kind of things I’m interested in writing more frequently than I have been.


2. Aesthetics. Medium is beautiful. I love reading things there. There is a simple elegance to the design, that makes reading a pleasure. Then, too, those same aesthetics apply to the writing experience. It is easy to write and format stories on Medium. It had interface that makes me want to write more.


3. The right metrics. Monitoring WordPress metrics became a kind of part-time job for me. How many views? How many clicks? From where? Drilling down into Google Analytics data, when I could be writing. And I’ve come to believe that most of those metrics don’t really mean that much. After all, someone can visit a post but not read it. Which is why I like Medium’s approach: They track one key measurement: “read ratio.” It’s a measure of reads to views, and it tells you how many people are actually reading what you wrote.


4. Discussions. Nothing beats Medium’s commenting and discussion system. You can comment on any part of a story. You can highlight pieces, and recommend the story. Like everything else about Medium, it is simple and elegant.


I want to assure folks that this blog here is not going away. However, it’s function is changing. Over on Medium I’ll be writing about writing, and technology, and paperless lifestyle, and productivity, and baseball, and lots of other things. But I won’t be making announcements over there. That’s what this blog will be used for.


I suppose you can think of it as this blog becoming my author “platform” (I dislike the term, but I can’t argue with its appropriateness in this case.) New publications, new stories, articles, appearances, and things like that will be announced here for those interested.


I have built up a wonderful audience over the years, and I can only hope that some of you will be willing to follow me over to Medium and keep up with what I am writing over there. You can even add my Medium posts to your RSS feed, using this link. I understand not everyone will want to make that transition with me, and that this might be a good time to pursue other blogs, or cut back on blog reading. But I do hope that moving to Medium will help rekindle the fires that kept me blogging for nearly a decade, and that the lessons I’ve learned over the years will make me a better writer because of it.


As an example of one kind of thing I am trying to do over on Medium, take a look at the post I wrote there  earlier today called, “Excavating Old-School Self-Tracking.” And if you are interesting in following along with me on Medium, you can find my profile at: https://medium.com/@jamietr.


 •  flag
0 comments
Like  • 
Published on April 18, 2015 11:57 • 4 views

April 12, 2015

I have mentioned before how my favorite long-form nonfiction is the baseball essay. Reading those essays leads to all kinds of places. I was discussing these types of pieces with a friend of mine, and he recommended a recent book put out through The Library of America called The Top of His Game: The Best Sportswriting of W. C. Heinz edited by Bill Littlefield. I’d never read any of Heinz’s pieces before, but I am having a delightful time going through this book. His pieces tend to be short: 800 words, compared the the baseball essays that I most enjoy. But Heinz’s voice carries the day in these pieces, which cover all manner of sports, from baseball, to boxing, or horse-racing, and beyond.

But the most remarkable thing I’ve learned in this book is something about Heinz himself. I am also a big fan of M*A*S*H. The book, upon which both the movie and the series was based, was written by Richard Hooker. Well, it turns out that Richard Hooker is a pseudonym for pair of writers. One is H. Richard Hornberger, a doctor who served in Korea. The other writer was–you guessed it–W. C. Heinz.


I thought that was a pretty cool connection, when I learned of it in the intro to the book.


 •  flag
0 comments
Like  • 
Published on April 12, 2015 07:48 • 9 views

April 11, 2015

Earlier today, Mary Robinette Kowal offered 10 (now 20) supporting (voting) memberships to the World Science Fiction Convention in 2015 to fans who might not otherwise be able to afford a supporting membership. The membership allows fans to vote for the Hugo Award, which is often considered to be the most prestigious award in science fiction.

I know that I have friends and fellow fans out there who can’t afford a supporting membership, and so, taking a page from Mary’s book, I am offering 5 supporting memberships for Worldcon for people who can’t otherwise afford one.


Part of the fun of the World Science Fiction Convention is being able to vote on your favorite works from the previous year, and that $40 supporting membership is difficult for some folks. If you can afford, it, I encourage you to get a supporting membership. If you can’t afford one, shoot me an email at feedback [at] jamietoddrubin [dot] com with your contact information. Also, because of the controversy surrounding the Hugo Awards this year, I want to be clear that for folks who get these supporting membership: please don’t feel constrained in your vote. Participation in the fan process is all that I am hoping for.


Next week, I’ll pick the 5 names randomly from the requests that I get, and buy the memberships through the Sasquan website on their behalf.


 •  flag
0 comments
Like  • 
Published on April 11, 2015 14:15 • 4 views
From George R. R. Martin’s Not A Blog:

I do not believe in Guilt by Association, and that’s what we’d be doing if we vote against every name on the Puppy slates simply because they are on the slate. That was a classic weapon of the McCarthy Era: first you blacklist the communists, then you blacklist the people who defend the communists and the companies that hire them, then you blacklist the people who defend the people on the blacklist, and on and on, in ever widening circles. No. I won’t be part of that.


I completely agree.


 •  flag
0 comments
Like  • 
Published on April 11, 2015 07:45 • 7 views

April 10, 2015

I came home from work tonight feeling the way I used to feel 36 hours into an all-nighter back in college. Except that I slept for 8 hours or so last night. My brain is completely drained. I am not normally a project manager, my title at the day job being a senior application developer. But I find myself managing two projects right now, a small one about which I have been excited for a while. And a large one, which I inherited last week from a far more capable project manager who left to pursue other opportunities. In addition, I am developer on a third project, a lead technical consultant on a fourth, a team member of a fifth. My days, recently, have been all about churn. Fifteen minutes of this, twenty minutes of that, ten minutes of this other thing.

Today, I spent six hours in meetings, and the remaining time preparing for them. It’s been like this for a week or so now. My days have been long, and when you add in the writing in the evenings, they have been even longer. I think I set a personal record earlier this week. RescueTime told me that I’d spent 18 hours on the computer in a single day!


RescueTime record


Tonight, my writing was uninspired. I don’t feel much like reading, or even listening to an audiobook. My brain has reached its capacity. I need to disconnect and allow it to cool off a bit. So I am going to try to take the weekend off. I’ll still get in my writing–after 627 consecutive days it is unthinkable not to write. But I may take a break from fiction this weekend and write two nonfiction pieces that I’ve been meaning to write for some time now. It will give me a well-needed break from fiction. And nonfiction is easier on my brain than fiction, so that’s an added bonus.


I am also going to try to stay offline for the most part this weekend. I’m not going to read much. Instead, I’m going to something I don’t do often: sit in front of the TV and watch episodes of Magnum, P.I. and M*A*S*H. Hopefully, by Monday, I’ll feel more like my 2015-self, and less like the 1992-sleep-deprived college version of myself.


Have a great weekend!


 •  flag
0 comments
Like  • 
Published on April 10, 2015 17:34 • 2 views

April 7, 2015

If memory serves, I first encountered time dilation in a visceral way in November 1997. That is when I read Joe Haldeman’s The Forever War. The effects of relativity play a significant role in that novel. I next encountered it in Poul Anderson’s Tau Zero, which I read in January 1999. I read the books in the wrong order. Anderson’s novel, which was based on his short story “To Outlive Eternity”, was first published in 1970. Haldeman’s novel was published a few years later.

The two novels took different approaches to time dilation: that effect that relatively has on time when one approaches the speed of light. Anderson’s book examined the extremes, reaching out for the end of time, the end of the universe, the end of all things–all within a single human lifespan. Haldeman’s novel took the personal approach, looking at the effect of time dilation on a few individuals, over a much small time scale.


I was more effected by The Forever War than by Tau Zero. The notion that time slows down as a person approaches the speed of light fascinated me. I remembered a commercial for Omni magazine which described the twins paradox. All of that stuck with me, and I remembering wondering if a parent traveled close enough to the speed of light, might not their children grow older than them while they were away?


The thought eventually led me to write a story called “Flipping the Switch” that deals with that very paradox. Although I first started writing the story in late 2008 or early 2009, it wasn’t published until 2013, when it appeared in the original anthology Beyond the Sun, edited by Bryan Thomas Schmidt.


And then, a week ago, I finally got around to seeing Interstellar. While I am not generally a fan of science fiction movies (something that people have a hard time believing, since I write science fiction), I really enjoyed Interstellar. I was the best science fiction movie I’ve seen since Contact. I watched the movie, and then, later that same evening, I watched it again. I know that some people complained that, despite the best efforts, some of the science was not accurate. Others complained that the dialog was poorly written. I enjoyed it all. Most of all, I enjoyed seeing the paradox that I envisioned in my story come to life in a well-executed conclusion. Indeed, the ending of Interstellar reminded me, in some ways, of the ending of Isaac Asimov’s “The Bicentennial Man.”


I also loved the vision of robots in Interstellar. The AIs of that world reminded me of the AIs that populate Jack McDevitt’s Alex Benedict novels. Their versatility was impressive, but I also enjoyed the personalization: you could define humor, honesty, and other elements to your taste.


Contact was a more cerebral movie than Interstellar, but Interstellar made me feel like I was traveling to alien worlds. It is a movie that I know I will enjoy watching again from time to time.


 •  flag
0 comments
Like  • 
Published on April 07, 2015 17:41 • 1 view

April 6, 2015

Nats Stadium


On Saturday, I took the Little Man to an exhibition game between the New York Yankees and the Washington Nationals. We took the Metro over to Nationals Park, and found our way to our seats, where my friend, and fellow writer Michael J. Sullivan was waiting for us. I think that Michael told me this was the third baseball game he’d ever attended. As it happens, it was the Little Man’s third game, too. He attended a Nationals game when he was a little baby. Then, when he’d just turned two years old, he attended a minor league game up in Troy, NY, between the Tri-City Valley Cats and the Vermont Lake Monsters. But the game on Saturday is likely to be the first that he remembers as he gets older, if for no other reason than he plays Little League baseball, and has more of a sense of the game than he did when he was two.

Perhaps the most exciting part of the game for the Little Man was the thought of getting Cracker Jacks. He knew about Cracker Jacks from the song, of course, and also because Caillou has them in an episode of that cartoon. But the Little Man had never had them before. So when we arrived at the stadium the very first thing that we did, even before going to our seats, was seek out Cracker Jacks. Eventually, we located a bag (they are no longer sold in boxes, at least not at Nationals Park) of Cracker Jacks. We added to this, two hot dogs, a small soda, and a beer. Then we sought out our seats. We were high up, but had a good view of the playing field, which is what I wanted so that I could explains things about the game to the Little Man. We both wore our Yankees hats, and while we sat among many Nationals fans, there were plenty of Yankees fans to be seen around the park.


The Little Man picked up the rhythm of the game quickly, and even learned to follow the scoreboard for balls, strikes, and outs. When the Nationals would make a good play on the Yankees, he’d say, “Aw, man!” When the Yankees made a good play, he became wildly excited. He saw his first home run that game, and that brought the score to 3-2 (the Yanks had been trailing.)


When A-Rod came to the plate, and the stadium booed, the Little Man wondered why. I explained that A-Rod had cheated, and had not been allowed to play baseball for a year, and that a lot of people (myself included) were upset that he cheated.


We stayed for five full innings before the Little Man got too restless and wanted to head home. We left with the Nationals leading 3-2, and that means that we missed the Yankees comeback home run in the 8th inning. But it was still fun. I mean a lot of fun. At one point, entirely on his own volition the Little Man turned to me and said, “Thanks for bringing me to the game, Daddy.” Really, it was perfect.


It made me wonder who really had more fun, him, for me, watching him. I thought about my Dad taking me to baseball games when I was very young, and had a sudden realization that it must have been fun for him in the same way that it was fun for me on Saturday. The Little Man got to see the game, and got to eat a bag of Cracker Jacks, and I got to sit there and watch him do it. I imagine we will be doing it again, before long.


 •  flag
0 comments
Like  • 
Published on April 06, 2015 08:16 • 9 views

March 31, 2015

I recently pushed a new branch called “project-tracking” out to the Google Docs Writing Tracker on GitHub. This branch includes code for project-tracking that I wrote about a week ago. The changes have been working fine for me over the last 10 days or so. The one thing I haven’t done yet is update the template spreadsheet. The new code requires 2 new tabs in the spreadsheet, along with some additional settings. I’ll get to that eventually.

Meanwhile, I have been trying to figure out a way to simplify what happens each night the scripts do their processing. Right now, the scripts perform a comparison between the current working document, and a previous snapshot of the document in another folder. That snapshot mechanism takes up a lot of code, and is relatively inefficient. Over the last few weeks, I’ve been thinking about an alternative, and today, I tested that alternative out with positive results.


Every Google Document keeps a revision history of the changes to that document. Here is the revision history for a story that I worked on back in February:


Revision history


It turns out, that using the advanced Google Drive API, I can access the revisions through the API. Today I performed a test, which essentially compared the current document to the last revision of the previous day. That is essentially what the snapshot method that the script current uses does. But it does without needing to maintain two files. I can get all of the information I need from the previous revision. Ultimately, that simplifies the code for the scripts. It also simplifies setup.


There is a tradeoff, however.


You can only access the advanced Google Drive API via OAUTH2 authentication. That means configuring the scripts to be able to handle that authentication. It turned out to be a pretty straight-forward one-time setup for me, but I do this kind of thing for a living. For someone who isn’t technical, it may be a little tricker.


It will likely be a while before this major architectural change is available. There are several reasons for this:



My priority each day is on getting my writing in. I do this scripting only if the writing is done, and I have time.
If I were doing this just for me, it would be easy. The code I wrote today checks for the last revision from “yesterday” and compares that to the current document. Simple, right? But not everyone who uses these scripts writes every day. What happens if you skip some days. Then there is no revision from “yesterday” so the script has to know to look for the previous revision regardless of date. There are a few other uses cases that need to be considered as well.
Once I have the code written, I like to test it for a few weeks before pushing it out, just so that I can work out any kinks.

That said, once this feature is in place, I think it will make for an enormous improvement. Since everything, including the revisions, is contained in the one document, there will no longer be a need to manage a snapshot folder at all, and all of that code can go away.


It also opens up the possibilities for analytics on the evolution of a document over time, which would be pretty cool, too.


 •  flag
0 comments
Like  • 
Published on March 31, 2015 13:45 • 3 views