Hey there, my name’s Adrien Cole. I’m 29 and I live alone in a small apartment in Seattle right near Capitol Hill. It’s one of those places with creaky floors, a kitchen that’s barely big enough for two people to stand in, and a view of the alley that I pretend is charming on rainy days.

 

 

 I work as a back-end developer for a startup that builds project management tools, mostly remote, which means my days are filled with debugging code, chasing deadlines, drinking cold coffee, and attending meetings that could have been emails. It’s steady pay, but it leaves me feeling like I’m just keeping my head above water most of the time.

 

 On weekends, I either take long walks along the waterfront to clear my head, or sit at my desk scribbling half-formed ideas that I never dare call real writing. After a couple of short-lived relationships and one breakup that left me questioning if starting over was even worth it, I’d pretty much sworn off dating apps.

 

 The whole Swiper culture felt exhausting, like everyone was performing for an invisible audience. But then I matched with Madison Reed. She was 27, a freelance graphic designer, and her profile picture wasn’t overly polished, just her smiling in a coffee shop with a sketchbook in hand. It looked real, and that hooked me. We messaged for 3 weeks straight, starting with memes about nightmare clients and evolving into deeper stuff.

 

 our morning coffee rituals, the playlist we listen to while working, and even those quiet confessions about growing up without anyone really teaching you how to be an adult. It flowed so easily that I started thinking maybe this one won’t crash and burn. Madison was the one who suggested meeting in person. She picked this small Italian restaurant called Bella, saying it was quiet, the tiramisu was killer, and the lighting was soft enough that neither of us would look too awkward if things got weird.

 

I agreed without hesitation. She even sent me a photo of the blue dress she planned to wear, asking if it was okay. I replied, “Looks great way too fast.” And had to add an emoji to play it cool. That evening, I stood in front of my mirror three times, adjusting my shirt collar until it felt right.

 

 I didn’t want to overdo it, but I also didn’t want to show up looking like I didn’t care. I arrived early, snagged a corner table with a view of the entrance, and ordered a glass of water to start. The place had that cozy vibe, dim lights, the smell of garlic and fresh bread wafting from the kitchen. Couples chatting softly at nearby tables. I checked my phone.

 

 700 p.m. Right on time. I texted her, “I’m here. Take your time.” Delivered. No read receipt yet. 7:10 came and went. I told myself she was probably stuck in traffic. Seattle’s rush hour is brutal. By 7:20, I started fidgeting, scrolling through our old messages to remind myself this wasn’t some elaborate prank.

 

At 7:30, I refreshed the app, half expecting a cancellation. Nothing. My mind raced through excuses. Maybe her phone died or she was circling for parking. But deep down, that sinking feeling started creeping in. the one where you realize you might be getting stood up. The restaurant was filling up now.

 

 Couples streamed in, laughing as they pulled out chairs for each other, ordering wine and sharing appetizers. I sat there alone, trying to look casual, like I was just early for a solo dinner. The waiter swung by with a sympathetic glance, asking if I was ready to order. I wasn’t, but to buy time, I got the brusquetta and a glass of red wine.

 

proves I’m here on purpose,” I thought, as if convincing the staff would make this less humiliating. By 7:45, the excuses ran dry. I stared at my phone, the message still unread. The brusqueta arrived, but I could barely taste it. My face felt hot, and I avoided eye contact with anyone, imagining what they must be thinking.

 

“Poor guy got ditched.” I debated leaving, pay the bill, slip out quietly, but that felt like admitting defeat. So, I stayed, nursing the wine, telling myself I’d give it five more minutes. That’s when the door opened again. A woman walked in, scanning the room like she was looking for someone. Not Madison.

 

 She had reddish brown hair tied up in a high ponytail, wearing jeans, a fitted leather jacket, and boots that clicked softly on the tile floor. Her walk was confident, like someone used to handling her own business. Our eyes locked for a second, and she headed straight for my table. “Are you Adrien?” she asked, standing there with her hands in her pockets.

 I blinked, caught off guard. “Yeah, and you are?” She pulled out the chair across from me and sat down without hesitation. “Si, I’m Madison’s roommate.” My stomach dropped. I leaned back, piecing it together. Where’s Madison? Sienna glanced at my half-eaten brusqueta and the empty seat, then met my eyes with a mix of pity and frustration.

She flagged down the waiter and ordered a vodka soda before turning back to me. She’s not coming. The words hit like a punch, but not as hard as I’d expected. Is she okay? Did something happen? She’s fine. Just chicken. Sienna took a sip of her drink when it arrived, then leaned in.

 Look, I’ll be straight with you because you don’t deserve this crap. Madison freaked out all day. She psyched herself up, convinced herself you’d be too good to be true, that the date would flop, and then she just bailed. Sat on the couch staring at her phone. I told her to at least text you. She said she would. Obviously, she didn’t.

 I let out a bitter laugh, rubbing my forehead. Great. Sienna narrowed her eyes. I came because I couldn’t let you sit here like an idiot any longer. And yeah, I feel bad for her sometimes, but this this is  I didn’t know what to say. Part of me wanted to storm out, but another part felt oddly relieved. Finally, someone was telling me the truth instead of ghosting.

