Chapter 1 My sister, Delia, who thinks she's funny, taped one of those chocolate wrappers with the sappy messages to the empty cereal box. This one said, "Embrace the unexpected." I snorted. If Delia had left some cereal for me, that would have been unexpected. Still, after eating my whole wheat toast and brushing my teeth, I went back to the kitchen to claim the foil square so I could tape it in my notebook. I liked projects, and tracking the unexpected could be a good one. My first bit of unexpectedness was pretty small--my red ribbon had gone missing. This was odd since Delia was the one who lost things. Mostly, I found them. "Hurry up, Averil. You're going to be late," Mom called. I tied a green ribbon around my ponytail. At the front door, I grabbed my backpack from Mom and kissed her cheek. "See you later." "Text me at lunch." I took a step onto the porch. "Of course." "And wear your sweatshirt home. It's not summer yet." "You bet," I called, running down the steps. At the end of my block, I came upon my second unexpected happening: an empty spot where Priya was supposed to be. I turned slowly in a circle. Her house was right down the road. If she was coming, I would see her. Each day, we took the same path to school, and if either of us got sick or if it rained, our moms would exchange a flurry of texts so neither of us was left stranded. But here I was. Stranded. Only I didn't feel stranded. I felt autonomous . In Tech last week, I'd learned that an autonomous program ran on its own to find a solution. It made me wonder what an autonomous girl would do. I could text Priya to find out what was going on, but Mom would see that, and she'd order me right back home. I wasn't allowed to walk alone to school. Which was ridiculous, since I was twelve. Nothing was going to happen on the short gravel path that ran through the pine forest--well, large cluster of trees, really, but I liked to think of it as a forest. And by the time I got out to the sidewalk, dozens of kids would be there taking the exact same route to our small-town middle school. But since Mom couldn't see me--thank goodness--she'd never know I was alone. She would assume I'd met Priya like always, as long as the little dot that represented me on her Ruby Slippers app kept moving along the path to school. Maybe I even had time to stop by my secret circle. A few months ago, I'd found a ring of bushes beyond the pine trees, and when I'd pushed through them, I'd discovered a private green space with a fallen tree trunk in the middle. The wide trunk curved a little so it looked like a bridge, and it was the most perfect spot in the world to sit or draw or think. I'd told no one about it--not even Priya. Carefully, I put my phone on the side of the path. Mom would definitely panic-text if her phone showed me moving off into the woods, but maybe if my dot stayed on the path--even if it was frozen in place for a minute or two--she wouldn't notice. As I pushed through the bushes, I tried to remember the last time I'd been alone. For real. Not by myself in my room with Mom in the kitchen and Dad in his office and Delia across the hall. But really, truly by myself. I had no idea. Beep! Beep! Beep! Oh no. I spun back toward the path as the alarm got louder and louder, and ran, even though branches scratched against my face. Of course Mom had noticed my phone wasn't moving. If I didn't answer soon, she might even call 911. I pushed out of the forest and scooped up my phone. Ruby Slippers had turned the whole screen red, and the noise was so loud, I couldn't think, but I couldn't turn it off. Mom was totally in control. I hit the Respond button, and within seconds, Mom, fear in her voice, said, "Averil?" "I'm okay, I'm okay, I'm okay," I said. "Turn it off." "What? Oh! Thank goodness." And then wonderful, wonderful quiet. "What happened?" Mom asked. "Nothing. I just stopped to . . . ah . . . tie my shoes." "That's why I tell you to double-knot them." Really? This was what she wanted to talk about--my shoelaces? "Why did you hit the panic button? It's so loud. Why not just text?" It wasn't that Mom had never done this, but usually, standing still for a little too long meant a text, not sirens. "Mrs. Adani called to say Priya fell running down the stairs this morning, and she hurt her wrist, so they're taking her to urgent care before she goes to school, and so I checked on you and--" "I wasn't moving." I sighed. I knew pointing out that Mom shouldn't always leap to the worst possible conclusions was a waste of time. And the thing was, I got it. Bad things happened, and she wanted to know we were safe. I just wished . . . I don't know . . . that she didn't need quite so much proof that we were okay. "I'm getting in the car now," she said. "I'll pick you up." "You don't have to do that." Maybe I could still get ten minutes on my own. "You'll be late otherwise," she said. I checked the time. She was probably right. When I got back to the start of the path, her car was already waiting. I got in, fastened my seat belt, and looked out the window. I wouldn't make a fuss, but I wasn't ready to be all cheerful. Mom stayed quiet while she drove, but when she pulled into the car line, she said, "You know I only worry because I love you." I turned and made myself smile. Because I did know, and I also knew that if I didn't make this right, it would eat away at me all during school. "I'm always careful." "I know. But sometimes careful isn't enough." It always came back to this. Mom had done everything right when she was pregnant with Delia and then with me, but even so, we'd both been born early. Like really early. Two months for Delia. Almost three for me. We'd been in the hospital for a long time, and we'd both almost died. But we were fine now, and we definitely didn't remember any of it. But Mom did. It was like she thought she'd failed us right at the beginning and was determined never to let that happen again, even if it meant never letting us out of her sight--electronically, at least. "Thanks for the ride." I leaned over to kiss her cheek. "Love you." "You too." I got out of the car. She rolled down the window and called, "Keep your phone with you." "I always do." Chapter 2 Tech was full of boys sitting on desks, tossing squashy balls and shouting at Mr. Ballinger. Just like every other day. I slid into my seat near the back, feeling a little self-conscious because Priya wasn't with me. There were only six girls in our class and no assigned seats. Without talking about it, we'd all paired up and scattered ourselves around the room. Sitting alone was no good, but banding all together wasn't that great either, since Mr. Ballinger got sarcastic whenever there were too many girls in one place. Once Sofia had asked for help, and Priya and I had both gone over. After about five minutes, Mr. Ballinger had shouted, "Enough with the coffee klatch, ladies," even though the boys were always together and never quiet. While my computer started up, I opened my notebook. I liked to play with code using paper and pencil because I could think through what would happen without screwing up my program. A week ago, Mr. Ballinger had given us a coding problem where we had to find a way to put eight queens on a chessboard without any of them being in check from the others. The easiest answer was to write code that checked all the ways eight queens could be arranged. Which was a big job. There were more than eight billion possibilities, and only ninety-two right answers. But finding a needle in a haystack was totally possible if you had a machine that could look at each and every piece of hay. I'd already written a program that could find the places the queens belonged, but I hadn't yet raised my hand to show Mr. Ballinger. Right now, my code was crammed full of way too many extra steps. I wanted a simpler, cleaner way. For myself, but also because I didn't want to give Mr. Ballinger any reason to say my code wasn't good enough. Last night, I'd brainstormed by drawing chessboards over and over in my notebook until I'd realized the computer only needed to check the arrangements that had one and only one queen in each row and column. Every right answer had to have that in common, and telling the computer to look only at those possibilities would make the program run much faster. Carefully, I typed in the code I'd mapped out in my notebook last night, but when I ran it, the program hung up. Almost there, but not quite. Back to my notebook. Line by line. When I caught a mistake, I knocked my pencil off the table in my rush to fix it. Before I could grab it, another pencil appeared in front of me. "Thanks," I said over my shoulder as I took it from the extended hand without bothering to see who it was. I couldn't afford to get distracted. It was so easy to lose a thought. I fixed the code in my notebook and looked for mistakes one more time, but just as I was getting ready to key in my correction, a shout erupted from the front of the room. Tyler was dancing behind his seat. "I did it. I did it." Boys rushed over to look at Tyler's screen, but Mr. Ballinger didn't tell them to sit down. Instead, he joined them and after a moment clapped Tyler on the shoulder. "I knew you'd get it first." "It's what I do." Tyler was very look-at-me-I'm-a-coder pleased with himself. He was always scrawling symbols from programming languages on his arm in Sharpie, and every single day, he wore a plain blue T-shirt because he said he didn't want to waste brain cells deciding what to wear. Mr. Ballinger thought this was cool, but I'd like to think that when I grew up, I'd be able to code and also be able to pick out a different outfit every day. Seemed like an achievable goal. Mr. Ballinger called Tyler to the front of the room and projected his solution up on the screen. When I saw it, I shook my head. Tyler's code might find the right answers, but it was so clunky. Mr. Ballinger didn't seem to care about all Tyler's extra steps, though. He tossed Tyler the candy bar offered as a prize. "Nice work, boy genius." He told us to take another couple of days to see if we could do it--now that we had Tyler's "beautiful code" as a model. I managed to keep my eye roll entirely mental. "I don't want anyone to be discouraged because you didn't figure this out first," Mr. Ballinger said as he walked slowly down the aisle. "Tech companies like to use puzzles like these to find their all-stars, but they need plenty of worker bees too. Just keep working on those basic skills." He winked at me, and I smiled back, because really, what could I do? I knew from experience that if I showed Mr. Ballinger what I'd done, his primary emotion wouldn't be pride. It would be surprise. The last time I'd solved a puzzle first, he'd said my solution was "cute." Besides, I wasn't doing this for pats on the head. One of my favorite things about coding was that I didn't need anyone else to tell me if a program worked. Unlike people, code never lied. Excerpted from Averil Offline by Amy Noelle Parks All rights reserved by the original copyright owners. Excerpts are provided for display purposes only and may not be reproduced, reprinted or distributed without the written permission of the publisher.