The Hazing

It was standard at the firm. When a new scientist or engineer was hired, they were given an impossible problem. Sure, it seemed like a reasonable task at first, until it foundered on the fundamental laws of physics. The really bright recruits would catch on in a week or so; most took longer.

Then there was Harper. Six weeks and counting. Burning the midnight oil, submitting massive computation jobs, cursing when she thought no one was listening.

The board had been nervous about Harper. Her academic performance had been good, but not the level the company expected. But Joe Petersen had had a hunch about her. “Give her a shot,” he told the board. “You won’t be sorry.” Now he would have to be the one to eat crow and admit that he had been wrong about her.

It was not the sort of message one gives electronically. It was late but Petersen knew where he would find his latest hire. He knocked gently on her open door before walking into her office. She was sitting back in her chair, her dark hair a mess, deep circles under her eyes, just staring into space, nodding slowly.

“Hello, Alice,” he said.

She seemed to remember where she was. “Hi, Boss.”

“I owe you an apology,” he said. “The task I gave you —”

“I solved it.”

Even worse than he thought. “The task I gave you. It was impossible.”

“Well of course it required super-relativistic interaction between particles with mass,” she said. “Particles going back in time. I saw that right away. But the way you asked the question… It got me thinking.”

“And…?”

Alice Harper shrugged. “And I solved it. I just sent a naked quark back in time to resolve an ambiguous energy state. On paper at least. Can I go home now? I’m very tired.”

“I’ll see you Monday,” Petersen said.

It’s the Same Ol’ Lost-Data Story

In the last week I’ve heard from three different friends who all experienced the same heart-stopping, stomach-emptying feeling of doom. The oh-shit-I’m-hosed, no-going-back, if-only feeling of true loss.

Those friends were separated by thousands of miles, and by gulfs of temperament. They are all united in being intelligent, creative people.

In at least two of the cases, the hours of gut-wrenching agony were replaced with vast relief. But even as they expressed their joy to the world, the did not (publicly) resolve to do anything to prevent the same disaster from striking again. They still aren’t backing up their digital files. Two of the three sphincter-clenching moments I witnessed this week were sponsored by lost flash drives.

Aargh! It’s SO DAMN EASY to back your stuff up these days. And free! Dropbox is brain-dead simple and works everywhere. For most people, why do you even have a flash drive? If you DO have a flash drive, why is this little thing that can drop through a hole in your pocket the sole repository of everything you hold dear? I say again, “Aargh!”

Ok, DropBox isn’t the most private cloud storage around (though it isn’t terrible — way better than Google). You can quite easily encrypt your files on DropBox, or perhaps you would prefer tersor.it. Swiss-based DropBox, basically. And speaking of Google, if you don’t mind who reads your stuff, the Goog’s a ubiquitous and free way to back your shit up.

In the IT world, there is a saying: “If it’s not in three places, it doesn’t exist.” I can forgive someone who only keeps their data in two places.

But one place? A flash drive? Sorry, buckaroo, you’re going to have to take my sympathy with an “I told you so.”

Sometimes, You Just Gotta Go For It

My NaNoWriMo effort this year now includes a character named Dr. Jenkins. She is annoying, but she loves animals, so we can forgive a great deal.

Romance would serve no purpose in this story, but I may have to introduce some anyway. I mean, with a name like Dr. Jenkins, how can I not?

He kissed her neck and Dr. Jenkins let out a sigh. His lips moved up toward her ear, and Dr. Jenkins’ grip tightened on his arms. “Wait,” she said.

Max pulled away. “What is it, Dr. Jenkins?”

“I’ve… never felt this way before,” she confessed. Dr. Jenkins’ heart was beating too hard; she was having difficulty with even the simplest sentences.

“Nor have I, Dr. Jenkins,” Max said, his words just a breathy whisper as he nibbled on her earlobe. “Nor have I. But tonight, Dr. Jenkins, you and I will. Feel that way, I mean.”

Dr. Jenkins surrendered to his whispery voice. With a shudder that came from her very core she bent her lips to his ear, and whispered in return, “You can just call me… Doctor.”

1

November 1, 2017

It has become a tradition for me to post my first day’s NaNoWriMo output here on this blog. Some years I’m happier with it than others; this time around I’m very happy with the idea, but no so keen on the execution. Maybe ok for a first draft (and hey, isn’t that what NaNoWriMo is all about?) but I’ve done better. This has the makings of a quiet, personal story, but this is November so at any minute someone may transplant an alien consciousness into the cat and off we go.

