OS:B Context Note
This piece is part of OS:B - Operating System: Belgrade - a project I'm working on that documents Belgrade as if it were software requiring technical documentation. Each entry functions as system documentation: debug logs, protocol specifications, troubleshooting guides, and error reports. Rather than traditional travel writing, OS:B treats cultural displacement as a debugging process and integration as installation. The poetic structure exists as pseudo-valid Python code; the prose entries like this one document what happens when your interpretive frameworks fail to compile.
The receipt's still in my wallet. Folded twice, tucked behind the Revolut card where I see it every time I pay for something. 260RSD. One Espresso. Gazprom station on Sava Mašković. I've pulled it out seven times this week- eight now - as if staring at it might somehow resolve the ethical calculus I've been running in the background since I bought the damn coffee.
Does purchasing caffeine from a Russian state energy company make me complicit in something? Does the barista's cheerful "Izvoli" absolve the transaction? Can geopolitical guilt even be metabolised through espresso?
This is stupid. Or I think I know this is stupid. But the discomfort persists, which is why I'm now nearly three weeks into what I'm calling "research" but might actually be an elaborate coping mechanism for not knowing where I stand. Or where Belgrade stands. Or whether "standing" anywhere is even how this works.
The city that won't compile
I thought I'd done enough homework before arriving here. Orthodox-Slavic affinity with Russia, check. EU candidacy status, check. Kosovo territorial dispute, check. NATO bombing in '99, check. Clean dependencies. Linear logic. Install these frameworks and Belgrade should make sense. Right?
Except it doesn't. The city throws up errors constantly and I can't tell if it's my interpretive framework that's broken or if the system itself is designed to behave this way.
So I started collecting data because that's what you do when something doesn't work as expected. Correct? Document the errors. Find the pattern. Except the patterns themselves are contradictory. Forty-one percent of Serbia say Russia's the most important ally. Thirty-three percent want EU membership. Seventy-three percent oppose NATO but only thirty-nine percent think the EU's serious about letting Serbia join anyway.
These numbers should triangulate into something stable. A position. An orientation. But they don't. They just sort of... float there, refusing to resolve into anything I can point at and say "ah yes, that's what Belgrade thinks."
Which made me realise I'm asking the wrong question. I'm trying to debug a system that isn't actually broken.
The Yugoslavia-Haunting
My first theory was Soviet simulacrum. Naturally, I've written many things along these lines now. It's how I think. Maybe Belgrade's running legacy software from a dead empire, some nostalgic emulation layer over contemporary infrastructure.
The Gazprom stations as theme park, the Cyrillic script as aesthetic cosplay, the whole thing a performance of Eastern allegiance without actual Eastern alignment.
But this idea doesn't hold up under even the most basic scrutiny. Yugoslavia broke with Stalin in 1948 - still a massive point of pride here. The Non-Aligned Movement, the worker self-management system, the relative openness to Western culture - none of this was really Soviet deviation. It was indigenous construction. Yugoslavia was always running its own OS.
What I'm seeing isn't Soviet residue. I don't think. It's a Yugoslavia-haunting. The brutalist architecture, the geopolitical non-alignment, the way collective memory structures still shape present-tense decisions - these are homegrown contradictions. The system was designed this way from the start.
The Gazprom station isn't ironic. Neither is it nostalgic.
It's just infrastructure, sitting there alongside OMV stations (Austrian) and Lukoil (also Russian) and NIS (technically Serbian but majority Gazprom-owned but employing Serbs but maintained with Serbian capital but... I digress). The dependencies never cleanly resolve and apparently nobody here finds this strange.

