Cyberspace Winter 2011 Early Registration Deadline Tonight

This is just a reminder to those out there who enjoy the Cyberspace Open that registration closes tonight. It’s a fun contest, and a good way to spend a weekend. In a nutshell, you are given a prompt and you have a weekend to write a scene that would fit in a a feature-length screenplay that fits the prompt.

CORRECTION: Originally in this episode I said tonight was the deadline for entering. It turns out tonight is the deadline for early entry, which is cheaper. You can still register after today.

Even if you don’t pay to participate officially, I encourage the writerly types out there to play along. Just because you won’t be judged doesn’t mean you can’t have fun writing to the prompt.

As usual, I’ll be posting my round-one entry here. Even if I don’t make it to round two, I’ll write to that prompt as well, and post that here for the amusement of all.

See you in the winners’ circle!

Iron Angel

I bought Iron Angel by Alan Campbell last summer at the recommendation of a friend and fellow aspiring writer. It sat on my shelf for a while (I have a pretty depressing backlog right now, and that doesn’t even include a host of more literary works I know I should read at some point), but the time came for me to dive into a good fantasy novel, and there it was waiting for me.

Fantasy stories are subject to the same standards of criticism as any other genre — characters, plot, compelling language, and so forth — but there are a couple of genre-specific criteria against which they are measured as well. Foremost among those is world building. Fantasy writers get to throw out all the rules that govern our universe (except the rules of human interaction) and build new worlds from scratch. Anne Rice built such a compelling world that there have been (probably) hundreds of stories set in it by lesser writers who do not possess her world-building skills.

Mr. Campbell has built himself a hell of a world here. It’s a sort of Steam Punk/Fantasy mashup. Mashups are all the rage these days, but it’s still refreshing to find one that’s actually done well. Here we have a world with magic and whatnot, and also giant steam-powered war machines (imbued with human souls). The world is an Earth sandwich, with an unresponsive heaven above, expansionist hell below, and angels and demons slugging it out on mortal man’s turf. From the human point of view, there’s not a whole lot of difference between an angel and a minion of hell.

The cover of the book says “By the author of Scar Night.” In fact the book is a sequel. Had I stumbled into the middle of a series? The answer to that was a pretty clear ‘yes’. In the first chapters the author went to great lengths to bring me up to speed on the events of the previous book, and while a crash course is never as fun as a well-paced story, I was nevertheless encouraged by the author’s effort to make the book I was holding a stand-alone story. Specifically, I was confident that there would be an end to at least one major story line by the time I reached the back cover of the book.

About halfway through, I began to worry. Characters had been introduced but not revisited for hundreds of pages. The vectors of the characters’ storylines were parallel. I became more worried after a part of the story that goes like this:

Leader of Good Guys: You must not be caught! I’ll sacrifice myself so you can get away!
Unlikely Hero: OK.

Unlikely hero wanders through hell, avoiding capture. There is a section where he outsmarts a magical door. It’s a nice anecdote, the sort of thing that the Odyssey is composed of, but when the little mini-story is over, the larger story is advanced… not at all. (As I recall, Odysseus didn’t learn much either.) Then, to top it off:

Unlikely hero gets caught.

Now, the unlikely hero’s adventures could have been meaningful. UH might have learned a key fact that he could use later, or he could have an experience that would teach him about himself — he could find strength or expose a weakness. In this case, none of that happened. He had interesting adventures, but in the grand scheme, they mattered not at all.

After I got through that part, I started to worry. Spending so many pages on anecdotes that don’t move the plot does not indicate an author who intends to put any sort of closure at the end of the current volume. I checked the cover again, for anything like “Book two of…” but there was nothing to warn me that this book was dependent on others. OK, no worries; the story is entertaining and the prose is solid if not magical, Just enjoy the ride.

As an aside, in a long adventure story, ‘solid’ is often preferable to ‘magical’ when it comes to the prose. When you’re spinning a yarn, you don’t want your language upstaging your story. You want the words to disappear, the same way the letters do.

On we went. Campbell pulled out some pretty cool inventions, and a transparent train that bugged me immensely. Still, the story vectors were starting to converge, the sudden appearance on the scene of a new secret society was handled with brevity and grace, and it all came down to a final cataclysmic battle. We’ll get to that in a moment.