I’ll try to do right by Max and Fucking Cat another time. Oh, and by the way, there’s some profanity coming up.

Max woke from a dream of a rainstorm of needles to find Fucking Cat tearing at his face with age-worn claws. He pushed the cat away with his left arm — his organic arm; he couldn’t afford any more repairs on the other one — but the creature yowled and dove for his abused face once more.

“Fuck!” Max said. He held Fucking Cat away from his face and it went to work on his thumb with its teeth while its claws tore at the flesh of his arm. “Fucking Cat, OFF!” The cat went limp in his hand. At least the voice commands still worked; the last time Fucking Cat had been hacked he’d had to find the hardware switch under its patchy fur.

His cluttered little cube was dimly lit by dozens of red and green status lights, casting crazed shadows on the walls as they shone between the wires, gadgets, and simple junk that cluttered every surface other than his sleeping palette and a plastic chair which had one leg replaced by a section of aluminum conduit. Old electronics running a little on the hot side, last night’s algae cakes, and cheap gin provided the smell that Max thought of as “home”.

He rose from the palette and wiped the oozing blood from his face and his arm with a scratchy towel and examined the dark-red dots. There had been a time when he could afford paper towels, and just throw them down the chute when he was done. He put the cloth towel back against his face and sat in the chair in front of his main console. The metal leg shrieked briefly as it shifted on the hard floor to accomodate his weight. The screen came to life as he sat, bathing the room in a serene, blue-white light. The cube raised other lights in the room, warmer light, the better to care for his eyes. His left eye, at any rate.

It didn’t take long to find the information he was looking for. The virus that had infected Fucking Cat was called SUPR DReD PeeKaBo01 (pronounced peek-a-boy), and had first surfaced thirty-six hours before, somewhere in the home system, possibly even Terra itself. Max snorted. Rightly or wrongly, Luna would be blamed in the end. That’s how it always was with Terra. If they couldn’t blame Mars, they could at least blame Luna.

His research complete, Max turned to the portal for The Pet Smith, and found the expected announcement about SUPR DReD PeeKaBo01. He muted the corporate yammering of the stupidly-attractive representative, no doubt selected for him based on a marketing company’s databse of images Max lingered over just a little longer than others.

Ignoring the distraction, Max searched for the instructions to download the patch. They weren’t where he usually found them, and that’s when he noted the somber expression on the spokesman’s face. She wore the regrettable bad news face.
“Ah, crap,” Max muttered, and with his well-maincured right index finger he allowed the spokesman her voice.

The message began with the spokesman sitting at a table, wearing a conservative, her legs crossed, however, to display a shapely calf. “Hello. My name is Kiki Ventura. We at The Pet Smith are deeply troubled by this most recent attack on our most loyal customers.” A flash of anger crossed her face, her deep-red lips tight at the corners. “The latest viral threat attacks a positioning chip in some of our classic lines of companion animals. Unfortunately that chip set has not been manufactured in many years, and the manufacturer has not been able to provide a software patch to cover the vulnerability.” Here she looked almost heartbroken. “While we will provide tools to rid your companion of any current infection, we cannot guarantee it will not be infected again.”

Kiki raised a finger like a lawyer in court. “All patrons of The Pet Smith can be assured that SUPR DReD PeeKaBo01, or any attack like it, is simply not possible on our newer lines of animal companions. Later model positioning chips are self-contained and not vulnerable to outside tampering.”

One of Kiki’s eyebrows lifted, and she leaned forward in her chair just a little, forcing Max to appreciate her breasts. “For those many who have loved their classic companion animals for all these years, perhaps this is the time to move on. You will be amazed at the incredible range of lifelike behavior our Model 12 line exhibits, whether cat, dog, or less-traditional companion. As part of the transistion, at first your new companion’s behavior will be practically indistinguishable from your current beloved. And we will recycle your previous animal companion with all the respect and dignity it has earned after a lifetime of service.” A brief smile crossed her lovely face. “That’s seven lifetimes in tech years!”

Now an expression of hopeful earnestness. “For a limited time…”

Max silenced the feed again, sighed, and pulled up his bank statement. Enough to cover the deductible for a visit to the Alice, the local veterinarian. He looked at Fucking Cat where it lay in a gray heap on his desk, legs tangled, one yellow eye staring blindly into the corner of the room, the other closed.

The flow of blood on Max’s hand and face had slowed to a slow ooze; he put the towel carefully in the sink and sprinkled it with cleansing powder before turning back to the terminal.