Field observations from the bus
I've been watching people. Which sounds creepy I know, but is really just what happens when you're trying to understand a system by observing it in operation rather than reading the documentation nobody wrote.
Example: Woman on bus 78 yesterday reading a Milošević biography while listening to what I'm almost certain was classic Euro pop. Not ironically. Just doing both things simultaneously without any apparent contradiction.
Then there's the startup dude in Savamala I met the other day. Office branded "Digital Nomad Hub," funded by Chinese VC, decorated with those inspirational startup posters about disruption and innovation. You know the kind. He told me - completely unprompted - that NATO's 1999 bombing was "basically our 9/11" and then immediately went back to explaining his growth metrics for Q4. Wtf?
Finally there's my neighbour here in Banjica, must be early thirties, works in IT, went to university in Vienna, is exactly the demographic that should be unambiguously pro-European. Right? And he is. Sort of. He complains constantly about UK visa difficulties for conferences in the same breath as saying he'll "never forgive the West for Kosovo." Both statements delivered with equal conviction, zero apparent cognitive dissonance.
None of this is theatrical. Nobody's performing for me. I'm just observing the system in its natural state and the system runs multiple incompatible truths simultaneously without crashing.
The framework problem
I don't talk about Ukraine to anyone I meet. I learned that quickly. Not because I've discovered some authentic Serbian position I need to respect (which there actually is), but because I'm slowly realising my entire interpretive framework doesn't port cleanly to this environment.
Liberal internationalism, rules-based order, sanctions as moral clarity - these are dependencies that aren't installed here. Or rather, they're installed alongside completely different dependencies that should theoretically conflict but somehow don't.
The 1999 bombing isn't historical context here. It's not something that happened in the past that shaped present attitudes. It's constitutive memory. It's infrastructure. Russia's invasion of Ukraine doesn't map onto simple aggressor-victim binaries when your own territorial integrity is still contested and the people contesting it used the exact same "humanitarian intervention" language NATO used when they bombed Belgrade.
I walk past the bombed buildings in the city centre pretty much every day now. They're still there. Not preserved as memorial exactly, just... left. The Ministry of Defence building, the old Radio Television building. Unreconstructed. Part of the urban landscape. You can read them as defiant refusal to move on, or as pragmatic lack of reconstruction funds, or as deliberate memory infrastructure, or probably all three simultaneously. The buildings exist in superposition, too.
I'm pretty sure Kosovo isn't a policy position you can be flexible on. It's not even really political in the conventional sense. It's identity infrastructure. Suggesting Serbia should "just move on" from Kosovo is like suggesting London should "just move on" from being the capital. The category error is fundamental.
I keep trying to find the stable position underneath all this and there isn't one. Which is when I started wondering if maybe the instability is the position.

Weaponised ambiguity as operational logic
So, what if this "balancing act" isn't transitional? What if it's not a temporary state of confusion awaiting resolution into proper European integration or full Russian alignment or whatever? What if the ambiguity itself is the strategy?
Belgrade has made superposition operational. The city exists simultaneously facing East and West, embracing both and neither, collapsing into coherence only when external observers demand it choose. And it just... doesn't choose. Won't choose. Has actually made a functioning political system out of refusing to choose.
I say that, but his isn't mere indecision. It's not paralysis. It's sophisticated. The contradictions aren't bugs preventing proper functioning - they're the feature set. The system is designed to run in superposition and it's sufficiently advanced that even infrastructure becomes layered with multiple simultaneous meanings that refuse to collapse into single interpretations.
A Gazprom station isn't just a petrol station. But it's also not not just a petrol station. It's both. It's neither. It's whatever it needs to be depending on who's looking and why.
The city has weaponised this ambiguity so effectively that I've begun researching Serbian public opinion trying to figure out if buying coffee made me complicit in something.
What the receipt means now
Remember the receipt? Well, I'm keeping it. Not as evidence of complicity, not as absolution, but as documentation of the moment I realised my need for moral clarity was itself the category error. The coffee wasn't ironic. It wasn't a political statement. It wasn't complicit or innocent in any framework that would make sense outside this specific context.
It was just coffee, purchased in a country that's successfully implemented geopolitical ambiguity as it's core functionality. And my guilt - my need to resolve the transaction into some stable ethical position - says more about my operating system than Belgrade's.
As for me, well, the research duly continues. Because, well, that's just me. Not to find the "real" Serbia underneath the contradictions but to document how the OS actually functions. How multiple incompatible truths can run simultaneously without system failure. How a city can face East and West and make that sustained contradiction feel not like cognitive dissonance but like mastery.
Honestly, I came here thinking I'd need to choose sides to understand the place. Turns out the place has already chosen: it chose not choosing. And that choice is more deliberate, more strategic, more carefully maintained than any simple allegiance could ever be.
The installation process continues. User adaptation ongoing. Integration timeline unknown.