First I have a brief quibble about economics. Humans are slaughtered in this book. Lots of them. Legions of them. And down in hell their souls are chewed up and spit out, presumably reduced to ultimate nonexistence. At the rate things are going, the world would be depopulated in short order, and not long after that, hell would run out of souls to play with. I think on our current Earth, we send about 8500 souls down to hell on any given day. Iron Angel’s world is much less populous, yet the folks down in Hell chew through souls like they’re peanuts. Somewhere in there the demand curve has to kick in, and human life becomes more valuable in the eyes of both angels and demons.

Although, in this story human extinction is a real possibility, and that’s pretty cool. It’s just that neither side is making good use of available resources.

So: the final cataclysmic battle. I don’t want to give away too much, but…

It wasn’t final. It was a trap! The “book” (actually a volume) ends with the bad guys pulling a major coup and the real evil army arriving on the scene. We ran out of pages with not even a pretense of an ending. AAAAHHHHHHH!

So here we have a peeve of mine — a book that does not have an end at the end. At least most of the time when this happens the publisher has the grace to put “Book 2 of the Steampunk Angel series” or something like that on the cover. Not this time. “By the author of” does not communicate that you are not buying a complete story. Quite the opposite. This was not a novel. It was not a story. It was a well-written fragment. In the back pages where they tried to sell me the next installment, I found the words “book three.” HA! They knew all along it was simply an episode in a series, they just didn’t put that information on the cover.

Why would they hide that fact? There’s only one reason I can think of. They want to trick people like me into buying volume two. Man, this gets my goat. Mr. Campbell probably had no control over this; he wrote a big-ass story that took three volumes to tell, and sold it to unscrupulous people who actively hid that fact to the naïve book-buying public.

So, here’s the label I would put on the cover of this book: WARNING: This well-written and downright clever work has study hall at the beginning and CONTAINS NO END! The next book will have an end, we promise — and if you read this volume study hall next time will be really easy.

Personally, I think I’ll wait for the box set.

Note: if you use the above link to buy this book (or a Kindle, or a new car), I get a kickback.


The Nerf of These People!

On my second day of work, at 3:38 pm, the first shot was fired. Within moments my co-workers were bristling with sophisticated foam-dart-launching technology, and my first Nerf battle was underway. Someone loaned me a long, bolt-action sniper “rifle” with a magazine that held about ten darts. I didn’t dive into the thick of the conflict, but I did take opportune shots when targets presented themselves. I also experimented with bouncing shots off the ceiling, trying to hit my coworkers from above. That wasn’t very successful.

One thing was clear: If I intend to survive among Apple’s finance help line employees, I’d better start packing heat. Plastic-tipped foam heat, to be precise.

Toward that end the light of my life visited our local Target, where she discovered just how elaborate the Nerf arsenal has become. Not knowing what my co-workers were packing, she didn’t want me to have some completely over-the-top weapon if no one else was that crazy. So, she bought a pistol that fired suction-cup darts (which I have dubbed “hollow points”) and had a cool little laser-like sight mechanism.

My sweetie brought it home and, much like a ten-year-old on Christmas morning, I liberated the weapon from the confines of its packaging and checked it out.

The gun used a pneumatic plunger driven by a spring to propel the darts. Unfortunately, the plunger was not very good a plunging, and the darts barely made it out the end of the gun. I was thwarted by plastic/pneumatic impotence. Sad times.

My ever-supportive sweetie has made another trip to Target to trade in The Little Pistol that Couldn’t for another model. I have assured her that it will not be possible to upstage my co-workers. “Large magazine, short barrel,” I have told her.

When I get home this evening my new cubicle warfare equipment might be waiting for me. What will it be like? I can’t wait!


First Day of Work

I went to bed last night almost-employed, knowing that my start date would be soon. This morning I was awakened by the phone ringing, and learned that today was my first day. I got my act together, shoveled down a bowl of cereal, brushed my teeth and off I went.

I am now an Apple employee. Well, a contract employee working at Apple. I have my own cubicle, a phone (hooked up tomorrow), a laptop and big monitor, and a badge that gets me into buildings I couldn’t get into before. I’ll be putting together tools to help their Finance department to finance stuff more easily. On the side I’ll throw the WebKit team some code now and then.

I am told that tomorrow afternoon I may regret not having a nerf gun.


Sticky Music

My sweetie and I both woke up with Christmas songs stuck in our heads. For me, the song was “Toy Jackpot” by Blackalicious, with its super-catchy chorus “Is it time yet? Is it time? I can’t wait” in a smooth hip-hoppish vibe. My sweetie emerged from slumber with “10,000 Watts” by Crystal Antlers, a high-energy song about Christmas lights, made to be turned up loud.

