Chapter 8
Audrey
Iwake up to a jackhammer in my skull and a text waiting on my phone.
Layla:
hydrate, you lightweight.
The sunlight streaming through my curtains is personally offensive. I fumble for my phone, squinting at the brightness, and immediately regret every whiskey I consumed last night.
You really hurt me, Logan.
Oh god. I said that. Out loud. To his face.
I groan and pull the pillow over my head, but it doesn’t block out the memory. His expression when I said it—that flash of something raw and wounded before he shuttered it away. The way he asked if we could be friends.
I’ll think about it.
What kind of answer is that? What was I thinking?
I wasn’t thinking. That’s the problem. All that time rebuilding myself into someone untouchable, and I let whiskey and cheese curds demolish it in a single evening.
My phone buzzes again. This time it’s a calendar reminder: 8:00 a.m - Lab standup.
It’s 7:15.
Shit.
I force myself upright, head pounding, and reach for the glass of water I had the foresight to leave on my nightstand. Thank you, Drunk-Audrey. As I drink, I scroll through my notifications on autopilot.
Email from Layla about a board meeting.
Email from Serena with a link to an article about biomedical patent law, subject line: For your next argument with Caleb.
Email from Logan Whitman, sent at 2:07 a.m.
I stare at it for a long moment. The subject line reads: Simulation Parameters - Priority Algorithm Model v1.
He was up at 2 a.m working on this. After everything that happened at the bar, after I dumped three months of hurt feelings on him and walked away to dance with my friends, he went home and finished the work.
I open the email.
Audrey,
Attached are the simulation parameters we discussed. I’ve included three model variations based on different priority weighting systems—one that mirrors standard neural processing hierarchies, one optimized for latency reduction, and one hybrid approach that might offer a middle ground.
I also ran preliminary tests on the hybrid model. Results are promising. Happy to walk you through the methodology whenever works for you.
— Logan
P.S. Hope your head isn’t hurting too much this morning.
That last line catches me off guard. It’s almost... playful.
I read it three more times before I realize I’m smiling.
Then I catch myself, and my face does that thing where it tries to rearrange into professional neutrality but doesn’t quite commit. I settle for a scowl at my own reflection in the dark part of the screen.
Stop it. We’re not doing this.
We’re not sliding back into whatever we were before. I told him I’d think about being friends, not that I’d forgiven him. Not that I’d forgotten.
Even though I do miss him. With Logan, I never had to slow down or explain my leaps. He just followed. And when I couldn’t keep up with him, he didn’t make me feel stupid—he made me want to be smarter.
That’s a dangerous thing to miss.
Especially when you still don’t know why he threw it away.
I close the email without replying. Drag myself to the shower before I do something stupid like respond with a detailed critique of his methodology just to have an excuse to keep talking to him.
Actually, his Bayesian priors are slightly aggressive for this dataset—
No. Shower. Now.
I don’t have time for the whole hair and makeup routine I did yesterday.
So I settle for scrunching my curls and pulling my hair into a high ponytail.
Foundation, blush, neutral lip, mascara—the bare minimum to look like a functional adult instead of someone who word-vomited her feelings at a dive bar and then rage-danced to Beyoncé.
As I slide my trusty glasses on, I catch my reflection. Without the war paint and the flat-ironed shield, I look distressingly like the old Audrey. The one who thought being smart was the whole package.
It’ll have to do.
The lab is still quiet when I arrive at 7:52, still slightly nauseous and definitely under-caffeinated.
I settle at my workstation and pull up his email again. The attachment is meticulous—of course it is, this is Logan—with detailed documentation for each model variation and a summary of his preliminary findings.
He’s right. The hybrid approach is promising. The latency reduction isn’t as aggressive as the optimized model, but the stability metrics are significantly better. It’s a smart compromise.
I hate that it’s a smart compromise.
If his work had been sloppy, I could have dismissed him. If it had been mediocre, I could have improved on it and felt smug about it. But this is good. This is annoyingly, inconveniently good.
So much for intellectual superiority as a coping mechanism.
I’m so absorbed in the data that I don’t hear him come in.
“Morning.”
I jump, nearly knocking over my empty coffee cup.
Logan is standing a few feet away, looking almost as rough as I feel.
His hair is damp like he just stepped out of a shower, and there are shadows under his eyes that suggest he stayed up even later than 2 a.m. God I want to run my fingers through his hair and feel how cool the strands are—is that weird?
Wait. He’s holding two cups of coffee.
“Morning,” I manage, hoping my voice sounds more professional than my pulse feels.
He sets one of the cups on my desk and retreats a step. “Picked this up on my way in. Figured if you’re feeling anywhere near as trash as I am, you’d need it.”
I stare at the cup. Then at him. Then back at the cup.
“Thanks.” I take a sip—and have to clamp down on the noise that wants to escape my throat.
It’s exactly how I take it. From the coffee shop I prefer. Oat milk, no sugar, a sprinkle of cinnamon on top.
The cinnamon.
It’s not standard. It’s a quirk. Something I mentioned once, maybe twice.
He remembered.
Funny how he can recall my coffee order down to the garnish but couldn’t manage to explain why he flinched when I tried to kiss him.
“How did you—” I start, then stop.
He’s already halfway to his workstation, but he glances back. “How did I what?”
“The cinnamon.”
Something flickers across his face. “I have a good memory.”
He says it like it’s nothing. Like he hasn’t just proven that somewhere in that over-packed brain, there’s a file labeled AUDREY: COFFEE PREFERENCES.
A file he’s maintained for god knows how long.
Meanwhile, I’ve spent three months trying to debug our entire history, and I still can’t locate the error.
He has the source code. I’m stuck reverse-engineering from the crash report.
The imbalance is infuriating.
I force my face neutral and focus on the screen, even as my hands cradle the coffee. It’s warm and real and the closest thing to comfort I’ve let myself have in months.
“Did you have a chance to look at the models?” he asks after a minute, voice low.
“I did. The hybrid model looks solid.”
He straightens slightly—that’s his version of preening, I remember, that subtle shift when someone praises his work. “You think so?”
“I think it needs more testing before I’m convinced. But it’s a strong starting point.” I turn back to my screen, pulling up his documentation. “Walk me through your methodology for the stability metrics. I want to understand how you weighted the variables.”
He rolls his chair over, careful to leave a professional distance between us. But ‘professional distance’ turns out to be close enough that I can smell him—something clean and woodsy, his soap or shampoo—and close enough that I’m suddenly, acutely aware of the heat radiating off his body.
My breath catches. My skin prickles. My brain sends up a red alert that I aggressively ignore.
Focus. Work. Professional friendship.
“Here,” he says, pointing at a data cluster.
“I used a modified Bayesian framework for the initial weighting, but I adjusted the priors based on the empirical data from the most recent trials. The traditional model assumes uniform distribution, but our neural signal data shows clear clustering around specific frequency ranges, so—”
“So you weighted those frequencies higher in the priority algorithm,” I finish. “That’s why your latency numbers are better than what I was projecting.”
He looks at me. That look—the one that used to make my chest tight, as if he was seeing something no one else could see. “You were projecting latency numbers?”
“I had some ideas.” I shrug, trying to play it off. “Jet lag is messing with my sleep. So...”
“Can I see them?”
I hesitate. My projections are rough, more napkin math than rigorous modeling. But his eyes are bright with genuine curiosity, and I remember this feeling—the thrill of two minds working on the same problem, building on each other’s ideas.
“They’re not polished,” I warn.
“I don’t need polished. I need the thinking.”
I pull up my notes. They’re messy, scattered across three different files with contradictory annotations, but Logan doesn’t seem to care. He leans in closer, scanning the data, and I watch his expression shift as he processes.
“This is good,” he says softly. “This is really good. You were approaching the frequency distribution from a completely different angle than I was, but if we combine your framework with my Bayesian model—”
“We might be able to optimize for both latency and stability.”
“Exactly.” He’s already reaching for my keyboard. “May I?”
I nod. His fingers fly across the keys, pulling up a split screen, dragging my files next to his. He’s muttering under his breath—numbers, variables, half-formed hypotheses—and I lean in too, caught up in the momentum.
“If we adjust the weighting here,” I say, pointing, “and use your prior distribution as the baseline—”
“Then the hybrid model becomes adaptive instead of static.” He looks at me, eyes bright. “Audrey, this could actually work.”
For a moment, it’s like the last three months never happened. We’re just two people who think the same way, who see patterns in the same places, who make each other smarter just by being in the same room.
This is the problem, isn’t it? This feeling. Like my brain finally has a sparring partner. Like I’m operating at full capacity instead of running on safe mode.
No one else does this to me. No one else even comes close.
Which is exactly why I need to be careful.
Then I realize how close we are.
His shoulder almost touching mine. His face inches away. I can see the flecks of gray in his blue eyes, the faint stubble along his jaw.
He’s looking at the screen. Then he’s looking at me. And something shifts in his expression—his pupils dilating, his lips parting slightly, his breath going shallow.
He notices me noticing.
The air between us turns electric.
I pull back so fast I nearly roll my chair into the wall. “We should—standup. We’re late.”
“Right.” His voice comes out rough. He clears his throat, tries again. “Right. Yes. Standup.”
He rolls his chair back to a safe distance, but something lingers in the space between us. A charge. An awareness.
The standup goes smoothly. Landon James seems cautiously optimistic about our progress, and even the most skeptical members of the team perk up when Logan presents the adaptive hybrid model.
I contribute where I can, building on his explanations, and by the end of the meeting, we have a clear action plan for the next two weeks of testing.
It feels like progress. Real progress, not just treading water.
Afterward, as the team disperses, Logan catches my eye across the room.
“Good meeting,” he says.
“Good work.” I nod at his laptop. “The presentation was solid.”
“Couldn’t have done it without your framework.” He hesitates. “I meant what I said last night. About trying to be friends.”
Friends. The word sits strangely in my chest. Can you be friends with someone who broke your heart? Can you be friends with someone you’re still—
No. Not going there.
“I’m willing to try,” I hear myself say. “For the project.”
“For the project,” he echoes. But there’s something in his voice—hope, maybe—that makes it sound like more.
“Don’t make it weird,” I warn.
“I never make things weird.”
I actually laugh. It surprises both of us.
“You make everything weird,” I say. “That’s your whole personality.”
The corner of his mouth twitches. Almost a smile. “Fair.”
He heads back to his workstation, and I watch him go, trying to sort through the tangle of emotions in my chest. Anger, yes—that’s still there, simmering beneath the surface. But something else, too.
Hope.
The treacherous kind. The kind that whispers maybe if I stay close enough, I’ll finally understand what went wrong. Maybe I’ll crack the code. Solve for X. Find the one variable that turned ‘us’ into ‘whatever this is.’
It’s stupid. The kind of hope that gets you hurt.
But I’ve never been able to leave a problem unsolved.
I pull up the adaptive model and get back to work.