• Home
  • Carlos Bueno
  • Lauren Ipsum: A Story About Computer Science and Other Improbable Things

Lauren Ipsum: A Story About Computer Science and Other Improbable Things Read online




  Lauren Ipsum: A Story About Computer Science and Other Improbable Things

  Carlos Bueno

  Published by No Starch Press

  Advance Praise for Lauren Ipsum

  “A Looking Glass tale for the computer age.”

  —School Library Journal

  “Part of a much larger movement that seeks to bring programming skills to, well, everyone.”

  —Wired

  “Captures the spirit of problem solving and ignites readers’ imaginations . . . introduces girls and boys to computer science—and to a new way of thinking and problem solving.”

  —SHERYL SANDBERG, FACEBOOK COO AND AUTHOR OF Lean In

  “An enchanting fable that just happens to be grounded in fundamental concepts of computation.”

  —JOCELYN GOLDFEIN, FORMER DIRECTOR OF ENGINEERING AT FACEBOOK

  “A fantastical journey into the 21st century tech ‘Wonderland’ that both educates and entertains.”

  —RUTHE FARMER, CHIEF STRATEGY & GROWTH OFFICER, NATIONAL CENTER FOR WOMEN & IT

  “Lauren Ipsum is a wonderful guide to the ideas behind computing. I wish I’d had her as a friend when I was growing up.”

  —DR. ROBERT ST. AMANT, AUTHOR OF Computing for Ordinary Mortals

  “A must-read for anyone looking to spice up their learning or teaching of computer science.”

  —DR. HÉLÈNE MARTIN, UNIVERSITY OF WASHINGTON

  “Sheds a positive light on computing for those who might otherwise miss out.”

  —GAIL CARMICHAEL, CARLETON UNIVERSITY FACULTY & BOARD ADVISOR FOR THE ANITA BORG INSTITUTE FOR WOMEN AND TECHNOLOGY

  The Computers in This Book

  I feel I should warn you: You won’t find any computers in this book. If the idea of a computer science book without computers upsets you, please close your eyes until you’ve finished reading the rest of this page.

  The truth is that computer science isn’t really about the computer. The computer is just a tool to help you see ideas more clearly. You can see the moon and stars without a telescope, smell the flowers without a fluoroscope, have fun without a funoscope, and be silly sans oscilloscope.

  You can also play with computer science without you-know-what. Ideas are the real stuff of computer science. This book is about those ideas and how to find them. In fact, most of the characters, places, and thingamajigs in Userland are actually based on those ideas. Check out the Field Guide at the back of the book to learn more about them!

  Chapter 0. Mostly Lost

  Lauren Ipsum had been lost in the woods all morning. The poor girl didn’t know where she was or where she was going.

  It had all started with an argument. Her mother wanted her to go to summer school, and naturally Laurie didn’t want to go. “Children in other countries go to school year round,” her mom said. “We aren’t in other countries,” Laurie replied. “Extra classes are how to get ahead,” Mom said. “Summer is for having fun,” Laurie insisted. The argument went on and on and got loud near the end. To calm down, Laurie took a walk in the woods.

  When people are faced with something they don’t want to do, they often do something they aren’t allowed to do instead. Before long, Laurie had gone farther into the woods than she had ever gone before.

  Being lost was kind of fun. Out here, Laurie could be anything she wanted to be, and there was no one to tell her different.

  She was a secret ninja, moving like a ghost through the ancient forest. Light and shadow danced under the leaves, and she danced with them. No one could hear her stealthy ninja footsteps. No one would see her coming until it was too—

  “Chiguire!” said a voice up ahead. A shape came toward her out of the darkness. Was it an angry spirit? A dire beast?

  “Argot!” the creature said. It was like a mouse-dog, or a dog-mouse. That is to say, it was the size of a dog, but it looked more like a mouse. It walked right up to Laurie and began nuzzling her hand in a very un-beast-like way.

  “Aw, you’re so friendly!” Laurie said, in a rather un-ninja-like fashion.

  “Repl!” it said, as it put a webbed foot on her knee.

  “You’re a funny-looking thing, aren’t you? What’s your name, huh? What should I call you?”

  “Argot!”

  “Okay, I’ll call you Argot. Are you hungry? What do . . . things like you eat?” She offered it some peanuts.

  “Snarfl!” it snarfled, eating out of her hand.

  “Hey, little guy,” she said, tickling its chin, “you don’t know the way back to Hamilton, do you?”

  “Hamilton!” it said excitedly.

  “You do know a way?”

  “Lalr!” it lalred, tongue hanging out.

  “So where is it?”

  “Isit!” it said.

  “I mean, how do I get there?”

  “Gether!” it answered.

  “You’re just repeating what I’m saying, aren’t you?”

  “Arentyou!” it said.

  “That’s what I thought. Animals can’t talk.”

  So now I’m lost, Laurie thought to herself. How do I get unlost? She remembered something about moss growing on the north side of trees. There wasn’t any moss, so that was out. The sun rises in the east and sets in the west. It was late morning, and the sun was almost overhead. No help there either.

  She wandered around, flipping her lucky red poker chip. If the chip landed on heads, she walked to the left for a while. If it landed on tails, she walked to the right for a while.

  “Burble . . .” Argot waddled behind her, making nonsense noises.

  “No, don’t follow me, Argot. Shoo!”

  “Bitblit?”

  “I like you, but I’m not allowed to have a dog. Or a mouse, or a dog-mouse, or whatever you are. Go along now—go home!”

  No matter what she said, the ugly little thing wouldn’t give up. It seemed willing to follow Laurie all the way to . . . wherever she was going.

  Maybe if I wait for the stars to come out, she thought to herself. No, that’s silly. I don’t know which stars are which!

  “Frobit!” Another creature like Argot, but bigger, came out of the underbrush. It tried to lick her face.

  “Ugh, your breath stinks!”

  “Wibble!” A third creature came up from behind and butted its head against her.

  “Whoops! Hello to you, too.”

  “Tanstaafl!”

  “Zork!”

  More creatures were coming from all directions. The noise was getting louder.

  “Uh,” Laurie uhhed.

  “Parsec!”

  “Wurfl!”

  “Lilo!”

  Argot’s friends were no longer just nuzzling. They were crowding all around her, pushing and shouting. She was being mobbed.

  Laurie panicked and ran. The gang of creatures howled and chased after her.

  “Nyquist!”

  “Quux!”

  “Fifo!”

  She could barely stay on her feet, running through the tangled underbrush, but she was too afraid to slow down.

  Her escape was blocked by a tall green hedge that stretched in both directions. Once upon a time it might have been part of a garden, but now it was wild and disorderly. Laurie squeezed her way through a gap in the hedge and kept running until she thought she was safe. The creatures were far behind.

  The forest looked different on the other side of the hedge. For one, the trees had red and black stripes. Black tree trunks split into two red branches. Those split into four black branches, which split into eight red branches, and on and on,