Now I have “10,000 Watts” in my head, too.

While very different in sound, these songs have two things in common: They are both really cool, and they both came from Target. In fact, you’ve probably heard parts of the songs already, along with a bunch of others, in Target ads. It was after watching an ad with a song called “You’ll Never Find My Christmas” that the light of my life encouraged me to go in search of the original music to download.

Well, what do you know? There’s a whole Christmas album for download for free at, and there’s not a dud in the bunch. Target found a bunch of different up-and-coming bands and gave them a great opportunity, and got themselves some fun advertisements built around the music at the same time. To me, this seems like exploitation done right.

For the Ebenezer Scrooges among you: Yes, Target is a big, giant retail corporation, and I’ve just become a shill for them. Lighten up, would you? It’s Christmas! These are good songs you wouldn’t get to hear otherwise!

So hop on over and give a listen — you just might find your new holiday favorite.


Trying a Different Spam Filter

Every day, literally hundreds of spam comments are sent to this blog. I have a a couple lines of defense, and generally they work pretty well. My first defense is a product called Bad Behavior, which inspects incoming messages and blocks the ones that look malicious before the WordPress code is even started up. Stopping evil at this stage can save a lot of server resources, as well as prevent this site from being hijacked by an unknown WordPress vulnerability.

Comments that get through that layer are then inspected to see if they look suspicious. Ones that the inspection service doesn’t like get thrown into a bucket behind the scenes where I can inspect them and approve innocent comments that were mistakenly flagged as spam.

I have been using Akismet for that, and in general I’ve been pleased with the results. The only downside is that now there are so many suspicious comments that I’m afraid that I’ll miss actual legit comments that were improperly flagged. Scanning through a list of hundreds of comments each day is not effective and, really, not a good use of my time. So, I began to look for alternatives.

Defensio is similar to Akismet, in that comments are shipped off to some service somewhere and then returned with a grade. The main difference is in the administration interface that I see, where Defensio sorts the rejected spam comments to allow me to more quickly spot legitimate comments that were falsely flagged as spam.

You may have noticed a surge in the amount of spam around here. This is (I hope) a learning phase for Defensio, and eventually it will stop allowing 3% of the spam comments to get through. (Akismet is still running, but mostly in a “see? I told you so” capacity right now.) I’m a little confused, because some of the comments Defensio displays are rated at 100% spamminess by Defensio’s own service.

Please bear with me through this somewhat-more-spammy-than-usual phase. I’ll be checking for spam comments regularly, and watching to see if Defensio’s performance improves. Also, this is a particularly good time to leave comments, from a training-the-filter perspective.

A (Not So) Simple Task

Even the most reliable cars require occasional maintenance, like changing the battery. Happily, this is a very simple operation — unclamp, remove, replace, clamp, and away you go. Simple, right? Right? It’s not like it’s the kind of task that would take more than a week to accomplish.

A little more than a week ago I was working here in my office when my sweetie went out to run errands. The sound of the car starting wasn’t quite right, but she got it going and away she went. A couple hours later she called from her parents’ house. “My battery is dead. I’ll be home as soon as I get a jump start from Dad.”

The battery is the original that came with the car, ten years ago. Not terribly surprising that it needed replacing. (And it’s worth noting that this is the first trouble of any sort with the car.) I opened the hood to take a look-see. The negative terminal was badly corroded, along with some pieces that connected to it. The pair of nuts that clamped the connector onto the lead battery post were not really recognizable anymore. I realized it was going to be tricky to loosen them.

Although in the end it turns out there was no need; the clamp itself was cracked through. That explains the sudden loss of electricity, rather than a slow decay of battery performance. I would need a new battery terminal connector as well as a new battery.

I looked closer and realized that there were two parts connected to the old terminal – one a fairly typical heavy-gauge wire connected to the chassis nearby, as you will find in dang near every car, and another elbow-shaped copper piece that was fused into a plastic connector that had a pair of other plastic connectors snapped into it. A Dealer Part. The metal was badly corroded, and I thought it would be a good idea to replace that bit, too.

I tabled that thought, however, and ambled off to the local Kragen to get the new battery and a standard terminal connector. I brought them home and set to work loosening the nut that held all the pieces together.

I quickly realized that I didn’t have the tools to loosen a nut that has been corroded almost beyond recognition. Off I went to Sweetie’s Father’s house to borrow his socket set. Home again, to discover that the smaller sockets weren’t deep enough to get all the way down the shaft of the bolt and onto the nut. There were some box wrenches in the set, but they were all too big. I was faced with another decision. I judged that it was time I had a decent set of wrenches of my own, and so away once more I went, this time to the local Ace hardware.