You didn’t have to do this. I know. She shrugged, then picked up the menu. But I’m here and I’m starving. You’ve already eaten half your heartbreak. Want to just have dinner? My treat to make up for my disaster of a roommate. I stared at her, surprised by how straightforward she was.

 No pity party, no awkward excuses, just real. After nearly an hour of sitting alone, that felt better than any polite lie. I managed a small smile. Fine, but we split the bill. Sienna grinned. The first real one of the night. Deal. And just like that, the worst evening I’d imagined shifted into something I hadn’t seen coming.

 The dinner at Bellvita went smoother than I could have hoped for after the mess it started as. We ordered pasta, her with marinara, me with pesto, and talked like we’d known each other longer than an hour. I opened up about my job first, explaining how being a back-end developer meant spending hours staring at code that refused to cooperate, fixing invisible problems that could crash an entire app if ignored.

 It’s like being a plumber for the internet, I said, except the pipes are made of logic and the leaks are silent until everything floods. Sienna laughed, a real one that crinkled the corners of her eyes. Sounds better than my gig. I’m a bartender downtown at this place called the Ember Room. Nights are long, tips are hit or miss, but I get to hear everyone’s life stories like I’m their therapist, or a priest, depending on how many drinks they’ve had.

 Do you remember them all? I asked, curious. Not everything, she replied, twirling her fork. But you learn to spot the real from the It’s in how they say it. Eyes darting or hands fidgeting. People pour out their souls over a whiskey neat. That stuck with me. Sienna wasn’t just beautiful in a sharp, unfiltered way. She had this edge like she’d seen enough of the world to call it out without being cruel.

 We shifted from work to hobbies. I mentioned my abandoned writing habit, how I used to jot down story ideas but let them pile up in a forgotten folder. She told me about her photography side hustle, street shots mostly, capturing raw moments in the city. I’m building a portfolio to go full-time eventually, she said.

 Bars pay the bills, but clicking that shutter, that’s what keeps me sane. By the time the tiramisu arrived, rich, creamy, and as good as Madison had promised, we were deep into lighter stuff. our shared hatred for overpriced Seattle rent, the pressure of hitting 30 without a plan, and how friends seemed to be leveling up while we were still grinding side quests.

Sienna had a dry humor that caught me off guard, like when she described a regular at her bar who wrote bad poetry on napkins and expected her to critique it. I shared a story about a client who insisted on a feature no one would ever use just because it sounded innovative. When the bill came, she reached for it, but I insisted on splitting.

 I don’t want you thinking you have to pay for your roommate’s screw-up, I said. She smirked. Fair, but next time it’s on me. Next time, I raised an eyebrow. Sienna shrugged as we walked out into the cool evening air. Why not? You’re not a creep, and I could use more friends who don’t spill their drinks.

 She pulled out her phone. Give me your number for Madison? I asked, half joking. No, she said plainly. For me. I hesitated for a beat, then recited it. She texted me right there so I’d have hers. As we reached the parking lot, she turned and said something that lingered all night. You know, most guys would have blown up by now, yelled or ghosted.

You just waited. That’s rare. I got home feeling lighter than I had in weeks. Madison faded into the background. No texts, no apologies, nothing. And strangely, it didn’t sting like it should have. What stuck was Sienna, her straightforwardness, cutting through the awkwardness like a knife through fog. She messaged first the next morning a Sunday.

 It was a meme about worst first date vibes with a caption, “At least you didn’t cry into the tiramisu. I laughed alone in my kitchen and replied, “And you didn’t throw your vodka at me. Win-win.” From there, the conversations flowed naturally. No forced flirting, no pretending to be cooler than we were. We texted about work gripes, me venting about a stubborn bug that ate my afternoon, her sharing stories of rowdy patrons who turned philosophical after one too many shots.

 It was easy, like we’d skipped the small talk phase altogether. 3 days later, we met for coffee at a spot near Pike Place Market. I figured it might be awkward, our first intentional hangout without the excuse of her roommates’s flake. But no, Sienna was there early, perched by the window with a black Americano and her camera on the table.

 She looked up and smiled like we’d done this a dozen times. You’re punctual, noted. I’ve got a thing about not making people wait, I said, grabbing my own drink. She eyed me for a second. Yeah, I figured. We talked for 2 hours. She showed me her photos. A street musician playing violin in the rain. An elderly couple arguing outside a grocery store but sharing the same umbrella.

 A kid devouring a donut with pure joy on his face. Her shots had soul. They turned ordinary moments into something profound. These aren’t amateur. I told her honestly. She shrugged, but I caught the pleased glint in her eye. What about you? Besides code, what do you do? I admitted my writing thing. How I’d started stories but never finished, letting them collect digital dust.

