Yep, it’s my first automotive-related sunburn of the year! I made it almost halfway through June this year — not bad.
This Week’s Self-Portrait
Kicking off the Workshop in Style
I’ll be in Kansas for the first half of July, attending a writing workshop. Big fun! Apparently some of the big names in Science Fiction are bigger than I thought, as they have arranged to have a comet fly by to announce the beginning of the session. Way to go, Jim!
Astronomy Picture of the Day is my new favorite RSS feed. Almost never disappointing.
Protektor
NOTE: This review is spoilier than most I write. It’s not much of a shock when I tell you that the good guys win, but spoilier than that is my discussion of the relationship between the main guy and the machine overlords. (For one, he would never use the word ‘overlord’. Ever.) Anyway…
A week or two ago I was with my sweetie and we dropped by her old office and visited her former coworkers. The subject of her growing ebay business came up, and my sweetie mentioned that she has been hitting the local thrift stores regularly, finding the good stuff, and selling it to people who live in places where they don’t have thrift stores of this magnitude. “It’s too bad there’s not a Salvation Army nearby,” she lamented.
Her friends were swift to correct her in this matter, telling her of a massive Salvation Army Depot not far away. An hour later (after a yummmy sandwich at Togo’s), we found the place, and an unscheduled shopping expedition was afoot with me in tow.
Now, I’m not shopping deadweight by any means, moaning and dragging my feet as we make our way around the store, but I knew that on this day the right place for me while the light of my life combed the cast-off fashions was in the book section. Happily, the book section was next to the comfy sofa section. Perfect. I perused the offerings on the shelves (not as good as I had hoped), but in those circumstances I was not looking for the best book to own, I was looking for something I could sit and read right then. I picked up Protektor, by Charles Platt, plunked myself down on a sofa and dug in. Distant future. Machines handle everything — people are left to eat, watch TV (super-duper TV plugged straight into their senses), and find new ways to have orgasms. It’s ok to do more with your life, but not necessary. Those with the talent and the drive to provide original TV shows and creative sexual opportunities can get fantastically wealthy.
People can live forever, unless something goes wrong. Not surprisingly, something is going wrong.
The test of the book’s mettle came later when it was time to leave the store. Back on the shelf or into the basket? Into the basket it went and Protektor had a new home.
The story takes place on a planet mostly occupied by mining machines, except for a tropical paradise island that has become an amalgam of Hollywood and Las Vegas. Movie stars mingling with hedonistic pleasure seekers. Only, things aren’t quite working as smoothly as they always have in the past. The machines that control everything are getting overloaded periodically. Air cars collide. A building falls over. People are getting killed. For-real killed with a side dish of pain and suffering.
Tom McCray has been called to the planet to investigate. He works for the machines, assisted by a super-robot specially designed to be able to hack into any system. Soon after he arrives, the mechanical mayhem is augmented by a series of murders. Evil is afoot, indeed.
McCray starts with a single assumption: That whatever is going wrong, the problem is rooted in people, not machines. Someone is deliberately sabotaging the system, and it’s his job to find them and undo the harm. The machines themselves are simply not capable of doing anything that would harm humanity. Not capable. It is his mantra, spoken without the faintest hint of irony. He believes.
Tom is a loner but he enlists the help of a local reporter, who is an attractive woman. (No surprise; everyone can be attractive if they want to be.) She also turns out to be one tough customer who got where she is through hard work and she’s not going to take shit from anyone, even if they do have a super-robot and are the only thing standing between her planet and the complete collapse of civilization. I liked her. Not surprisingly, so does Tom. Happily, that doesn’t get in the way of the story.
Other things do get in the way, however, like the occasional sidebars explaining how this world came to be. There is a side explanation of how it came to be that there is no such thing as privacy and why that doesn’t bother anyone. There’s another about how mankind ceded almost all governmental function to the machines, and another about the tiny minority who would rather work and die of old age so they can be independent of the computers. Eventually I got the idea and started skipping the backstory sidebars. I figured I could go back and read them if the story world interested me enough.
At the heart of this benign mechocracy is a set of ten rules that are programmed into the core of every machine, from doorbell to mainframe. It is those ten rules that make the entire system completely and unironically benign. I started to read the ten rules, which are way more complicated than the good ‘ol Three Laws of Robitics, but then I glazed over. I felt like I was reading a legal document. Computers can’t harm people, yadda yadda yadda, a bunch of stuff that looked like it was put in by a lawyer who had studied I, Robot for his dissertation. Not sure, there might have been some interesting bits wedged in there but I pretty much skipped over them, substituted Asimov, and all was well.
Aside from the asides, this turns into a pretty cool thriller/mystery, with millions of lives at stake, different factions with their own overlapping agendas that make the plot harder to figure out, and general world-descending-into-chaos yumminess. It’s told in the first person, which helps occasionally but more often harms the narrative, especially when our main man says “I knew that was fake, but I couldn’t say anything.” If you want to withhold information from the audience that the main character knows, at least don’t put us in a position where we hear his reasoning about everything else as he deduces it. It undermines the character’s voice to hide tidbits like that from us.
In the end, the good guys win. (I suppose that was technically a spoiler, but come on. The good guys win.) There are some surprises, some twists and turns, and after McCray gets around to telling us all his secrets we have a confrontation and the bad guys are apprehended. But there’s still work to do! The systems must be repaired! Our hero takes the criminal hacker mastermind up to his ship where they… write software.
I will grant that this is probably one of the most realistic parts of the story — the damage caused by a hacker is going to be fixed by one or more people writing code. But there’s a reason hacker-vs-hacker movies are unrealistic. Realistic is boring. “Code! Code like the wind!” It’s a bit of a letdown after the shootout. Lacking dramatic tension. Most of the programming scene, placed in the narrative where the climax generally occurs in a story like this, I skipped over, substituting in my head, “what with this and that, they fixed it.” And everything was fine.
(To be fair there is an interesting tidbit as the good guy and the guy who wrote the original virus prepare to release the antigen – a modified version of the original virus. The code for the virus was elegant and beautiful, while the new code, code that will be inserted into every doorbell and mainframe in the human universe, is rather an ugly hack. But it’s expedient. And that’s how our software matures.)
Everything was fine, and machines went back to being incapable of harming humanity — without any irony, without the other shoe dropping, without McCray getting egg on his face for believing in his mechanical masters so blindly. I’m trying to remember any stories since I, Robot in which technology (with the proper fundamental restraints) is so unequivocally good. Sure art and science have pretty much stagnated, but that’s a small price to pay for immortality and lives without want.
Does the boy get the girl? That, dear reader, you will have to find out for yourself.
Often when I get to this point in my ramblings about a book, it looks like I must have hated the thing. This story was for me like a three-bean salad where I didn’t like one of the kinds of bean. I enjoyed it for the most part, learned to avoid some of the yucky beans, and ultimately I was satisfied. The people act like people, the machines act almost but not quite like people, and there is one hell of a mess our boy has to resolve. If you see this book at your local thrift store, by all means drop the half-buck and let it entertain you for a few hours.
Note: if you use the above link to buy this book (or a Kindle, or a new car), I get a kickback.
Google Calculator
Here’s a little trick I discovered by accident a while back: Go to Google, and put 250-(tan(4pi/6))^2 into the search field. Hey presto! It does the math. This came in handy yesterday as I was evaluating things like
E.x = Origin.x + sqrt(1/((rv2/rh4)(tan2θ) + 1/rv2)
To find the point on an ellipse where the tangent is at a given angle. My little calculator widget was not remotely up to the task.
Cascading Style Sheets (CSS) and PHP
Often when dealing with Cascading Style sheets, or CSS, I find myself wishing that the CSS mechanism included variables. This is especially true when dealing with colors, since you want the same color applied to lots of different things. It can be a real pain to go back through an old style sheet and find the code for the color you want. I was quietly surprised that no one making up how CSS worked had addressed something like this.
Then, a while back I was giving a buddy of mine a few exercises to introduce him to the exciting world of Web programming, touching on CSS, HTML, PHP and MySQL. I gave him pretty much no guidance; I just thought up plans that would introduce him to the concepts and gave him a list of my favorite references. (I’ll be posting those exercises here in the nearish future.)
Anyway, without me to tell him how to do things, he went and dug around and one of the first style sheets he sent me for evaluation had a .php extension rather than .css.
Bingo! Once you see it in action, it’s obvious. PHP can be used to generate CSS files just as easily as it can be used to generate HTML files. Now my style sheets can change based on external conditions or can simply define a set of colors that all the style definitions share. Why did it take me so long to figure this out? It seems like this technique should be a lot more common than it is.
Here’s a quick code snippet for those who want to try it for themselves:
<?php header('Content-Type: text/css'); $header_back_color = '#dddddd'; ?> #corner_table th { background-color:<?php echo $header_back_color ?>; text-align: center; } |
A couple of notes: the <?php MUST be the very first thing in the file. No empty lines, no spaces. The reason is that the next line, with the header() function, has to be called before the server sends any page content. (Once the server starts sending content back to the browser, it’s too late to be fiddling with the headers. Any whitespace outside the <?php tag will be considered content.) The header line is necessary because you need to tell your browser that what you are sending really is a css file.
In the <head> of the html file, you call the style sheet just like normal, but of course the file you fetch will have a php extension:
<link rel="stylesheet"
href="http://yourdomain.com/css-tables.php"
type="text/css"
media="screen" /> |
That’s all there is to it. Why have I not done this with every css file?
Self-Portrait Friday!
It’s been a while since I’ve turned the camera on myself, but today I joined Pinup Lifestyle and was looking for a good photo to put up for my profile. I call myself a photographer over there, so I wanted the picture to be a good one. I used one of my old favorites from long ago, but that got me to thinking about some other things to experiment with.
Tonight I closed myself in a dark room with my camera (on tripod, set to ‘bulb’), remote shutter release (operated with my toes), and a pair of flashlights. My goal was to open the shutter, shine a light on one side of my face with one expression, then shine a light on the other side of my face with a different expression.
I was not entirely successful.
This is an early attempt using one flashlight. I just couldn’t keep still enough while also dealing with the lighting. When I went to two flashlights things got better, but getting the two sides of my face exposed equally proved impossible.
Sometimes when things go wrong, however, they can come out all right. My toe slipped off the shutter release on this one, before I got to the second flashlight. After this shot I realized that I was overexposing where the flashlights hit and I cranked the aperture way down. Things got better after that.
This was a test shot while I was adjusting the aperture. It came out pretty cool, if you ask me.
Given infinite time and infinite patience, I think I would have got the shot. I had neither, however, and when I began to like my test shots more than the actual attempts I decided I’d done enough. Sometimes an experiment doesn’t yield the results you expect, but that doesn’t mean the results aren’t interesting.
This Might Be Fun
I’ve written quite a bit about my participation in the Cyberspace Open, and Long ago fuego and I were winners at the Duke City Shootout. Here’s a contest that combines the two: The 48-Hour film Project. You are given prompt, a prop, and a couple of other constraints, and in the next 48 hours you write, produce, and edit your entry.
I think I have the right group of friends to do this. It’s a bit pricey to enter, but the biggest problem would be getting us all to the right place at the right time. San Jose’s in August. Anyone want to come play?
The Lust Lizard of Melancholy Cove
One axiom I use when evaluating fiction is that the author is allowed one Big Coincidence in a story. It’s that one unlikely event that turns a mundane situation into something worth writing about. In The Lust Lizard of Melancholy Cove by Christopher Moore, the coincidence is that the Old Bluesman who comes into town just happens to have a history with the sea monster that can alter people’s brain chemistry (and make them randy as bunnies in the springtime) which comes ashore just as the town shrink switches everyone from their antidepressants to placebos in response to the death of a patient while…
You get the idea.
There is, happily, an exception to the one-big-coincidence rule, and that’s farce. Farce is not as easy as it looks; you can’t just throw some new bizarre thing at the reader every time you lose momentum. Ultimately things have to hang together, to make sense in the farcical context, and come to a satisfying resolution. Characters still have to grow and change organically. Lust Lizard pulls off the farce in style.
The sea monster’s bunny-in-springtime effect begins to take hold before he even reaches shore, and unlikely pairings ensue. Alas, Steve the sea monster is not so fortunate in love. After an less-than-successful romantic entanglement with a gasoline tanker, the sea monster disguises himself as a trailer in a trailer park, where he is named Steve by the unstable b-movie actress who lives next door (and still works out with her big sword while dressed in her barbarian outfit).
Steve’s not a bad guy, really. Just hungry and lonely. And it’s not as if anyone liked the paperboy anyway…
Naturally the onus for figuring out what’s going on and doing something about it falls on the local law enforcement. That would be Theo. Theo is stoned most of the time, grows his own weed, and follows orders from the department in the big city. Those orders don’t always make sense from a law-enforcement standpoint, but Theo knows a good gig when he sees one. Only problem is, he’s on his own this time.
Throw in a colorful cast of side characters and this coastal California town is primed and ready for wacky hijinks. And hijinks there are aplenty. This book has its serious moments but even they shimmer with a surreal glaze, then off we go romping through the bizarroverse again. It’s a fun read that never loses its momentum.
I wonder, with books like this, which came first, the story or the title?
Note: if you use the above link to buy this book (or a Kindle, or a new car), I get a kickback.
Round Two: My Fake Entry
As I thought about this prompt, I thought of the scene in the the classic movie Get Crazy, when Reggie Wanker emerges from a dressing room filled with naked women only to discover that the girlfriend he’s been ignoring (and who saw him in the room filled with naked women) is now with another guy. Said Reggie: “Betrayed! Turn your back for half a second and they stick a knife in it right up t’hilt.” As he goes back on stage (this has all occurred during a drum solo) he says. “I’ve finally found the meaning of the bleedin’ blues. Ol’ Reggie can take the pain… but can they?“
Classic stuff. Malcolm McDowell makes a great Mick Jagger.
Anyway, I pondered for a while about what to do for my scene, but because I didn’t want to work too hard at it, I borrowed characters from a story I’ve already been fiddling with, called The Quest for the Important Thing to Defeat the Evil Guy. Tatra is a new addition, and hey, what high fantasy story can’t be improved with a smart-mouth goth chick? Once again I’m heavy on dialog without much physical action.
A Typo that Should be in Common Use
Round Two Begins!
I was eliminated in round one of the Cyberspace Open (not even a near miss, I’m afraid), but that’s not going to stop me from cranking out a scene for round two! It will just stop me from working very hard on it.
Your PROTAGONIST has been betrayed by his CONFIDANT — someone deep within his (or her) inner circle. This betrayal threatens to destroy everything the protagonist has been working towards. The protagonist’s only ace in the hole: the confidant is not yet aware he’s been found out. Write a crackling scene in which the protagonist confronts the confidant.
I had a thought this morning that might help the one hundred talented folks who are moving on. The top three entries will be produced on video to determine the grand champion. If you think you have a shot, you might consider the produceability of your scene – will it shine in a low-budget video enactment? Zero gravity explosions being an integral part of the action might cost you in the long run.
I wish all of the contestants good luck, but especially the ones who have stopped by here to share advice. You guys rock!
Tonight’s Sharks Game
Cyberspace Open: My results
Well, I got my score at the Cyberspace Open and I won’t be going on to the next round. I have mixed emotions about my score; some things I think could have been better aren’t even mentioned; other things I got dinged for are somewhat annoying.
I’ll start with the original assignment, for review (emphasis added by me):
Your protagonist is crushed. His or her plans have been dashed; his objective now appears impossible. And yet if he throws in the towel, bad things will happen. Write a scene in which a mentor, friend, love interest or enemy rallies or provokes your protagonist in an unexpected way. Be sure to give us your best dialogue here as your protagonist comes around and rises – or falls — to the occasion.
It’s a good prompt – it has specific goals but is a crucial moment in almost any plot.
Here’s the feedback for my entry:
Good basic concept behind this scene, though it’s a little tough to find rooting interest in Deek, simply because he’s such a downer. Igon’s appearance is a good turn, but it would have been great to see a little action at that point, if this bargain were to happen in the middle of a battle between the two as the bar gets trashed, ending in them making a pact but leaving total destruction in their wake. In other words, great setup but bigger visuals and movement would have made this scene much stronger.
My score: 83. One difference between this year’s contest and the previous is that we can see all the other scores and attendant feedback. 83 is… not very good. Below average; not sure about the median. So, how did my baby miss? I think in the end I was trying to squeeze a seven-minute scene into five minutes. Every tweak I made that added a line to the screenplay pushed the result over the five-page limit. Something else had to go.
Annoying thing #1: When faced with a decision of what to cut, I kept dialogue. I spent my time honing the words, revealing character through word choice, and so forth, at the expense of action. They said they wanted dialogue.
In retrospect, I should have ignored that bit of the prompt. They always want good dialogue. They also always want action. In the larger context of the story, big action would not work here. It’s not that moment in the story, and Igon works through guile. If I could have added another page to the scene, there would have been more action anyway; not bar-trashing action but more personal. Just… more visual. It was the visual stuff that didn’t make the cut to five pages.
Also, dialogue takes more time to judge properly. I doubt the judges read the entries out loud, for instance.
Many of the actions I chose to remove were smaller things, mannerisms and body language that help reveal character and motivation. Novels are full of that stuff. With a screenplay, that’s what the actor brings to the table. Putting too much of that stuff in the screenplay is called ‘directing from the script’ and is at best a waste of everyone’s time. Yet, for this contest, where we don’t have the history that comes before the scene, perhaps some of those actions would help the judge to get the feel for the characters. Pretty much all that was left was blocking.
Then again, it might have been as simple as having Deek trying to smash his bottle to use as a weapon, spewing beer all over the place, and maybe cutting himself in the process. Then there’d be blood…
So, yeah, I have to admit that more action would help the scene, perhaps a lot. Some of that was in there but fell to the ‘dialogue priority’. Back to Annoying thing #1. Next time…
The comment about it being “a little tough to find rooting interest in Deek” is a valid one. In the context of the story, we’ve had a long time to bond with him, to watch him pay the consequences for decisions that have gone wrong. In the scene, we just see him at the bottom, and the fact he’s not a very likable guy at that moment is important. But someone reading just this one scene won’t get any of that.
I have been a bit slow, I think, to recognize that writing for this contest and writing an actual movie scene are fundamentally different. For all the organizers say not to put in extra stuff that would normally be established earlier, they can’t judge the scene well without it. Writing a successful entry in this contest is more like writing a short film than the judges would care to admit – it’s just one with no resolution. Also, you need snappy dialog and action in your submission, whether or not your overall story wants it at that point or not.
On another tangent, remember what I said about the prompt being a crucial point in almost any plot? As I was working on my entry this time I began to wonder, “How many people will submit scenes they’ve already written?” Most of the entrants in this contest are aspiring screenwriters; almost all of those will have finished screenplays with a scene much like this in them. I was feeling a little guilty for writing a scene for a story I was already working on, though I did this scene from scratch. I was worried that some of my competition would be starting with works that they’ve been honing for a long time. I’m still not sure how I feel about this aspect of the contest. Is the honor system working? No way to tell, until the winner says “and I have the whole movie ready for an agent!”
I plan to write a scene this weekend for the second prompt, just for fun. Heck, why not? At the very least I can use it the way I did this one, to spur me to fill a hole in one of my other works in progress. I’ll post the result here as well, just for giggles.
If I decide to participate in the contest next time, I might use the characters from The Quest for the Important Thing to Defeat the Evil Guy. Since those characters appear in every fantasy novel ever written, I can avoid the catch-22 of having to establish the characters without establishing the characters.
Hey, Cyberspace Open Guys! Um… never mind.
On the Web site for the Cyberspace Open, it says “Judging is expected to take 3-4 weeks.” Now, I understand that’s not the same as saying “Judging will take at most four weeks,” but round two is this weekend and still no word on our scores from round one. It has now been over four weeks.
Note: Ooops! Looks like I missed one of the bullet points on the contest Web site, and the results are due by tomorrow at the latest. The rest of this episode was a bit of a rant (tempered with my belief that this is a cool contest), and at least part of what I said was unjustified.
Sorry, Cyberspace Open Guys!