After a long time considering options, it boiled down to two choices: a set of wrenches with both metric and SAE, or a set with a wider variety of SAE sizes. I didn’t think the metric-and-SAE set went small enough, so I went with the comprehensive SAE set (it also had a holder for storage, which in our current situation is a big plus).

Home once more with new wrenches (always good to have anyway), I dove back under the hood and discovered that Americans building cars in American plants are putting metric nuts in their cars now. While overall I’m behind this movement to get in sync with the rest of the world, I still didn’t have the right wrench. It was late, I was tired; I put some penetrating oil on the mess and resolved to finish with the car the next day.

The following day I took another trip to Ace and bought the metric version of the set of wrenches I’d bought the day before. I also bought a pair of vice-grips, in case things got ugly. Home again and back under the hood, things got ugly. The nuts were too corroded, and were chemically welded. The vice grips could lock on with mechanical ferocity, but the material of the nuts was not able to withstand the force necessary to unfreeze them.

During this operation I made another discovery. Normally the clamp that goes over the battery terminal is a separate piece that the ground wire bolts to. Not in this car. The broken metal strap was a contiguous piece crimped directly onto the ground wire. I figured I could work around that, but it was looking more and more like the other Dealer Part was not coming off the car intact. To the Internet I went.

There was no mention of a part like this on any Ford Web site. Finally in a Ford Escort owner’s group I found my answer: the part could only be obtained by buying an entire wiring harness for $350. Say what, now? Also the broken terminal strap that started this whole mess was only included in that $350 purchase.

We ruled out that option and I went back to unscrewing The Nuts That Were No Longer Nuts. Failure, fatigue, and another day lost ensued. That night I decided that bolt cutters were called for, but I wasn’t sure how to get them down into the recess where the nuts lay. Perhaps a little saw would be better. I called Father-of-Sweetie the next day and of course he had all those things. “Do you have a little Dremel tool?” I asked, suddenly realizing what the right tool for the job was.

Sparks fly as I cut through the reluctant bolt.

Sparks fly as I cut through the reluctant bolt.

We have a Dremel tool,” my sweetie informed me. Hot dog! I opened up the case, and there was a little cutting-wheel attachment, smiling up at me. It looked like a light at the end of a tunnel. On a gloomy Tuesday afternoon (the car first failed the previous Thursday), I opened the hood once again and set to work cutting the bolt, while being careful not to harm the Irreplaceable Dealer Part (IDP) any further. Sparks flew! Get the camera!” I hollered to my sweetie. She took some great shots. Now I wish I’d gotten more pictures up to this point, like a time-lapse of the slow aggregation of more and more tools.

Success! After cutting through nut and bolt about two millimeters above the surface of the IDP and then slowly carving away at that, at last the bolt came free! Now all I had to do was cut back the main ground terminal so it could be mounted on the new terminal strap, slip on the IDP, and go have a beer.

bits and pieces of the old terminal connector

bits and pieces of the old terminal connector


The place to connect the Irreplaceable Dealer Part to the new terminal connector wasn’t flat enough for the IDP to sit flush. It would have to do, I decided, and cranked down on it to get the best contact I could and forged ahead. Not very far ahead, as it turns out; I dropped one of the nuts for the new connector. It fell under the battery tray. Probes with a magnet were fruitless. Shaking the car didn’t free it. We couldn’t get to the damn nut. We were thwarted for another night.

I’d been thinking about using a good old-fashioned lead terminal connector anyway, rather than the steel one I’d first purchased, so while on another shopping mission we flew by Sears Automotive and got what I thought was exactly the ticket. We got home and I told my sweetie it would only be a few more minutes. Hah.

On with the lead connector, on with the… What the #$%[email protected]#! The corroded and truncated connector at the end of the main ground wire didn’t fit over the terminal post. *sigh* I used a screwdriver, twisting it in the hole, to widen the opening until I could just get it over the terminal. I was worried about that connector, though, corroded and abused as it was. I managed to get the IDP onto the clamping screw, and tightened everything down.

At last, the battery was installed.

I got in and the hazard lights blinked and the chime went “beep-beep… beep-beep” which I took as a sign that a) there was electricity, and b) the car was trying to tell us something. Like, that it had lost power and its electronics needed to readjust. I turned the key.

Nothing. Not even a click.