until the branches ended in millions of tiny black leaves. In fact . . .

  “Foo!”

  “Bar!”

  “Baz!”

  The creatures were still chasing her! Laurie tried to run away again, but she couldn’t go very fast. Her throat was raw, and her legs were beginning to tremble.

  “Wysiwyg!”

  “Help! Stop it!” she cried, hoping someone would hear her. “Make them stop!”

  A small man carrying a large pack stepped in between Laurie and the mob. Dishes and pots and pans and cowbells rattled around. The creatures halted a few paces away, making awful, angry noises.

  “Are you okay, miss?” he said.

  “These—these mouse-dogs won’t leave me alone!”

  “Epsilon!”

  “Olap!”

  “It’s just a bunch of Jargon,” he said. “Hold still and stay calm.” He cupped his hands to his mouth.

  “STANI!” he shouted at them.

  All of the Jargon froze, their ears aquiver.

  “CEPAT! AFVIGE! SCHNELL! SCHNELL!”

  And just like that, they were gone, running away into the gloom of the forest.

  Laurie collapsed against a tree. “Th-thank you,” she said.

  “Sure thing, miss. Just rest here a while,” the man said. He dropped his pack with a loud jangle, then sat on top of it.

  “What’s a Jargon?” she asked once she’d caught her breath.

  “Jargon live in the swamps. They feed on attention. If they can’t get that, they’ll settle for fear and confusion.”

  “But the first one was so friendly! I just talked to it a little and it started following me.”

  “That’s how it starts,” he said. “A little Jargon doesn’t look like much. Some people even keep them as pets. But they form packs, and they are very dangerous.”

  “That’s terrible!”

  He shrugged. “What can you do? Stand your ground and act confident. If you show any fear, a pack of wild Jargon will run you right over.”

  “What did you say to make them leave?”

  “I have no idea. It sounded good, though, didn’t it?” he said. “So what’s your name, miss?”

  “My name is Laurie. I think I’m lost.”

  “That’s wonderful!” the man said. “I’m lost too.”

  “Oh no! You mean you don’t know where you are?”

  “No, I know exactly where I am.”

  “So you don’t know where you’re going?”

  “I know exactly where I’m going. I’m on the way home.”

  Laurie was almost too confused to feel confused. “But if you know where you are,” she said, “and you know where you’re going, how can you be lost?”

  “Because I don’t know how I’ll get there,” the man grinned. “I’m a Wandering Salesman.”

  “A Wandering Salesman? What’s that?”

  “We wander from town to town, selling and buying. There are two rules: you have to visit every town before going home, and you can’t visit any town twice. Every road is the road home except the road behind me.”

  “So you always go to the next place you’ve never been to?” she asked.

  “That’s right! You’re guaranteed to get home eventually,” he said. “It’s only logical. Along the way I’ve seen the sunrise over the Towers of Hanoi and climbed the Upper Bounds. I’ve sat down at the Lookup Table and floated on the Overflow River. It’s a good life. Being lost can be fun!”

  “It’s not fun for me anymore,” said Laurie. “I don’t really know where I am, or where I’m going, or how to get there.”

  “Hmm. Mostly lost is fun, but completely lost is serious. You’re going home too, right?”

  “Yes, I want to go home!” she said.

  “And where do you live?”

  “I live in Hamilton with my mom. Do you know where it is?”

  “Not a clue. Never heard of it!” he said cheerfully. “But that’s one out of three, anyway. You have a definite goal.”

  “Um, I guess so.”

  “And I know where I am, and since we’re in the same place, that means I know where you are. You are in the Red-Black Forest, near Mile Zero.”

  The what near who? she thought to herself, but the man was still talking.

  “. . . now you know where you are and where you are going!” the Salesman said. “You are only mostly lost.”

  “But I still don’t know how to get there!”

  “Hmm,” he hmmed, thinking it over. “I know someone you should talk to: a wise lady named Eponymous Bach.”

  “Where is she?”

  “She lives in Bach Haus at the end of Bach Way, in the town of—”

  “Bach?”

  “How did you guess? Bach is an excellent Composer. At the very least, she can name your problem.”

  That sounded like a much better plan than waiting for moss to grow!

  “Okay, I’ll do it. Will you go with me?”

  “I would love to, Laurie. But I’ve just come from visiting Bach,” said the Salesman.

  “Oh. That means you can’t go back, right?”

  “Right. I can take you up to the road, but from there you are on your own.”

  The Wandering Salesman showed her the way to the edge of the forest. Just past the last tree was a road sign. “Ah, here we are,” he said. “Route One, Mile Zero.”

  “I’ve never seen a Mile Zero,” said Laurie.

  “Everything has to start somewhere. It may not look like much, but this is a very special place. You might even say it’s the starting point of the whole System.”

  “What comes after Mile Zero?”

  “Mile One, of course. And right after that is the town of Bach. Are you ready?”

  “Yes, I think so. Thank you!”

  “You’re welcome, Laurie. Good luck! Maybe our paths will cross again.” The Wandering Salesman headed off, cowbells and pans rattling, to a place he’d never been before.

  And so did Laurie.

  Chapter 1. A Hidden Ally

  “That wasn’t too bad,” Laurie said to herself, as she reached the Mile One sign. “A mile sounds like a long way to walk, but it’s easier if you break it into pieces.” She remembered that in Hamilton there are eight blocks to a mile, so she made herself think about walking one block at a time.

  “Oh, look, another one,” said a voice.

  “Hello?” Laurie spun around, but there wasn’t much to see: some fields of odd-looking crops, an empty road, and the sign.

  “She’s kind of short, isn’t she?”

  That’s when she noticed a tiny lizard clinging to the sign. It had the oddest coloring: where the sign was green, the lizard was reddish; where it was white, the lizard was black.

  “Hello, who are you?” she asked.

  “I’m Xor,” the lizard squeaked. His tail twitched from yellow to blue. “Hold on, can you see me?”

  “Of course I can see you!” Laurie said.

  “Oh.” Xor looked very sad and blushed a bright purple.

  “You are the first talking lizard I’ve ever met,” Laurie said. “How did you learn to talk?”

  “What a silly question!” the creature said. “I learned as a baby, like everybody else.”

  “You did?”

  “Sure. Why, how did you learn to talk?”

  “Well . . .” She had always been able to talk, hadn’t she? “I guess I learned as a baby too.”

  “It’s only logical. First you learn to talk, then you learn to think. Too bad it’s not the other way around.”

  “What are you doing there on the sign?” Laurie asked.

  “Another silly question! What does it look like I’m doing? I am blending into the background,” Xor said. At that moment he turned pink and violet. “Did you say something?”

  She shook her head.

  “Where was I? Oh, yes. Blending in is an honorable and ancient art. It takes years of practice. You must have a pretty sharp eye to spot me.” Xor marched around the sign as he t
