Read The Best of Galaxy’s Edge 2013-2014 Online
Authors: Larry Niven,Mercedes Lackey,Nancy Kress,Ken Liu,Brad R. Torgersen,C. L. Moore,Tina Gower
The pounding of heavy boots caused him to spin again, this time to see heavily-armed and armored gigantic troll-like virus fighters bearing down on him waving swords, battle axes, and rifles with wicked-looking bayonets as long as the rifles.
“Gotta scoot, dude,” the keyboard driver said, rushing off,
CLACK
ing rapidly again.
Marcus groaned. These were no friendly McAfees or Nortons—rule-abiding, virus-squashing officers. No,
these
guys were coded on steroids. Mean, nasty, powerful! No
rm
spell would even scratch them.
He waved his wand and his most powerful
debug
spell sizzled out and hit the first troll. No effect. It
should
have slowed the monster down to a crawl and revealed its internal workings. After that, just tear out statements and variables and it was over. No problem, except,
nothing
happened.
He unlimbered his sword. Have to do this the old-fashioned way. Chop them into separate subroutines that would fizzle into oblivion.
The keyboard driver had returned, slipped to the back of the pack. There was rapid
CLACK
ing and as the leading four trolls rushed him, their armor got thicker! Some human programmer was working real-time against him!
But the thicker armor added weight and the trolls’ reactions were sluggish now as they struggled in slow motion to ram their bayonets through Marcus. Whoever this programmer might be, he was not very good.
Marcus chopped at the trolls with his sword. It wasn’t easy, but big chunks were falling off.
CLACK, CLACK, CLACKITY, CLACK!
The programmer was fast on the uptake. The armor on all the trolls slimmed down and they duplicated until the memory around him was full of angry, hungry trolls with fast reflexes and anxious to taste his virtual blood.
However, their very numbers hampered getting at him and the computer’s
CPU
was grinding down under the load. Suddenly the trolls were slow again, and so was the human programmer as he continued to duplicate them, adding yet more load.
Marcus chopped a few of them to bits, but he could sense the
CPU
wavering and—although his virtual body’s code, written by him, was markedly more efficient, he felt like he was fighting in mush now. He didn’t want to be here when the computer crashed, like in the next few milliseconds. Hell of a way to die for someone as good at coding as him—embarrassingly so, even.
He switched his sword to his left hand, parried a bayonet thrust while pulling the abort button from his pocket, flipping the safety cover off with his thumb. Holding his breath, he pressed it.
Click!
* * *
Marcus rolled through an open port on the old server in the shop’s backroom, expanding to full size, and gracefully springing to his feet. He sheathed his sword and—
Bill—in his fifties, rotund, and bald as the proverbial billiard ball—was coming in holding a cup of coffee. He dropped both the cup and his jaw. The cup shattered, the brown fluid from it staining the ancient, already-discolored linoleum, but neither Marcus nor Bill noticed that.
“You’re … you’re …” Bill said with several gasps.
Marcus was running his hands over his body. He
was
the steel-muscled, bronzed hero like his virtual self … except … it was now
rea
l
!
He spun and looked at the ratty couch where his pencil-necked geek real-world body always rested. It was gone! The virtual reality helmet lay empty. Oscar’s body was still on the other couch.
A sudden sheepish look came to his face.
“What?” Bill asked, dropping into a chair and grabbing a parts catalog to fan his face.
“I gotta pee,” Marcus said. “That never happened down in the computer.”
Bill weakly waved toward their small, filthy restroom.
In a couple of minutes, a bemused look on his face, Marcus returned.
“Everything big?” Bill said, guessing.
“Yeah,” Marcus said, grinning. “
Yeah
!
” Then he held up his hands. “We need to discuss everything and make a plan of action. I’m recalling Oscar.”
He went over and seated himself in front of the server, his large fingers flying nimbly over the keys.
“Still got my computer skills,” he said with a smile.
The smile faded as nothing happened.
“Something’s wrong, Bill. I can’t contact Oscar! That’s bad! Better go in and rescue—”
“That won’t be necessary,” said an oily voice.
Marcus jumped to his feet and turned to see Al and two of his goons standing there. All three had large automatic pistols leveled at Bill and him. Al stepped forward and rammed the barrel of his weapon against Bill’s ear. “Who’s Conan the Barbarian over there? I didn’t authorize you to hire anyone new. Where’s that little wimp you used to have?”
Bill looked at Marcus. “Ah … he’s gone.”
“Well. Musclehead there isn’t much smarter. Almost got him earlier, but he ran like a little girl. Not sure how, but he got out before the computer slagged itself.”
“You’re a lousy coder,” Marcus said, which to him was about the worst insult you could hurl at someone.
“Haven’t got time for you now. Get over there against the wall, flat on the floor.”
Marcus complied, but he wasn’t through talking. “Where’s Oscar?”
“He and your little girlfriend Gwen are my virtual prisoners.”
“Gwen?”
“Yeah, Gwen—I swiped Bill’s code one day. Got it to work well enough to put her in the machine—most popular of my porn rentals, being interactive and all.” He took the gun from Bill’s ear long enough to wave it at Marcus. “
You
ruined that, getting all lovey-dovey with her. Now she wants out. But she ain’t getting out!”
Marcus slapped his head with one hand. It hurt. “Encrypt sensitive software, stupid,” he said in a disgusted mutter.
Al sneered. “So I’m taking Bill here. He’s going to improve his code for me and I’m going to rule spam and porn all over the Internet.” The gangster pointed at the server. “Bring that.”
Marcus saw Bill, wide-eyed, shake his head. He didn’t want Al to know that Marcus was really the one who had written the virtual insertion code. It was his idea, but only Marcus could make that idea work.
One of the goons put away his gun, went over, and turned the two gnarled knobs to the screws holding the server in the rack. He pulled it out, removed the cords, and stuck it under his arm.
Al pulled Bill out of his chair and pushed him over to the other goon, who grabbed his collar.
“You, on the floor there—you’re fired, Conan. No severance or back pay. Consider yourself lucky to be alive.”
Then they all left, slamming the front door resoundingly.
Marcus got up, the joy he’d felt in his new body now overwhelmed by despair and fear for his friends. He looked at Oscar’s body and the virtual reality helmet on it. Somewhere Gwen’s body was laying the same way.
He slammed a massive fist into his hand. Al was now in control of his only three friends in the world.
Marcus gently put a blanket over Oscar’s body, then stooped and grabbed a few items out of his tool box on the floor. He left quickly, locking the shop and jogging toward his nearby apartment.
His
server had a backup of everything on it!
Too bad for Al. He was getting his friends back! Whatever it took, that’s what he’d do.
As he passed two good-looking young women, he heard:
“Hot!”
“Wotta hunk!”
He grinned but ran faster. At least this new body stuff was working out. He wasn’t even breathing hard.
* * *
As he crossed the main room of his tiny one-bed/one-bath apartment, Marcus suddenly realized he could
hear
and, what’s more,
sense
what was going on in the server he’d mounted in the small closet.
Wow! The powers of his virtual body had also been transferred to his physical, real-world body. He waved his fingers and a virtual terminal floated in the air in front of him.
Cool!
There was a crackling at an empty power socket. He waved at his friend, electricity. That was not new; he’d always been able to communicate with it.
He grinned at the glowing air terminal. It reminded him what one of his professors in tech school had been fond of saying: “Computer science is ninety percent theory and ten percent magic.” Marcus was sure now the ten percent was a whole lot larger than that. And he was the wiz! It was a good feeling.
But that good feeling vanished almost immediately. Everything he now had would mean
nothing
to him if he couldn’t save his three friends. Gwen, Oscar, and even Bill—they were all he had.
Waving his fingers at the terminal, Marcus made certain his server was still secure, the backup virtual reality program still ran, and all was in order for a rescue mission.
Then he slapped his head. He’d forgotten to grab his virtual reality helmet! But …
He opened the closet door. It just felt
right
, so he dived into the one open USB socket on the front panel and slid into the server. Two virus-chomping trolls were sitting on empty data containers, playing cards. They looked up at his entrance.
“Oh, hiya, Boss,” one said. “All’s secure.”
Marcus nodded, clapped them on the shoulders, and motioned them to go back to playing. (Even software needed some relaxation.) He walked over to another data container and sat down to think, creating another virtual terminal.
A couple of ideas came. He implemented one of them, bringing up Oscar’s virtual body configuration script. The old man had wanted to be the same down here as in the real world, but that was not working out too well. Marcus’s fingers flew as he beefed Oscar up, giving him youth, muscles, various powers, including all the Shaolin temple Kung Fu routines. Marcus was very proud of those. You do a Bruce Lee on a nasty piece of software and it
stayed
down.
He then compiled the configuration file. He might not be able to easily find where Oscar was, but his virtual body regularly checked its configuration, and whoever was holding Oscar was going to have a surprise on their hands.
While he was at it, he set up a configuration file for Bill too. If Al threw him in a computer, there would be
two
mighty warriors, both yearning for Al’s blood. Four, of course, counting him and Gwen—if only he could find her computer and modify her
config
file. It was now obvious to him that Al was her boss and the VR software they had was the early version Al had ripped off from Bill. Lot of improvements since then!
Now for the second part. None of this would probably work unless he could find and get into Al’s computer, which was surely locked down and strongly protected against that very thing happening, but he had an idea.
Gwendolyn Louise Baker’s address was easy to find, and not far away at all. Closer than going back to the shop and probably safer, since Al did not know about her computer. She’d told him that. Besides, as he’d already decided, he needed to update her virtual reality software.
“Be alert, guys,” he said to the trolls and dived out the USB port.
* * *
His
open
spell worked on her apartment door and his friend, electricity, kindly disabled the alarm system for him. He slipped in and relocked the door. The apartment was even smaller than his, and there she was (her body, that is), lying on her bed with the VR helmet on. She was a little chubby (she hadn’t mentioned that), short, with not much of a figure, and as geeky as she said. But Marcus knew he loved her anyway.
Heart pounding, he found her server. Not bad. Old PowerEdge—20th generation—but those had plenty of reliability and capacity. He dived into the USB socket and was immediately challenged by three huge female virus-protection trolls, sharp swords poised.
“Halt! Password!”
“Er …” Marcus said, not wanting to hurt any of Gwen’s software, but knowing he
had
to get through.
“Wait,” one troll said, “that’s
Marcus
!”
“She likes him,” said the second.
“A
lot
,” the remaining troll added.
His ears doing a virtual burn, Marcus quickly explained to them what he needed and how it would save Gwen.
The trolls nodded and lowered their swords.
“VR software starts at memory address 3ddff000,” one said.
“We’re alerting the CPUs to have a packet ready for you,” said another.
“That way,” said the third, pointing.
Marcus pounded down a long memory bus and came to the address. The CPUs were holding a refresh packet for him, and he jumped on it. But they made no objection to him first updating the VR software, throwing some Shaolin temple Kung Fu routines and other stuff into Gwen’s
config
file, then recompiling it.