The vet was busy, it appeared; he wasn’t able to get an appointment for several days. In a neighborhood like this one, most of the animals were what The Pet Smith would have called “calssic”. What they really meant was “old”. But having so many older pets in the area meant that sometimes there were solutions to problems that the manufacturers didn’t know about. Or chose to ignore. He made an appointment for Thursday, five days out, and set to work clearing Fucking Cat of his infection, knowing that as soon as he activated the beast he would be infected all over again. Max wan’t going to have anyone to talk to for a few days.

On Wednesday afternoon, Alice called him.

“Max,” she said with no preamble, “I think you should cancel your appointment tomorrow.” Her voice was tired, carrying the weight of decades of delivering bad news.

“Why’s that?”

“Your warranty company has dropped coverage of FC’s model,” she said. She didn’t like the name Max had given his cat. “I’ll have to charge you full. And on top of that, I don’t have any fix for PeeKaBo01. You’d be wasting your money.”
“You can’t fix him?”

“It’s hardware. You could put a new positioning chipset in, but standards have changed. You’d have to upgrade the feedback bus and get way faster-responding actuators to support the clock rate of the new chips.”

“How much would that cost?”

“Several times the price of a new cat.”

By now Max had curled Fucking Cat into a ball and closed his other eye, so it looked like he was just sleeping, the thinning gray fur of his tail wrapped around his nose. “I don’t want a new cat.”

“Max, I understand what you are going through. Really I do. But maybe it’s time to let go.”

“Can you deactivate the chip?”

He waited while Alice composed her answer. “I could, but…” Max kept waiting, and finally she continued. “That chipset is part of a feedback mechanism that constantly recalibrates FC’s movement. Without that system, FC will gradually become clumsier and weaker, until finally he won’t be able to move at all.”

“How long would that take?”

“In a cat as old as FC, probably a few weeks. Maybe a little longer. It’s… not how you want to remember your Fucking Cat. Not for just a few extra weeks.”

“You want to hear something funny, Alice?”

“This isn’t going to be funny at all, is it?”

“My arm has the same positioning chip set. My eye probably does, too. I got lucky on the leg and the fingers. I won’t ask you to shut down Fucking Cat’s positioning chips, but I’d be grateful if you’d teach me how to do it.”

“I’ll see you tomorrow,” Alice said. “You can pay me in chickens.”

“If I had chickens I’d kill them for their chips,” Max said.

Alice smiled sadly. “You know what I mean.”

“I have to go,” she said.

“Why?”

“It dosen’t matter. I have to go. Can you look after Shadow? You’re the only one I trust.”

“I don’t want a fucking cat.”

“That’s not fair! He likes you!”

“It’s a fucking cat. It doesn’t like anyone. It pretends to like me to make you happy, because it pretends to want you to be happy.”

“What a mean thing to say!”

“It’s not mean if it’s true.”

“Just take him. Please. I won’t be gone long.”

“All right.”

“By the time I get back, you’ll be best friends.”

“I said I’d do it. You’re selling past the close.”

“You’re a good friend, Max.”

“Just fucking go if you’re going to go.”

1

Hedging Investments in Las Vegas

Usually gambling is a risky proposition, but occasionally it can be used to reduce risk.

I heard on the radio today that many months ago a Mattress Entrepreneur in Houston, Texas, said, “If the Astros win the World Series, I’ll refund all purchases over $3,000.” Tonight is a big night for Houston-area mattress buyers; if Justin Verlander pitches well a lot of refunds will be forthcoming, to the tune of $5 million.

Mattress Guy emphasizes that most of that liability is covered by insurance — his business is not at risk — but he finds himself in an interesting situation: if a sporting event comes out a certain way, he loses a lot of money. Tonight it looks like he could use a little more insurance.

Las Vegas to the rescue! By placing a substantial bet on the Astros, he can make back some of the money he loses if they win. If they lose both the next games he loses his bet, but he’s not out the five million. By placing a bet he ensures that either way he loses some money, but he won’t lose as much as he would have, should the Astros win the series.

Meanwhile in Los Angeles, one of the big winners in a World Series game 7 are the ticket brokers, and apparently the Dodgers are particularly broker-friendly, releasing tons of tickets into the market. Should there be a game seven, the brokers will make millions. So what can the brokers do to improve the chances of a payout? Head to Las Vegas! By placing a big bet on there NOT being a game seven, the brokers get a guaranteed payout either way.

What these two things have in common is that wagering on the outcome of the game is the exact opposite of gambling. In one case, it is turning a potential big loss into a guaranteed-but-manageable smaller loss. In the other case it’s turning a potential big gain into a guaranteed-but-smaller gain.

