May 22, 2026
NO means no… to Norway
YAML? That's Norway Problem
A tiny country code turned into “false,” and the comments instantly went feral
TLDR: A widely used settings-file format can misread Norway’s country code, **NO**, as the word “no” and turn it into false. Commenters split between furious “YAML is cursed” rants and eye-rolling “just add quotes” replies, turning a tiny bug into a full community soap opera.
A humble config file story has somehow turned into full-blown comment section theater. The setup is almost too perfect: a developer adds Norway’s country code, NO, to a list in YAML — a popular text format used to store settings — and the parser calmly converts it into false instead. Yes, an actual country vanished because the software thought it was reading plain English. Suddenly, Norway isn’t a place, it’s a mood.
That was enough to unleash a familiar internet pile-on. One camp treated this as proof that YAML is, in the immortal words of one commenter, “the worst format”: fragile, confusing, and way too eager to break when files get long. Another crowd rolled its eyes at the outrage, basically saying, relax, just put quotes around it and move on. That dismissive energy sparked its own mini-drama, with one commenter mocking the whole post as an overblown essay about a tiny formatting gotcha.
But the juiciest reactions came from people who’ve clearly been burned before. One Ansible user noted this exact mess was recently tightened up in a popular automation tool, which felt like a quiet “we fixed this nonsense” victory lap. Others used the moment to confess their deeper truth: they trust ugly old JSON more, or have abandoned these files entirely and now use actual code for settings. The result? A wonderfully petty, deeply relatable debate over whether YAML is readable genius, outdated chaos, or just the reason your weekend disappeared.
Key Points
- •The article shows that a YAML list of country codes parses normally in PyYAML until `NO` is added.
- •With PyYAML 6.0.3 and `yaml.safe_load`, the value `NO` is interpreted as boolean `false` instead of a string.
- •The behavior comes from YAML’s historical support for human-readable boolean words such as `yes` and `no`.
- •Quoting `"NO"` in the YAML file preserves it as a string and avoids the unwanted conversion.
- •The article begins tracing the issue historically by referencing the May 2001 first-pass YAML specification, which did not explicitly mention parsing `no` to `false`.