Well, crap. Back under the hood I went. Primary suspect: The used and abused ground connector. I cut the ground wire and stripped back the insulation. Holey moley – the copper was corroded right on up the wire, beneath the insulation. Powdery light-blue copper oxide fell like snow. I cleaned off what I could and clamped on a new connector that had come with the first terminal connector kit. I used parts from both kits to get the IDP bolted on with good contact as well. This was about as good as it was going to get without replacing the entire wiring harness. Key in ignition, lights came on, beepers beeped. I turned the key. Nothing. Not even a click.

Perhaps the battery didn’t have enough charge to turn over the starter. The Miata was standing nearby, so my sweetie and I pushed the Escort out into the gentle rain to the other end of the carport. We hooked up the jumper cables (using an entirely different ground point), waited a couple of minutes, then turned the key. I think you can guess what happened. Yep, lights flash, beeper beeps, turn the key and nothing — that’s what happened. We pushed the car back, managing the slight uphill better than I thought we would, and I turned once more to the Internet.

After striking out finding any sort of answer myself, I found, a place where, for a fee, I could ask a certified Ford mechanic what the heck was going on. I went through the preliminary steps, plunked down fifteen bucks, and asked my question to a guy named Chuck.

“Is it a dealer or aftermarket anti-theft device?” he asked.

“I specifically told the dealer I didn’t want any of that,” my sweetie said when I relayed the question.

“Well, you have one,” Chuck informed us. “You need to find the reset button.”

The anti-theft module we didn't want

The anti-theft module we didn't want

Long story (that had me contorting myself underneath the dashboard) short, we did have an anti-theft device, and it didn’t have a reset button. That was the part that the dealer was trying to sell my sweetie when she declined to be upsold.

To emphasize: Frontier Ford of San Jose sold my sweetie a car that would become completely disabled any time the battery was disconnected. What if she’d been out in the middle of nowhere when something happened to interrupt the electricity? What else might have activated the device? The irresponsibility of the dealer is simply mind-boggling. There really are no words to express the depth and breadth of my anger, and it pales next to the world-class ire my sweetie felt.

After a couple of hours tracing wires, we called it a night. At least we knew the problem. I would be able to remove the module, but I needed wire and connectors to restore wires that the anti-theft module interrupted. The next day I went out to the car again and got my only pleasant surprise of this whole endeavor: merely removing the plastic anti-theft module but leaving all the wiring in there actually allowed the car to start again. I’m a little surprised at this outcome, but I’m not questioning it.

When she heard her car start, my sweetie came down and hugged me and congratulated me on getting the damn thing fixed. Honestly, though, when you consider I made six trips, bought wrenches, vise-grips, multiple redundant parts, had my sweetie pushing a car in the rain, and torqued my back, all to change a battery, it doesn’t sound so great. But there it is.


Fox Dreams

I started reading The Fox Woman by Kij Johnson. I read for perhaps half an hour before turning off the light and going to sleep. The next morning I awoke with all sorts of memories about elegant Japanese gardens gone partly wild, about foxes transforming into people, about magic and desire.

In fact, I had memories of far more events than were the book. There was something about the language and the setting that fed straight into my dreams, and all night my sleeping self continued to explore that world. Pretty sweet!


Advance Notice of Unplanned Outage

Just a quick note to tell you guys that I’ve run into technical difficulties renewing the domain name. LiveRack sucks. Never, ever, register a domain with LiveRack.

Actually, I’m not sure you’d be able to register with them even if you wanted to; their payment acceptance portal seems to be broken. Thus, I cannot renew this domain. There is no way to contact anyone at LiveRack. A long time ago they listed contact information but never answered queries, now they don’t even bother pretending. LiveRack sucks. Never, ever, register a domain with LiveRack.

So, I decided now would be a good time to move the domain to a new registrar. I’d tried this some time ago, without success, because LiveRack did not respond to the request. This is, as you might have surmised, because LiveRack sucks. If I were you, I’d never, ever register a domain with LiveRack.

So, with time running out, I put my nose to the grindstone and got the right codes to move the domain despite LiveRack’s unresponsiveness. But, wait! It can’t be that easy… The domain is too close to expiring to move. I have to renew, then move. But I can’t renew, because LiveRack sucks. There was a time, long ago, when LiveRack didn’t suck. Those days are long gone. You see, these days there’s really no way to describe LiveRack without using the word “sucks”. I wish I’d never registered my domain with LiveRack.