alked, turning white with large orange polka dots.

  Laurie bit her tongue, trying not to laugh.

  “No, you don’t see a lizard like me every day!” He turned peach and cornflower blue. “But sometimes—personally speaking between you and me, of course—sometimes . . .” He looked sad again and fell silent.

  “Sometimes what?”

  “Sometimes, I worry I’m not doing it right.”

  “Not if you want to hide!” Laurie said, unable to contain herself. “Your colors keep changing.”

  “I was pretty sure I’d figured it out this time,” Xor said, turning his head around to get a better look at himself.

  “My left leg is green—” he said.

  “Green? No, it’s red.”

  “Really?”

  “Really. Now it’s purple.”

  Xor sighed. “Blending in is a lot harder than it looks. I’m glad it was you who saw me and not a hungry bird. You see, I’m a bit color-blind.”

  “What kind of lizard are you, anyway?” she asked.

  “I’m Chameleon, mostly. I’m part dinosaur on my mother’s side.”

  “Part dinosaur? That’s impossible.”

  “It’s true!” Xor drew his little self up proudly. “For instance, my Aunt Vana is a Steganosaurus. She can hide anywhere, even on the back of a postage stamp.”

  Laurie wasn’t sure she believed Xor, but she didn’t want to hurt the lizard’s feelings.

  “Maybe your aunt can teach you how to hide better.”

  “I’d love that. But I don’t know where she is. The last time I saw her, I didn’t even see her!” he said.

  “But—”

  “Hey,” Xor said, “why don’t I come along with you? If you can see me, maybe you’ll be able to see her, too.”

  “I don’t think—”

  “It’ll be fine! I know a lot about this place. I can show you around.”