Not long ago some kid became famous because he had bet on Auburn to win the college football championship game. At the time he placed his bet, no one thought Auburn had a chance to even reach the game. But holy shit, after a few amazing upset victories there they were. If they won, the kid stood to make something like $65,000. That’s a lot of clams for anyone, let alone a college kid.

Before the game, some Web site took a less-than-scientific poll asking people: Should the kid place a hedge bet to get a guaranteed $30K (less than half of his big payoff), or should he let it all ride? The results of the survey were presented by state — respondents from every state but one said “Let it ride!”. You want to guess which lonely state had a majority of respondents vote “hedge”?

That state was Nevada, of course, where people who gamble for a living reside. Auburn was winning late in the game, but ultimately lost. The kid got nothing. He failed to accept the gambler’s axiom: If you stand to gain or lose significant money over an event that other people are betting on, use that action to eliminate risk. Gamblers hate uncertainty, and feast on greed.

Unlike hedge funds — mutual funds designed to go up when the market goes down but which actually completely fail at that objective — hedge bets are a pretty cold lock, if only for a very specific circumstance. Here’s hoping that matters to one of us, someday.

1

November is Coming

In this entire mad, mad world, there are only a handful of people who have “won” NaNoWriMo every year since 2001. There were about 100 of us who won that year, and the number can only shrink from there.

So while I sit on the third blow-it-up-an-do-it-again exercise with chapter 40 of Knives, I’m also looking at November, trying to decide if my reason to participate is habit, pride, or actual creative need.

But I thought of a good moment, and the moment led to a couple of characters with a very small struggle in a vary large universe that cares not what becomes of them. Characters which, for the sake of dragging things out to 50,000 words, will have to stumble across some other, contrived, larger struggle.

In December I can maybe produce a smaller story that fits them better.

1

Swift, the Programming Language, and Why I Love It

He had me at closures. Nomadic chunks of code that show up when they’re needed.

Quick note: This episode is heavy geek.

A few years past Apple was looking for something to fill a few minutes in their presentation to their faithful developers. “Let’s tell them about Swift”, someone high up decided. I was watching that presentation, and at first I was all like, “Another language? This will be a fiasco.” Apple has a mixed (and mostly bad with one great success) record when it comes to languages. A few minutes in, I was intrigued. By the end, I was sold.

Swift built on the work of great designers of other languages, and managed to bring (most of) the best of untyped languages with (most of) the best of strongly-typed languages. In my heart, I’m a strongly-typed guy, but I’ve been using javascript long enough to appreciate its flexibility.

But there’s one place Swift went that no other language has ever tread. Nil. One of the most common problems in software is when you expect something to the there, but for whatever unexpected reason, nothing is there. This is literally the cause of every blue screen of death you have ever seen.

In Swift, when you say that variable x will be of a particular type, right from the get-go you have to decide if x can ever be nil. If you allow that x can be nil, then every time you use x you have to take the potential that it is nil into account. No getting around it. If you say that x can never be nil, then the compiler will not allow you to create any condition that x is nil.

You can, of course, punch the compiler in the face and say you know goddam well that by then x will not be nil. But, awesomely, you don’t have to be all aggro. You can be totally graceful and say, “if x is not nil, then let’s have some fun.”

Swift has many other features created with one purpose: Make the costly mistakes commonly made with other languages impossible. One of the motivators of this language was a potentially awful security flaw on iPhone a few year back, caused by a stupid missing curly brace.

The Swift compiler is almost spooky. I’m not going to go into its almost-magic ability to resolve generics, but dang.

I do have a quibble: If one is focussing a language on security and preventing bad programming patterns, I would like to see the end of “break” and “continue”. We all learned long ago how terrible “goto” is; it’s time to recognize goto’s buck-toothed kin. (In the iPhone security problem above, goto was part of the problem. I was stunned that any code from my company included that instruction.) I once sat through a long discussion on the WebKit boards while they argued about how to define constants to handle exceptional cases, when the exceptional cases themselves could have been eliminated by banishing “break”.

Programmers out there: any time you want to type “break”, there is a better answer. If you can’t find that answer, it’s time to grow. Seriously. Outside of case statements, there is no time “break” is the right answer. EVER. (Swift eliminated break in case statements for you.)

Maybe I’ll fork the Swift open source and create hard-ass Swift. The same as Swift, but without the goto’s. Or maybe I’ll just challenge my peers to embrace the spirit of Swift, and write good code.

I program in four languages day in and day out, and a few others now and then. Give me Swift.

1