Sienna listened, then looked at me like she’d uncovered a puzzle piece. “So, you’re not just a bug fixer.” “Maybe, but that’s all I am these days.” “That’s sad,” she said bluntly. “You should pick it back up.” Her words weren’t pushy. They felt like a reminder of something I’d forgotten about myself. Coffee turned into lunch at a Thai place she loved.

 Lunch became an afternoon at a photography exhibit in Fremont, wandering through galleries of urban shots that made hers look even better by comparison. After, as we strolled through a nearby park, I finally asked what had been nagging me since Bella. Why’d you really show up that night? You didn’t owe me anything. Sienna slowed her pace, fiddling with her camera strap, staring at the gravel path ahead.

 Because I hate when people treat others like they’re disposable. And Madison talked about you a lot. Made me curious if you were as decent as she said. And she glanced at me half smiling. You’re more than decent. A little naive, but in a good way. That evening shifted things. A few nights later, she invited me to a drive-in theater an hour outside the city.

 It was some bee horror flick with fake blood and jump scares that looked like they were filmed on a phone. We parked her pickup, sat in the bed with blankets and popcorn, laughing until our sides hurt at the ridiculous plot. Halfway through, in the dark, she laced her fingers through mine like it was the most natural thing. I turned to her.

 She didn’t look away from the screen, but whispered. I haven’t had fun like this with anyone in a while. Me neither, I said, squeezing her hand. When I dropped her off, no, when she dropped me off, since she’d driven, the car idled under the street light outside my building. Neither of us moved to get out. She rested her hands on the wheel and turned to me, her eyes catching the golden glow.

 “Adrien,” she said, her voice softer than usual. “I like you more than I plan to let myself.” I chuckled, my heart racing. “I like you, too.” “Good,” she breathed. wasn’t just me imagining it. I leaned in and kissed her, slow, tentative, testing the waters. When she kissed back, it felt like confirmation. This wasn’t just rebound or convenience.

It was real. From then on, things deepened without us labeling it. She texted, “Eaten yet?” at 11 p.m. after a late shift. I sent photos of my charred breakfast attempts just to hear her laugh. We nicknamed each other me as suspiciously stable, her as organized chaos, and bit by bit, my life felt less flat.

 Inspired by her nudge at the coffee shop, I dusted off my old word files and wrote a few paragraphs for the first time in a year. But I should have known. When a story starts with one person running away and another stepping in, the past doesn’t vanish that easily. I started seeing Madison again when I’d almost forgotten her entirely.

 It happened during a late night work session at the office. I’d stayed behind to untangle a mess of code that had been haunting me all week. My phone buzzed with a message from an unknown number. Adrien, it’s Madison. I’m so sorry about Belvita. Can we talk? I stared at the screen for a long moment, my thumb hovering over the delete button.

 Part of me wanted to ignore it, to let the silence speak for itself, but another part craved closure, not because I still had feelings, but because I hated loose ends dangling in my life. I typed back, “What happened that night?” She responded almost immediately, spilling out excuses about panicking, convincing herself I was too good to be real, that the date would crash and burn.

 It was all about her fears, her insecurities, with no mention of the hour I’d sat there like a fool. I read it twice, feeling more tired than angry. You should have texted me that night, I replied. But there’s nothing left to say now. She came back with, “Are you seeing Riley?” “Wait, Sienna. I figured. I just wish I’d been braver.” I didn’t respond.

I blocked the number and tossed my phone aside, focusing back on my screen. I thought that was the end of it. 3 days later, things escalated in a way I never saw coming. I was at my desk midway through debugging a stubborn API call when the office reception buzzed my extension. Adrien, there’s a radio station on the line for you. 104.7.

 They say it’s urgent. I thought it was a scam at first, some telemarketer fishing for info, but the producer on the other end introduced herself and explained, “A woman named Madison was in their studio right now, wanting to go on air to reach out to me and ask for a second chance. I stood up so fast my chair rolled back.

You’re kidding me. She paused then said, “We thought we should give you a heads up.” I told them not to air it, that it was invasive and unwanted. They said they’d consider it. I hung up, my hands cold, and immediately pulled up the station’s online stream on my laptop. I caught the tail end of the segment intro, the host hyping it as a real life romcom moment.

 Then Madison’s voice came through, soft and wavering, recounting our story. How she’d matched with this great guy, talked for weeks, but freaked out and stood him up. She painted it as a grand romantic gesture now, like going on radio was her way of proving she was serious. My jaw clenched. It wasn’t romantic. It was her turning my humiliation into public entertainment.

Before I could even process it, my phone vibrated again. Sienna, are you listening to this?” she asked the second I picked up. Her voice was flatged with something sharp. I just found out, I swore the station called me minutes ago. I told them not to run it. There was a beat of silence.

 “I believe you didn’t set this up, but Adrien, this is getting ridiculous. I don’t want anything to do with her,” I said quickly. “Yeah, but it’s not just about her.” Sienna’s tone softened, turning weary. What are we even doing? I frowned, not following. What do you mean? I mean, these past few weeks, we’ve been going out, grabbing meals, holding hands, kissing, but we haven’t named it.

Part 1 of 2Part 2 of 2 Next »