Tomorrow I’ll try LiveRack’s renewal again, in case they’ve fixed it, and I’ve appealed to Enom to intervene as well. LiveRack is a reseller for Enom; LiveRack’s only role was to process my payments. Now they can’t even do that, apparently, which leads me to the inescapable conclusion that LiveRack sucks.

So, in a couple of days, may stop working. I’m still hopeful, but I wanted to let folks know ahead of time.

Oh, and if anyone asks you about LiveRack? Well, LiveRack sucks. Under no circumstances should anyone register a domain with them. Seriously.

Birds, Hands, and Bushes

Less than a week ago I was uncertain where I might be picking up enough work to pay rent. I wasn’t too worried, to be honest, but there was a lot of unknown. Monday I was contacted by my good friends at TEK Systems, a contract placement firm, wondering if I would be interested in a job at Apple. I responded with an enthusiastic affirmative. From all I’ve heard, Apple is a great place to work.

Karen and Brian at TEK Systems set up an interview for me on Tuesday. Brian met me outside the building, took care of introductions, and I met with the woman who could potentially become my manager. The job was interesting; doing rapid development of Web-based tools for Apple’s financial group. I kicked butt in that interview, and left feeling that I’d probably landed myself a job in the land of Jobs. I got home and kicked off my shoes and called my TEK pals and told them I thought it had gone well, and that if Apple offered the position TEK Systems could accept on my behalf.

Later that evening, I checked my email. There was a message there from a recruiter at Apple, saying that the WebKit group had seen this page and wondered if I’d be interested in a full-time position as a WebKit developer. Cool! I’d be doing what I’d already been doing only now getting paid for it.

If only one of the jobs had been at Apple, my decision would have been easy. I mean, what are the odds of getting interest from another group at the same company on the same day, anyway?

So then I had a bit of a dilemma. On the one hand I had hit it off really well with the boss in the first interview, on the other hand the second opportunity was doing something I feel passionate about in an environment where I could grow a lot more personally. I haven’t had anyone to review my code in a long time. I wrote back to the Apple recruiter that I would be interested and quickly contacted TEK Systems to tell them of the wrinkle.

Wednesday I spoke to one of the WebKit guys, who asked me a few programming questions but mainly just wanted to get a feel for whether he thought I would fit. I passed that hurdle, the next step was another more technical phone meeting with another member of the team, on Thursday. I told everyone involved that time was critical.

Somewhere in there — Wednesday evening, maybe? — the first Apple group formally said they wanted me to work for them, and they want to get started as soon as possible. (Although my potential future boss was totally cool about me talking to another part of Apple. She’s a believer, and will be happy for me no matter where I end up — as long as it’s at Apple.

Wednesday night I didn’t sleep much. I had an offer for a good job with some cool people. They wouldn’t wait forever for me to decide. “I could just take the job,” I thought. “I’ll have my foot in the door at Apple and the flexibility that contract employment allows. Plus, I can keep working on WebKit in my free time.” That last thought made up my mind. WebKit is where I want to be, but I’ll be plenty happy with either.

So, Thursday I cleared the second hurdle for getting a full-time WebKit job. After the technical phone interview the Apple recruiter called me and asked if I still wanted to move forward. “Yes,” I said, but told him that I had a standing offer elsewhere at Apple and I didn’t want to jerk them around too long. He understood, and thus there was Friday.

Friday. Wow. The interview process for a permanent job at Apple is not trivial. Eight meetings, two interviewers per meeting. Many of the sessions involved solving coding problems on a whiteboard, which can be stressful to say the least. Because the whole thing was put together on zero notice, there were no breaks between interviews. I sat in the conference room (other meetings were moved to accommodate this process), and they came at me two by two (although they were all very friendly about it).

How did I do? I’m not sure. There are certainly places I could have done better. My C++ skills are atrophied. But I’m pretty good at problem-solving and eventually I came up with good solutions to the problems they threw at me, which is the main thing they were testing me for. Ultimately, however, any programmer should be able to solve those problems. Did I distinguish myself enough from the pack to make them choose me?

The one meeting they couldn’t schedule on Friday was the one where all those people get together and decide wether to hire me. Monday morning, they tell me. Meanwhile I haven’t had direct contact with the other Manager who already offered me a job. She’s been waiting a few days now for my answer, and she needs someone in there quickly. How long will she wait? Hopefully at least until noon tomorrow.

Brief coda: TEK Systems has been great for me, and even though they don’t make any money if I take the full-time job they have been very supportive. I can strongly recommend the company, especially Karen Do, who is my primary contact there. She has been terrific.