Skip to content
0:00 / 0:00

#unicode#utf-8#ascii

Plain Text - Dylan Beattie - NDC Copenhagen 2022

NDC Conferences

230K subscribers • 68 videos on Hallway • Conference channel

YouTube
  • Recommended by 5 people: 5 on Hacker News.
  • A classic. People kept recommending it from 2022 to 2025.
  • Presented by Dylan Beattie, software developer and speaker

Intermediate. Assumes working knowledge.

194K views4 years ago5 recommendations

Systems programmingTools and practiceOperating systemsTesting

Dylan Beattie explores the hidden complexities, historical quirks, and common bugs associated with character encodings, Unicode, and plain text.

Software is complicated. Machine learning, microservice architectures, message queues... every few months there's another revolutionary idea to consider, another framework to learn. And underneath so many of these amazing ideas and abstractions is text. When you work in software, you spend your life working with text. Some of those text files are source code, some are configuration files, some of them are documentation. Editors, revision control systems, programming languages - everything from C# and HTML to Git and VS Code is based on the idea of "plain text files". But... what if I told you there's no such thing? When we say something is a "plain text file", we're relying on a huge number of assumptions - about operating systems, editors, file formats, language, culture, history... and, most of the time, that's OK. But when it goes wrong, "plain text" can lead to some of the weirdest bugs you've ever seen... why is there Chinese in the event logs? Why is the city of Aarhus in the wrong place? And why does Magnus Mårtensson always have trouble getting into the USA? Join Dylan Beattie for a fascinating look into the hidden world of text files - from the history of mechanical teletypes to encodings, collations and code pages. We'll look at some memorable bugs, some golden rules for working with plain text - and we'll even find out the story behind the mysterious phrase "pike matchbox" and what it has do with driving in Belarus. Check out more of our featured speakers and talks at ndcconferences.com ndccopenhagen.com/

Why it's here

5 people recommend this

What people say. Highly recommended as an entertaining and educational deep dive into why plain text is far more complex than it seems.

spudlyoon Hacker News • Recommends

On “Unicode is harder than you think”

If you found this essay interesting, you owe it to yourself to check out this super entertaining talk "Plain Text"0 from NDC 2022 by Dylan Beattie. Rabbit hole warning: This video caused me to lose an entire Sunday watching Dylan's talks on YouTube, which are uniformly awesome. 0: link to this video

0xFEE1DEADon Hacker News • Recommends

On “Mojibake”

Just yesterday I watched a talk from NDC Copenhagen by Dylan Beattie about this exact topic. The story which stood out the most was this link to this video The whole talk was an interesting watch tho.

mikeceon Hacker News • Recommends

On “Ask HN: What is the best conference talk you've seen in 2022?”

"Best" is subjective but one of the most interesting talks I've seen this year is one on Plain Text: link to this video And although it's almost ten years old, Gary Bernhardt's "Birth and Death of Javascript" is one I re-watch at least twice a year and frequently recommend (and it's unreal how prescient he is in this talk -- I just hope the references to the Bay Area exclusion zone and us all running for our lives isn't as accurate as his prediction of the raise of WASM): link

ReleaseCandidaton Hacker News • Recommends

On “Write Plain Text Files (2022)”

> Every device, including ones long gone, and ones not invented yet, can read and edit plain text. ... But plain text? Always. Everywhere. Somebody needs to watch "Plain Text" (Dylan Beattie, NDC Copenhagen 2022) link to this video For example, have fun with ISO 8859-2 vs. Windows 1250. And add Windows 1252 for giggles. And for the ASCII-only persons: there still is EBCDIC.

tpmoneyon Hacker News • Recommends

On “The macOS LC_COLLATE hunt: Or why does sort order differently on macOS and Linux (2020)”

Not Tom Scott, but Dylan Beattie has done a handful of interesting talks1 effectively on "there's no such thing as plain text" which in part covers this sort of thing. In fact, I think your Danish cities list is actually one of his examples. 1: link to this video

DanHultonon Hacker News • Mentions

On “NSO Group iPhone Zero-Click, Zero-Day Exploit Captured in the Wild”

On plain text -- in short, it doesn't exist: link to this video And there have definitely been UTF-8 parsing bugs before and likely will again.

yochemon Hacker News • Mentions

On “Llms.txt”

Yes, and .py is "plain" text too. The extension however helps with signaling the intend of the file. Also, there is something to say for the argument "there is no such thing as plain text" 0 0: link to this video

u/rundevelopmentin r/compsci • Mentions

On “complaint: ASCII/UTF-8 makes no sense”

I forgot to mention: The correct sorting order of strings depends on the language :) The same two strings can have a different order, because different languages have different rules for how to sort characters. For more fun quirks of Unicode, and text in general, I recommend the excellent talk: Plain Text - Dylan Beattie - NDC Copenhagen 2022.